Andor sCMOS (Neo and Zyla) SDK3 examples focused on simplicity and speed. Uses C++14 features, which any modern compiler can handle.
A bonus Python script is included that polls the C++ image.exe for an image, an inefficient yet simple method of checking out what the skys are doing with my auroral-aimed Neo. Yes that could be done with ctypes, pyAndorNeo, etc. but my goal is always simplicity and expediency.
You don't have to install Cmake and Make, but they do make compiling easier.
step 4 is necessary because not all compilers understand how to link the .dll
files directly; the .lib
act as a shim to the .dll
.
-
clone this repository
-
copy from
c:/Program Files/Andor SDK3/
directory intoandor-scmos-examples/lib/
the filesatcorem.lib atcore.dll atutilitym.lib atutility.dll
-
in
andor-scmos-examples/lib
rename atcorem.lib atcore.lib rename atutilitym.lib atutility.lib
-
(optional) install Cmake (the
.msi
file) -
(optional) install Make all you need is under All Packages >
mingw32-make
I use Andor cameras with Ubuntu 16.04. Other Linux versions would likely work as well. I do NOT expect that Windows Subsystem for Linux would work, but have not tried it.
-
clone this repository
-
install Cmake & Make
apt install cmake make g++
from the andor-cmos-examples
directory
cmake .
make
cmake -G "MinGW Makefiles" .
mingw32-make
this creates executable in the same top-level directory. If you don't have a camera, the SimCam will be used.
./listdevices
It will always show two Simcams in addition to any physical cameras you have. Keep this number to use in the "image' program or else you could default to the wrong device or sim-device
./image -?
with Simcam it saves image.bmp
with a test pattern of bar gradients.
With the real camera it stores a dynamic-range compression 8-bit bitmap .bmp
image.
I have hard-coded 4x4 binning for my work--feel free to make it a command-line option. I have also hard-coded on the Spurious Noise Filter and Static Blemish Correction.
More useful examples are in the Andor sCMOS SDK 3 user manual.