/zwo-efw

Primary LanguagePythonOtherNOASSERTION

zwo-efw

Python bindings to control the ZWO electronic filter wheel (EFW) (https://astronomy-imaging-camera.com/product-category/filterfilter-wheel). This library uses cffi to wrap the C headers of the ZWO api.

Usage

import zwo_efw

efw = zwo_efw.EFW(efwid=0)
efw.initialize()
efw.get_position() # return current position
efw.set_position(3) # move to position 3 of the filter wheel

Installation

The Python code can be cloned and installed as follows:

git clone https://github.com/wholden/zwo-efw.git
python setup.py install

The drivers must be downloaded directly from ZWO. Choose the "Developers" tab and download the SDK. Currently only the Windows DLL is supported, but if someone creates a github issue it wouldn't be too hard for me to add linux/mac support. https://astronomy-imaging-camera.com/software-drivers

The downloaded "EFW_filter.dll" file should be placed in the "zwo_efw/lib" folder.

Linux support

Linux requires a tweaked approach to using CFFI due to the compiled binaries from ZWO needing linkage to shared libraries (e.g. udev). See the linux branch for more detail.

Raspberry Pi (armv8)

Additional steps are needed for working with raspberry pi (armv8).

Refer to this issue for detail on how user @APinto-DTx got it working.