Edit page History How do I edit this website?


Summary: Adapter for the Meadowlark Optics D5020 liquid crystal controller
Author: Amitabh Verma and Ivan Ivanov
License: BSD
Platforms: Windows
Since version: 2023-04-15


This is a Micro-Manager device adapter for the Meadowlark Optics D5020 liquid crystal (LC) controller. It enables setting the voltage or retardance of a liquid crystal device. Multiple LCs per controller are supported. LC-specific voltage-to-retardance calibration curves at multiple wavelengths can be supplied for accurate conversion between voltage and retardance. A number of palette elements can be defined which support defining and switching the state of multiple LCs.

This device adapter can be used with the recOrder plugin for napari to assist in LC calibration for microscopy measurements.


Install the Meadowlark Optics USB driver and CellDRIVE application following the manufacturer’s instructions. Ensure that CellDRIVE successfully connects to the LC controller and can be used to change the retardance of the liquid crystals.

Copy the Meadowlark Optics usbdrvd.dll into the Micro-Manager installation folder. The file can be found in the \C++ Example\64 bit\ directory on the installation drive supplied by the manufacturer.

The device adapter is supplied with a mmgr_dal_MeadowlarkLC.csv file which contains voltage versus retardance calibration data at three wavelengths for two LCs. It enables approximate conversion between voltage and retardance. The file may be updated with calibration data provided by the manufacturer.

Supported devices

Currently, only the 20V version of the D5020 controller is supported. Support may be later extended to the 10V version of the controller.

Calibration file structure

The mmgr_dal_MeadowlarkLC.csv file must follow structure such as:


The first row of the CSV file is a header row, structured as [Voltage (mV), XXX-A, XXX-B, Voltage (nm), XXX-A, XXX-B, …] where XXX is the calibration wavelength in nanometers. For example 532-A would contain measurements of the retardance of LC1 (i.e. the LC connected to the LC1 terminal of the controller, also known as LCA) as a function of applied voltage at 532 nm. The second row contains dashes in every column. The third row contains “0” in the Voltage column and the calibration wavelength in the retardance columns, e.g [0, 532, 532]. The following rows contain the LC calibration data. Retardance is recorded in nanometers and voltage is recorded in millivolts. The last row contains dashes in every column.