Update Nov 2014: This project was started as a set of patches to Andor SDK3 v3.1 in 2011. The current version of the SDK (v3.7) fixes most of the problems we were trying to address, namely
As such, the examples contained in this library may include deprecated commands. It is recommended you try to use the official SDK first and if that presents difficulties look at how I did things in this version.
Update March 2014: Timestamp metadata can now be read from the camera during frame download for accurate timing of when frames were captured. See the metadata-update.zip file in the Files list.
sCMOS cameras a very promising new technology in scientific imaging, with small pixels, large arrays and fast read-out times. Andor currently produce two models of sCMOS camera, Neo and Zyla, which operate on their SDK v3 - which is an complete redesign of their SDK from the ground-up. Developed in C, they provide bare-bones wrappers for LabVIEW which doesn't include any error-handling functionality. This project started as an attempt to integrate error handling and grew into some examples and pooling ideas of how to get the most out of our cameras.
This project includes
- Integration into the LabVIEW palette menu
- Error handling (integrating meaningful error clusters from function calls)
- ROI control (for cameras with FullAOIControl)
- Buffer handling and unpacking for image retrieval
- A simple application to monitor the camera and control cooling
- A simple program to query to device's properties and ranges
- Example code
Note: You will need to specifically request the official LabVIEW drivers from your vendor if you do not have them already before installing this wrapper kit - there are no drivers or DLLs included, if no other reason than version incompatibility. Install the Andor LabVIEW driver first, then install with this wrappers on top of that. If a new version of the driver is released you will have to reinstall the wrappers after updating it.
Note also: This kit is not officially supported and simply demonstrates how to use the SDK and get the most out of your sCMOS camera. We are an academic research group in experimental physics and made these modifications for our own use - we are simply making them available because we have had a fair bit of interest from other groups trying to fast-track their own development and find out how we were successful in getting our code to work.
Here's an example demonstrating connecting to the camera, querying it, then setting an ROI and some exposure settings, with error propagation via a standard error cluster.
There are several convenience VIs included to simplify common tasks.