Skip to content
EdrevaPublic

About

Compact Open-Source Multimodal Illumination Cluster (COSMIC). A Low-cost illuminator for transmitted-light microscopy. Enables bright-field, dark-field, diascopic fluorescence, and differential phase contrast illumination.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

10 Commits

Folders and files

Repository files navigation

Compact Open-Source Multimodal Illumination Cluster (COSMIC)

Low-cost illuminator for transmitted-light microscopy. Enables bright-field, dark-field, diascopic fluorescence, and differential phase contrast illumination.

Contents

Build Instructions

Parts List

Part Notes Cost
COSMIC PCB See PCB ~£10
PCB Components See PCB BOM ~£25
2mm diffusive PTFE/Acrylic sheet See Diffuser assembly ~£25
Aluminium foil See Diffuser assembly ~£2
Superglue Recommend cyanoacrylate ~£3
Gel Filter We use Roscolux, Supergel R382 Congo Blue ~£10
Arduino Uno Can be substituted with Nano ~£25

Total Cost: ~£100 including optional components and stock material purchases†

† Certain parts, such as PCBs, PTFE sheet and gel filter are bought in quantities sufficient for many builds. These are one-time upfront costs and are not representative of the per-device cost.

Main Assembly Directions

1. Populate the PCB with all components except the LEDs in the outer ring, see also customisations and alternatives for potential component replacements.

2. Align circular holes in the 3D-printed housing with the four central LEDs on the PCB. Press the housing down onto the LEDs until fully seated. Ensure that the housing lies parallel to the PCB.

3. Take the remaining LEDs (D1-D16) and push their legs into the pair of holes in the housing. The housing holes should align with corresponding holes on the PCB. Ensure that the LEDs in the outer ring alternate in colour (i.e blue, green, blue, green etc.) and they are all level with eachother. Solder the LEDs to the PCB.

4. Apply glue to the inner lip (⊕) of the circular aperture at the top of the 3D-printed housing. Press fit the diffuser assembly into the aperture, ensuring that the the foil '+' in the diffuser is aligned with the '+' shape in the housing and allow glue to cure.

5. Optionally, small sections of gel filter can be adhered to the front of the excitation (blue) LEDs to act as a low cost filter to reduce cross-talk.

6. Connect to an Arduino, as detailed in Controller, and begin imaging!

Housing Assembly

3D-printed housing

3D-print COSMIC_Housing.stl using default slicer settings. No support is required. Print upright.

Diffuser Assembly

Laser cut four copies of the quadrant shape defined in DiffuserQuadrant.dxf from 2mm thick diffuser material, such as acrylic or PTFE. Approximate cost of £25 for a 300 x 300 x 2 mm PTFE sheet (enough to make 100 COSMICs!). The diffuser material can also be salvaged from scrapped flat-panel TFT LCD screens to reduce costs.

Cut small sections of aluminium foil. Apply superglue liberally to an edge of two of the diffuser quadrants. Press the foil section to one of the glued edges and press the second quadrant to the other side to form a half-circle shape. Wait for the glue to cure. Trim the excess foil and repeat for the other two quadrants. Apply superglue to the inner edges of the two newly made half-circles. Press foil section between the two half-circles to form a full circle. Wait for the glue to cure and trim the excess foil

NB: Take care to ensure the diffuser segments are well aligned when gluing

PCB

Gerber and ODB++ files are available here: Gerber/ODB++ files

PCBs can be economically requisitioned from vendors with PCB manufacturing services, such as JLCPCB (quote for 5 of this PCB was roughly ~£10 in early 2026). Other vendors are available.

BOM

Qty Package Value Parts Notes
16 0805 47R R1, R2, R3, R4, R5, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16
2 3362P 300R R17, R18 Bourns 3362P-1-301LF or equivalent
1 3386Y 2K R19 Bourns 3386Y-1-202LF or equivalent
1 0805 4K7 R20
6 SOT457 BCM56DS U1, U2, U3, U4, U5, U6
8 3mm T-1 NSPB300B D1, D2, D3, D4, D5, D6, D7, D8 Customisations and Alternatives
12 3mm T-1 NSPG310B D9, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20 Customisations and Alternatives
1 FC68148 2.1mm DC Plug J1 Optional, see Customisations and Alternatives
1 2x04 Pin Header J2
1 1X02 Pin Header JP1 Optional, see Customisations and Alternatives

Customisations and Alternatives

DC Power plug (J1) is optional and can be connected to a dedicated 5V source (such as from a bench-top supply). If preferred, it can be abrogated and 5V can instead be supplied via J2 (i.e from GPIO of connected microcontroller) In the case where J1 is not used, the jumper J2 must be shorted. NB: Check the current limit of the pin used to supply 5V from any microcontroller/processor. If the limit is below 250mA, it is recommended to instead use an alternative 5V supply connected to J1 (JP1 must then be O/C)

LEDs can be substituted for alternate colours (so long as they are a 3mm T-1 package) D1-7 should have a suitable wavelength to excite the desired fluorophore. D9-18 should have a peak wavelength in the pass band of the emission filter. Ensure that the new LEDs are ~3.0-3.5V and their peak DC current is >=30mA -- if this is not the case, alternative resistors will need to be selected.

If a laser-cutter is not available, the diffuser quadrants can be cut/filed to shape using hand tools (14mm radius). It may also be possible to DIY a diffuser using layers of Scotch® Magic™ Tape, manually cut to the shape of the diffuser quadrants, similar to the approach employed by the Waller Lab here.

Controller

The following instructions will refer to an Arduino Uno being used as the control interface between MicroManager and COSMIC. Arduino Nano can be a drop-in replacement. Alternative microcontrollers can also be used, see https://micro-manager.org/Arduino and https://micro-manager.org/Arduino32bitBoards.

  1. Load the Arduino with AOTFcontroller.ino (version tested here had commit hash: 8860b83)
  2. Wire the Arduino GPIO to J2 on the COSMIC PCB as shown in the following wiring diagram:

NB: If COSMIC is to be powered by the Arduino, JP1 should be closed-circuit. Else, if COSMIC is powered by a separate DC supply connected to J1, JP1 should be be open-circuit.

  1. Connect the Arduino Uno to a computer with MicroManager 2.0 installed.

  2. Load MicroManager and navigate to the Hardware Configuration Wizard

  3. At Step 2 of the wizard, navigate to Arduino --> Arduino-Hub. Select the COM port the Arduino is connected to and ensure BaudRate is set to 57600 in the properties. Upon clicking Ok, in the popup, select Arduino-Switch and Arduino-Shutter.

  4. At step 5 of the wizard, for convenience, add the following labels to the specified states:

    State Label
    0 OFF
    2 DARKFIELD
    5 DPC_270
    9 DPC_180
    20 DPC_0
    24 DPC_90
    29 BRIGHTFIELD
    32 FLUORESCENCE

NB: these state labels assume the wiring diagram has been followed.

Case and adapters

Case

CAD Files

Fastener List

Item Quantity
M3x5.7 Threaded Insert 7
M3x8 Cap Head Socket Screw 7
M4x8 Cap Head Socket Screw 1

The case enables two potential mounting options:

A) A threaded adapter on the top of the case. The threaded part which attaches to the top part of the case can be configured in openscad. This can be used to attach COSMIC in place of the condenser in an inverted microscope.

B) An M4 mounting screw for attaching a Thorlabs Optical Post

OpenFlexure Adapter

The OpenFlexure is an open-source 3D-printed microscope platform, offering a precision stage with sub-micron resolution at low-cost.

We provide an adapter for mounting our illuminator to the OpenFlexure's illumination dovetail rail: COSMIC to OpenFrame Adapter (.stl). This takes the place of the top part of the regular case described above

We use an extended length illumination rail, created by adjusting the parameters in illumination_dovetail.scad. Here we provide a mesh file of the elongated rail for convenience: Extended Illumination Dovetail (.stl)

Image Processing

We provide a helpful GUI-based program: EasyDPC for bulk processing NDTiff files generated by MicroManager's multi-dimensional acquisition. This program wraps the 2D1,2 and 3D3 qDPC algorithms (made available by WallerLab) into a single easy-to-use interface for specifying the qDPC processing parameters, regularisation method (Tikhonov or total variation) and NDTiff files to process.

Using the recovered phase image, an approximate DIC image can be synthesised by mimicing the shearing and bias retardation characteristics of optical DIC. We provide a MATLAB utility script for this purpose.

License

GPL v3.0

Citation

Please cite as: Drever-Smith, E., Pascut, F. C., Wadsworth, G. I., Chauhan, V. M., & Webb, K. F. (2026). Multimodal illumination for quantitative transmitted-light microscopy. Journal of Microscopy, 1–11. https://doi.org/10.1111/jmi.70156

References

  1. Tian, L., & Waller, L. (2015). Quantitative differential phase contrast imaging in an LED array microscope. Optics Express, 23, 11394.
  2. Chen, M., Phillips, Z. F., & Waller, L. (2018). Quantitative differential phase contrast (DPC) microscopy with computational aberration correction. Optics Express, 26, 32888.
  3. Chen, M., Tian, L., & Waller, L. (2016). 3D differential phase contrast microscopy. Biomedical Optics Express, 7, 3940–3950.

About

Compact Open-Source Multimodal Illumination Cluster (COSMIC). A Low-cost illuminator for transmitted-light microscopy. Enables bright-field, dark-field, diascopic fluorescence, and differential phase contrast illumination.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages