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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86b169ed7893c5ce04029654c305b996b0be0ac0b82c4bee21ed5b3e56dcc255 |
|
MD5 | 7d4fe62792aff9f562f05537be7e897d |
|
BLAKE2b-256 | 9a12d8ec25194b0a7a9c48b25355fdf7a0ea53524b5c0f2ccf79c6ba9bc98d01 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 73dcab942769f0688245c14a6f228c03c0d37ccdaf236ff01ab486a6df6578aa |
|
MD5 | 8b3bbde0330b7c7ceba53a42c1bccccf |
|
BLAKE2b-256 | 2d8e5a9be42429f724aee3e9b269f8d8d571f978ddd94f457ce0e921affaae3c |