Software
We developed a Python-based GUI using DASH components, allowing us to control the device through a standard web browser. This software allows to separately control color and intensity of each segment in the dark light module, as well as of the fluorescent LEDs and the position of the filter wheel.
To trigger the camera shutter we use a standard remote control shutter release cable. So, by setting the camera to Bulb, we then control each individual optical configuration speed by setting the exposure time into the slider position.
This system allows to work with multiple independent optical configurations within the same time-lapse experiment.
Download code
- Go to the GitHub repository and follow the instructions to download code.
Installing
- Create a Conda Environment:
conda create --name baffle
conda activate baffle
conda pip install
- Install Libraries:
pip install dash
pip install dash-bootstrap-components
pip install dash-daq
pip install Phidget22
pip install pandas
pip install pyserial
- Enable USB Port in Linux:
sudo chmod a+rw /dev/ttyUSB*
Note
The lsusb command can be used in Linux in order to list and display the usb buses that are connected to the computer.
Execution
The project includes some python codes to control the hardware via a dedicated GUI that runs in a web browser.
/BAFFLE/code/app.py
Environmental control
-
Temperature data from the sensor is continuously read by the GUI, which compares it regularly with the user-selected temperature to activate or deactivate the relay connected to the heat source.
-
Similarly, we implemented a humidity control system that actuates an ultrasonic mist maker once the humidity goes below the humidity parameter value selected by the user.
Image acquisition
- In order to interface the digital camera to the computer we use the mentioned open-source software Entangle, which provides live image preview and a graphical interface for tethered shooting.
Note
Depending on the digital camera that is used you may want to try different open-source tethered shooting software options, such as digiCamControl or qdslrDashboard.