Setting up an Axially Swept Light-Sheet Microscope
This case study describes Axially Swept Light-Sheet Microscope that scans the beam in both the laser propagation (Y) and detection (Z) directions synchronously with a piezo mounted objective. Tiling in X, Y, and Z is provided by a motorized stage.
Important points
The key to properly setting up the navigate software is to sequentially enable select devices, and troubleshoot each one independently. By carefully and methodically adding devices, and checking that they are functional, one can be confident that the entire system is working as intended. In this example, we will be using a Hamamatsu Flash 4.0 camera. However, you may also use another Hamamatsu sCMOS model, or a Photometrics camera, as long as the drivers are installed and the camera is recognized by the computer. The microscope will operate in a sample scanning format for volumetric image acquisition.
First steps
Launch the software in synthetic hardware mode. This requires that the conda environment has been established, and that the software has been installed. Once the conda environment has been activated, the software can be launched by typing
navigate -shin the terminal.Once the software has been launched, the GUI will appear. Open the folder containing the configuration files by selecting to the menu . This will open the
.navigatefolder in the file explorer, which is where local configuration files are stored.Open the
configuration.yamlfile in your preferred integrated development environment (e.g., PyCharm, VSCode, etc.).For every device in the
hardwareandmicroscopessections of theconfiguration.yamlfile, you will need to change the type tosynthetic. For convenience, we provide asynthetic_configuration.yamlfile innavigate/src/navigate/configthat can be used to replace theconfiguration.yamlfile that already has synthetic for each device. You will need to replace theconfiguration.yamlfile that is located in the.navigatefolder with thesynthetic_configuration.yamlfile.Restart the software, but this time launch it in a standard operating mode by typing navigate in the terminal. This confirms that the base configuration file is functional. If any problems are encountered, please submit a ticket on GitHub under the “Issues” tab.
Sequentially adding devices
Data Acquisition Card
We will now begin sequentially adding non-synthetic devices to the configuration file. The first device to add is the NI data acquisition card. Of course, the data acquisition card’s drivers must be installed and functioning. To confirm that it is functioning, it is best to use the NI MAX software and evaluate the card’s functionality with an oscilloscope.
In the
hardwareandmicroscopessections of theconfiguration.yamlfile, change thetypetoNI. You will also need to hard-wire themaster_trigger_out_lineto thetrigger_source. The identity of these pins can be found in the NI MAX software by right-clicking on the device and selecting Device Pinouts. You will also need to make sure that the identity of the pinouts is correct in theconfiguration.yamlfile. Most commonly, NI cards default to a device name such as “Dev1”. You can change this name in NI MAX, or leave it as is, but whatever you do it has to match the name in theconfiguration.yamlfile (e.g.,PXI6259/port0/line1if the name of the device is “PXI6259” and the pinout is “port0/line1”).Open the navigate software in the standard operating mode, select the “Continuous Scan” mode, and press Acquire. If the software is operating as expected, it should display a synthetically generated image of noise. If it does not, double-check the configuration file and make sure that the
master_trigger_out_lineis connected to thetrigger_source.
Camera
Next, we will add the camera. The camera must be connected to the computer via a USB or the dedicated frame-grabber cable. The camera drivers must also be installed. The camera drivers can be found on the DCAM-API Website.
Update the camera type to
HamamatsuOrcaand input the correct serial number, which can be found on the camera label or through the DCAMConfigurator or HCImage. You will also need to connect thecamera_trigger_out_lineon the data acquisition card to the BNC port labeled “Ext. Trig.” on the back of the camera.Restart the software and begin an acquisition in the “Continuous Scan” mode. The camera should now be delivering frames to the software.
Filter Wheel
Set up the Filter Wheel. First, identify the comport via the device manager on Windows. Change the
filter_wheeltype toSutterFilterWheelor equivalent in thehardwareandmicroscopessections of the configuration file, and provide the necessary information for that filter wheel device (e.g.,baudrate). At this point, you can also name each filter if desired under theavailable_filterssection.Restart the software and select multiple channels in the Channel Settings tab, each with different filters. Run the software in “Continuous Scan” mode again and ensure that the filter wheel is changing filters between each acquisition.
Lasers
Set up the lasers. Ideally, the lasers will operate in a mixed modulation mode, which requires that the NI card provides both analog and digital signals to each laser. This allows blanking of the laser, as well as control of its intensity. Open the control software for the lasers, and configure them in a mixed modulation mode. Next, connect the analog output of the NI card to the analog input of the laser. Finally, connect the digital output of the NI card to the digital input of the laser. A common port for the analog and digital outputs are
PXI6733/ao0andPXI6733/port0/line2, respectively.Configure the lasers in the
hardwareandmicroscopessections of the configuration to typeNI. Here, you can specify the wavelength of each laser, as well as the minimum and maximum volts to deliver to the laser in both the analog (power) and digital (onoff) sections.
Remote focusing unit
Configure the Voice Coil. Most voice coils only require an analog signal to control, which can be delivered via the type
NIin thehardwareandmicroscopes. However, some voice coils must be configured to accept an analog signal upon each power cycle (e.g.,EquipmentSolutions). In this case, you will also need to specify the COM port.
Galvos
Set up the galvos. Galvos can be used for a wide variety of tasks, including shadow reduction, digitally scanned light-sheet formation, and also for stepping the beam in z during the acquisition of a z-stack. If the galvo will be used for a z-stack, it should be configured in the
stagesection. All other galvos are placed ingalvosection. For a sample-scanning ASLM, we use a resonant galvo to perform shadow reduction.
Stages
Install and configure the Stages. You will need to specify stages for the
X,Y,Z,Theta, andFaxes. If you do not need one of these stages, it should remain specified as aSyntheticStage. It is also important to make sure that you map the stage coordinates to the software coordinates. For example, with the Sutter MP285, the vertical movement of the stage is its z axis. However, for light-sheet microscopes that are laid out horizontally, this axis is the x axis. Thus, we must map the hardware z-axis to the software x-axis. This is done with theaxesandaxes_mappingentries, which for the example provided, would be as follows:axes: [x] # software axes axes_mapping: [z] # hardware axes
Importantly, any stage you designate as
Zwill be used for acquisition of a z-stack.