Skip to content

Gronemeyer/mesofield

Repository files navigation

 __    __     ______     ______     ______     ______   __     ______     __         _____
/\ "-./  \   /\  ___\   /\  ___\   /\  __ \   /\  ___\ /\ \   /\  ___\   /\ \       /\  __-.
\ \ \-./\ \  \ \  __\   \ \___  \  \ \ \/\ \  \ \  __\ \ \ \  \ \  __\   \ \ \____  \ \ \/\ \
 \ \_\ \ \_\  \ \_____\  \/\_____\  \ \_____\  \ \_\    \ \_\  \ \_____\  \ \_____\  \ \____-
  \/_/  \/_/   \/_____/   \/_____/   \/_____/   \/_/     \/_/   \/_____/   \/_____/   \/____/

Mesofield is a PyQt6-based framework for running real-time, multi-camera neuroscience experiments. It coordinates hardware via serial connections and MicroManager (through pymmcore-plus custom MDAEngines and multi-CMMCorePlus instancing) and manages experiment configuration, acquisition orchestration, and data logging. The project is aimed at laboratory use and is not a full production package; some specialised knowledge of device hardware and MicroManager device configuration is necessary to get started.

Mesofield acquisition window

Documentation

Documentation lives at gronemeyer.github.io/mesofield and is split by audience:

  • Tutorial — the fastest path from a fresh conda env to a working acquisition on your hardware.
  • User Guide — for experimenters running acquisitions: launching the GUI, writing experiment.json, interpreting the on-disk output.
  • Developer Guide — for developers extending mesofield: custom devices, Procedure subclasses, frame processors, threading models.
  • API Reference — auto-generated from docstrings.

Quick start

conda create -n mesofield python=3.12 -y
conda activate mesofield
pip install -e .

Launch an acquisition by pointing at your rig — experiment.json is optional:

mesofield launch path/to/hardware.yaml      # rig only (author params in the GUI)
mesofield launch path/to/experiment.json    # rig + params (sibling hardware.yaml auto-detected)
mesofield launch path/to/experiment/        # a directory containing either

Scaffold a new experiment:

mesofield new my-experiment

For end-to-end setup, follow the Tutorial.


System requirements

Tested on Windows 10/11. For multi-camera acquisition with large files we recommend ≥ 32 GB RAM, a 12th-gen Intel i7 or equivalent, and fast local NVMe storage for the experiment directory.


License

MIT — see LICENSE.

About

Real-time multi-camera data acquisition PyQt6 GUI built atop the pymmcore-plus library

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Contributors