Skip to main content

Library for interacting with Etaluma microscopes and stages

Project description

etalumacontrol

Introduction

This library provides a simplified Python interface for interacting with Etaluma microscopes and motorized stages (600 and 700 series). Essentially, the code provides a simplified wrapper for Etaluma's own C# SDK using Python.NET. This package requires Python 3.8 (or higher, but Python.NET currently supports only up to 3.8).

Current state and limitations

This library was written to facilitate our own use case, but may also be useful to others. If there's a particular feature that you feel is lacking, feel free to submit an issue or PR. Etalumacontrol has only been tested on our LS720, but should work on any 600 and 700 series microscope. 32-bit versions of the LumaUSB and WSC DLL's are included, but have not been tested.

Installation

You may install etalumacontrol from PyPI by entering the following into a shell prompt, preferably after activating a virtual environment:

py -m pip install etalumacontrol

Sample program

Here's a sample program which moves the stage to a specified position, acquires an image, and displays it on the screen.

from etalumacontrol import EtalumaStage, LumaScope

# use the "with" statement to automatically handle resource allocation
with EtalumaStage() as stage, LumaScope() as scope:
    # move stage to center of microscopy slide
    stage.move('x', -62.9)
    stage.move('y', -38)

    # turn on the brightfield led
    scope.set_led(brightness=20)

    # turn up the gain
    scope.gain = 10

    # set shutter speed to 150 ms
    scope.shutter = 150

    # acquire image and show it
    img = scope.get_image()
    img.show()

License

Etalumacontrol is licensed under a 2-clause BSD license.

Etalumacontrol contains microscope firmware and DLL files kindly provided by Etaluma, which are not subject to this license. These files may be distributed as part of the etalumacontrol package, but for other uses please contact Etaluma directly.

Etalumacontrol contains code written by John Kelley. See its separate license file in the CypressFX directory.

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

etalumacontrol-0.1.1.tar.gz (193.0 kB view details)

Uploaded Source

Built Distribution

etalumacontrol-0.1.1-py3-none-any.whl (191.7 kB view details)

Uploaded Python 3

File details

Details for the file etalumacontrol-0.1.1.tar.gz.

File metadata

  • Download URL: etalumacontrol-0.1.1.tar.gz
  • Upload date:
  • Size: 193.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.2

File hashes

Hashes for etalumacontrol-0.1.1.tar.gz
Algorithm Hash digest
SHA256 86b169ed7893c5ce04029654c305b996b0be0ac0b82c4bee21ed5b3e56dcc255
MD5 7d4fe62792aff9f562f05537be7e897d
BLAKE2b-256 9a12d8ec25194b0a7a9c48b25355fdf7a0ea53524b5c0f2ccf79c6ba9bc98d01

See more details on using hashes here.

File details

Details for the file etalumacontrol-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: etalumacontrol-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 191.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.2

File hashes

Hashes for etalumacontrol-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 73dcab942769f0688245c14a6f228c03c0d37ccdaf236ff01ab486a6df6578aa
MD5 8b3bbde0330b7c7ceba53a42c1bccccf
BLAKE2b-256 2d8e5a9be42429f724aee3e9b269f8d8d571f978ddd94f457ce0e921affaae3c

See more details on using hashes here.

Supported by

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