Skip to main content

Interface to ThorLabs devices which communicate using the APT protocol.

Project description

This is a python interface to Thorlabs equipment which communicates using the APT protocol. Because there are a large variety of these devices, such as translation and rotation stages, flip mounts and laser diode drivers, this package has been kept as general as possible. A hierarchical class structure is designed such that basic functionality is handled transparently at low levels, allowing a minimal amount of code to be used to implement device-specific features.

In its current state, this package should be able to perform device discovery, communications and message encoding/decoding for every APT-compatible device. Classes for a small number of specific motion controllers are provided which give essentially feature complete functionality for these particular devices. To use a new, unsupported device, a subclass can be created which describes the specifics of the device control and implement its new functionality. If the device is very similar to something already implemented, then the amount of coding required can be very small. For example, the TDC001 is a relatively simple DC motor driven motion controller, and the class to implement it is only a few lines of code since it is able to be derived from the APTDevice_Motor class.

The code has no dependence on the Thorlabs software or libraries, and so is platform-agnostic. It has been tested on Linux and Windows, but should work on all other operating systems supported by the pyserial library.

Support

Documentation can be found online at https://thorlabs-apt-device.readthedocs.io/en/latest/.

Bug reports, feature requests and suggestions can be submitted to the issue tracker.

License

All original work is free and open source, licensed under the GNU Public License. See the LICENSE for details.

A fork of the thorlabs-apt-protocol library is included under the protocol directory, which remains under an MIT license. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thorlabs_apt_device-0.3.2.tar.gz (40.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

thorlabs_apt_device-0.3.2-py3-none-any.whl (60.1 kB view details)

Uploaded Python 3

File details

Details for the file thorlabs_apt_device-0.3.2.tar.gz.

File metadata

  • Download URL: thorlabs_apt_device-0.3.2.tar.gz
  • Upload date:
  • Size: 40.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for thorlabs_apt_device-0.3.2.tar.gz
Algorithm Hash digest
SHA256 3ed1ddd8bb71895072893b1aa97215bdba6bb869a444fd9c9c37c69315374132
MD5 aa0409e7f3d795bd25a618a973a97dc2
BLAKE2b-256 1e7aea82d2d68cdb3c9b9be130f33d2b5499072b1e5c7b1e2867a2124c36cb9d

See more details on using hashes here.

File details

Details for the file thorlabs_apt_device-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: thorlabs_apt_device-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 60.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.7

File hashes

Hashes for thorlabs_apt_device-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1a6062fe778512ef8a29eed1b21fcf94a9aa050816f5e584663b14880e2542b1
MD5 cc55fb3f4cd02d93b7fe90c863ac65ea
BLAKE2b-256 893b22b9cbe788bb2df660825845ebb25c76d8a8c630128e1377a0137f99b73d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page