Welcome to thorlabs_elliptec’s documentation!

This is a python interface to Thorlabs Elliptec series of piezoelectric motion stages and mounts. It should support all models including:

  • Thorlabs Elliptec ELL6 SM1 threaded dual-position slider

  • Thorlabs Elliptec ELL7 linear stage

  • Thorlabs Elliptec ELL8 rotation stage

  • Thorlabs Elliptec ELL9 SM1 threaded four-position slider

  • Thorlabs Elliptec ELL10 linear stage

  • Thorlabs Elliptec ELL12 SM05 threaded six-position slider

  • Thorlabs Elliptec ELL14 SM1 threaded rotation mount

  • Thorlabs Elliptec ELL16 SM05 threaded rotation mount

  • Thorlabs Elliptec ELL17 28 mm travel linear stage

  • Thorlabs Elliptec ELL18 rotation stage

  • Thorlabs Elliptec ELL20 60 mm travel linear stage

  • Thorlabs Elliptec ELL21 SM2 threaded rotation mount

As of version 1.0, all basic functionality is implemented.

Version 1.2 introduces the “multi-drop” capability which allow multiple devices to share a single serial port device. Note however that only a single device can be moved at a time due to a limitation with the communications protocol. If multiple devices must be moved simultaneously, each device must be connected via its own serial port (such as a dedicated USB to serial adaptor).

Version 1.3 adds a MultiELLx helper class to assist with multi-drop configurations. This version should also better support the newer ELL12, ELL16 and ELL21 devices.

Source code is at https://gitlab.com/ptapping/thorlabs-elliptec.

Python Package Index (pypi) page at https://pypi.org/project/thorlabs-elliptec.

Documentation online at https://thorlabs-elliptec.readthedocs.io.

The documentation from Thorlabs on the Elliptec serial communication protocol may also be of use.

User Guide

API Documentation

Indices and tables