Skip to main content

Interface to Mightex LED controllers.

Project description

This Python package (mightex_device) creates a class named MightexDevice, which contains an instance of serial_device2.SerialDevice and adds methods to it to interface to Mightex LED controllers.

Authors:

Peter Polidoro <polidorop@janelia.hhmi.org>

License:

BSD

Example Usage:

from mightex_device import MightexDevice
dev = MightexDevice() # Might automatically find device if one available
# if it is not found automatically, specify port directly
dev = MightexDevice(port='/dev/ttyUSB0') # Linux
dev = MightexDevice(port='/dev/tty.usbmodem262471') # Mac OS X
dev = MightexDevice(port='COM3') # Windows
dev.get_serial_number()
'04-150824-007'
dev.get_channel_count()
4
channel = 0 # channel numbering starts at 0, not 1!
dev.get_mode(channel)
'disable'
dev.set_normal_parameters(channel,1000,30)
dev.get_normal_parameters(channel)
{'current': 30, 'current_max': 1000}
dev.set_mode_normal(channel)
dev.get_load_voltage(channel)
2622
dev.set_normal_current(channel,200)
dev.get_load_voltage(channel)
3054
dev.set_mode_disable(channel)
dev.set_strobe_parameters(channel,100,1)
dev.get_strobe_parameters(channel)
{'current_max': 100, 'repeat': 1}
dev.set_strobe_profile_set_point(channel,0,100,1000000)
dev.set_strobe_profile_set_point(channel,1,10,500000)
dev.set_strobe_profile_set_point(channel,2,0,0)
profile = dev.get_strobe_profile(channel)
profile
[{'current': 100, 'duration': 1000000},
 {'current': 10, 'duration': 500000},
 {'current': 0, 'duration': 0}]
dev.set_mode_strobe(channel)
dev.get_strobe_profile(channel+1)
[{'current': 20, 'duration': 1000},
 {'current': 10, 'duration': 1000},
 {'current': 0, 'duration': 0}]
dev.set_strobe_profile(channel+1,profile)
dev.get_strobe_profile(channel+1)
dev.set_mode_strobe(channel+1)
dev.set_trigger_parameters(channel,100,True)
dev.get_trigger_parameters(channel)
{'current_max': 100, 'falling_edge': True}
dev.set_trigger_profile_set_point(channel,0,100,1000000)
dev.set_trigger_profile_set_point(channel,1,10,500000)
dev.set_trigger_profile_set_point(channel,2,0,0)
dev.get_trigger_profile(channel)
[{'current': 100, 'duration': 1000000},
 {'current': 10, 'duration': 500000},
 {'current': 0, 'duration': 0}]
dev.set_mode_trigger(channel)
dev.reset()
dev.get_trigger_profile(channel)
[{'current': 20, 'duration': 1000},
 {'current': 10, 'duration': 1000},
 {'current': 0, 'duration': 0}]
dev.set_trigger_profile_set_point(channel,0,100,1000000)
dev.set_trigger_profile_set_point(channel,1,10,500000)
dev.set_trigger_profile_set_point(channel,2,0,0)
dev.store_parameters()
dev.reset()
dev.get_trigger_profile(channel)
[{'current': 100, 'duration': 1000000},
 {'current': 10, 'duration': 500000},
 {'current': 0, 'duration': 0}]
dev.restore_factory_defaults()
dev.store_parameters()
dev.reset()
dev.get_trigger_profile(channel)
[{'current': 10, 'duration': 20},
 {'current': 0, 'duration': 0}]
from mightex_device import MightexDevices
devs = MightexDevices()  # Might automatically find all available devices
# if they are not found automatically, specify ports to use
devs = MightexDevices(use_ports=['/dev/ttyUSB0','/dev/ttyUSB1']) # Linux
devs = MightexDevices(use_ports=['/dev/tty.usbmodem262471','/dev/tty.usbmodem262472']) # Mac OS X
devs = MightexDevices(use_ports=['COM3','COM4']) # Windows
devs.keys()
dev = devs[serial_number]

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

mightex_device-2.0.4.tar.gz (10.1 kB view details)

Uploaded Source

File details

Details for the file mightex_device-2.0.4.tar.gz.

File metadata

File hashes

Hashes for mightex_device-2.0.4.tar.gz
Algorithm Hash digest
SHA256 b3a8d19cb4c8c3179b33466895f3cb5097e4a5d63e35c22aea83bf04a5a02540
MD5 47f68b978a6a9beed15b0d7b917160bd
BLAKE2b-256 38f004bf97046c2427719ae8856cc2e70e5055a05b08303127a59c284c3dc174

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