Skip to content
@ucl-open

ucl-open

Architecture Overview

We propose a clean separation between:

  • Bonsai operators for acquisition (provided by ucl-open/acquisition)
  • Python schemas describing experiments (provided by open_ucl_rigs)

Together, they make experiments config-driven, fully logged, and schema-described, so data can always be read and interpreted correctly later.


1. Bonsai: ucl-open/acquisition

NuGet package: UclOpen.Acquisition

Provides standardised Bonsai operators for:

  • Hardware (UclOpen.Acquisition.Device)
  • Logging (UclOpen.Acquisition.Logging)
  • Shared utilities (UclOpen.Acquisition.Utilities)

These operators read a YAML config and configure devices + logging in a consistent way across rigs and labs.


2. Python: ucl_open_rigs

Provides core Pydantic schemas that describe all parts of an experiment:

  • Rig (rig.py)
  • Task (task.py)
  • Experiment (experiment.py)

Experimenters / designers extend these schemas for their own experiments on a new repo.

This can then be run to produce:

  • experiment.json — a combined schema detailing all experiment parameters, including rig configuration and metadata.

3. Dotnet: Bonsai.sgen

Automatically generates corresponding C# classes and associated operators in Extensions from the .json schema. These are then available in the Bonsai editor Toolbox, and can be wired in directly with experimenter defined friendly names and structure.

4. During an experiment

  1. Bonsai loads experiment.yml.
  2. UclOpen.Acquisition operators configure hardware + logging using these parameters.
  3. Data is recorded along with the configuration parameters + schema.

5. Reading the data (ucl_open_api) (Name TBD)

Python readers use the schema to interpret:

  • which devices and data streams exist
  • how they map to each rig
  • which workflow + git commit produced the data (To allow complete recreation of experiment)

Flowchart

Flowchart

Popular repositories Loading

  1. hf-visual hf-visual Public

    C# 1

  2. acquisition acquisition Public

    C#

  3. .github .github Public

    Base repository for ucl-open organisation

  4. av-dome av-dome Public

    Contains rig specification and experimental workflows for the Coen Lab's AV Dome arena

    C#

  5. vr-corridor-2p vr-corridor-2p Public

    C#

  6. auditory-vr-corridor auditory-vr-corridor Public

    Jupyter Notebook

Repositories

Showing 10 of 14 repositories
  • coen-dome-navigation Public

    Coen Lab auditory VR corridor task on open-rigs

    ucl-open/coen-dome-navigation's past year of commit activity
    C# 0 0 0 0 Updated Nov 9, 2026
  • coen-av-arena Public

    Rig specification and Bonsai workflow for the Coen Lab's AV Arena.

    ucl-open/coen-av-arena's past year of commit activity
    Python 0 0 0 0 Updated Nov 9, 2026
  • ucl-open/auditory-vr-corridor's past year of commit activity
    Jupyter Notebook 0 0 1 0 Updated Nov 9, 2026
  • av-dome Public

    Contains rig specification and experimental workflows for the Coen Lab's AV Dome arena

    ucl-open/av-dome's past year of commit activity
    C# 0 0 14 (1 issue needs help) 0 Updated Nov 9, 2026
  • coen-qc-calibrate-valve Public

    Valve and pump dispense calibration for Coen Lab rigs (open-rigs)

    ucl-open/coen-qc-calibrate-valve's past year of commit activity
    C# 0 0 0 0 Updated Nov 9, 2026
  • coen-qc-preflight-rig Public

    Coen Lab pre-training preflight: one Bonsai workflow checks every device a rig's rig.yml declares; rig-control gates launches on a recent pass

    ucl-open/coen-qc-preflight-rig's past year of commit activity
    Python 0 0 0 0 Updated Nov 8, 2026
  • coen-qc-calibrate-projector Public

    Projector calibrations for the Coen Lab domes (gamma now, mesh next), run from rig-control's Calibrations page

    ucl-open/coen-qc-calibrate-projector's past year of commit activity
    PowerShell 0 0 0 0 Updated Nov 8, 2026
  • coen-behaviour-box Public

    Acquisition workflows and rig schema for the Coen Lab behaviour box (open-rigs)

    ucl-open/coen-behaviour-box's past year of commit activity
    C# 0 0 0 0 Updated Nov 8, 2026
  • hf-visual Public
    ucl-open/hf-visual's past year of commit activity
    C# 1 0 1 1 Updated Oct 29, 2026
  • maze-runner Public
    ucl-open/maze-runner's past year of commit activity
    C# 0 0 0 0 Updated Oct 8, 2026

Top languages

Loading…

Most used topics

Loading…