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. See the Thorlabs ELLx downloads site for latest information.

User Guide

API Documentation

Indices and tables