labscript-devices


Namelabscript-devices JSON
Version 3.1.1 PyPI version JSON
download
home_pagehttp://labscriptsuite.org
SummaryDevice drivers for hardware controlled by the labscript suite
upload_time2021-12-15 13:46:49
maintainer
docs_urlNone
authorThe labscript suite community
requires_python>=3.6
licenseBSD
keywords experiment control automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <img src="https://raw.githubusercontent.com/labscript-suite/labscript-suite/master/art/labscript_32nx32n.svg" height="64" alt="the labscript suite" align="right">

# the _labscript suite_ » labscript-devices

### Plugin architecture for controlling experiment hardware

[![Actions Status](https://github.com/labscript-suite/labscript-devices/workflows/Build%20and%20Release/badge.svg?branch=maintenance%2F3.0.x)](https://github.com/labscript-suite/labscript-devices/actions)
[![License](https://img.shields.io/pypi/l/labscript-devices.svg)](https://github.com/labscript-suite/labscript-devices/raw/master/LICENSE.txt)
[![Python Version](https://img.shields.io/pypi/pyversions/labscript-devices.svg)](https://python.org)
[![PyPI](https://img.shields.io/pypi/v/labscript-devices.svg)](https://pypi.org/project/labscript-devices)
[![Conda Version](https://img.shields.io/conda/v/labscript-suite/labscript-devices)](https://anaconda.org/labscript-suite/labscript-devices)
[![Google Group](https://img.shields.io/badge/Google%20Group-labscriptsuite-blue.svg)](https://groups.google.com/forum/#!forum/labscriptsuite)
<!-- [![DOI](http://img.shields.io/badge/DOI-10.1063%2F1.4817213-0F79D0.svg)](https://doi.org/10.1063/1.4817213) -->


A modular and extensible plugin architecture to control experiment hardware using the [*labscript suite*](https://github.com/labscript-suite/labscript-suite).

The *labscript suite* supports a range of commercial and open-source hardware, and is modular by design. Adding support for new devices involves writing Python functions for a well-defined set of primitives to program instructions, and transition between buffered I/O and manual states. See the [documentation](http://labscriptsuite.org/documentation) for more details on adding new devices.


## Supported hardware

The following devices have been implemented in the _labscript suite_:<sup>†</sup>
* [AlazarTech](https://www.alazartech.com) PCI Express Digitizers (e.g. [ATS9462](https://www.alazartech.com/Product/ATS9462); PR [#41](http://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/41))
* [LightCrafter DMD](http://www.ti.com/tool/DLPLCR4500EVM) Digital Micro-mirror Device (PR [#43](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/43))
* [MOGLabs Agile RF Synthesizers](https://www.moglabs.com/products/rf-electronics/agile-rf-synth) (ARF/XRF)
* [National Instruments Data Acquisition](http://www.ni.com/data-acquisition/) ([DAQmx](https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P8baSAC)) devices:
  * [cDAQ-9184](https://www.ni.com/en-us/support/model.cdaq-9184.html) CompactDAQ Chassis
  * [PCI 6251](https://www.ni.com/en-au/support/model.pci-6251.html) Multifunction I/O Device
  * [PCI 6533/6534](http://www.ni.com/pdf/manuals/371464d.pdf) High-Speed Digital Pattern I/O
  * [PCI-6713](https://www.ni.com/en-au/support/model.pci-6713.html) Analog Output Device
  * [PCI-6733](https://www.ni.com/en-au/support/model.pci-6733.html) Analog Output Device
  * PCI-DIO-32HS High-Speed Digital I/O
  * [PCIe-6363](https://www.ni.com/en-us/support/model.pcie-6363.html) Multifunction I/O Device
  * [PCIe-6738](https://www.ni.com/en-us/support/model.pcie-6738.html) Analog Output Device
  * [PXI-6733](https://www.ni.com/en-au/support/model.pxi-6733.html) PXI Analog Output Module
  * [PXIe-6361](https://www.ni.com/en-au/support/model.pxie-6361.html) PXI Multifunction I/O Module
  * [PXIe-6535](https://www.ni.com/en-ie/support/model.pxie-6535.html) PXI Digital I/O Module
  * [PXIe-6738](https://www.ni.com/en-au/support/model.pxie-6738.html) PXI Analog Output Module
  * [USB-6008](https://www.ni.com/en-au/support/model.usb-6008.html) Multifunction I/O Device
  * [USB-6229](https://www.ni.com/en-my/support/model.usb-6229.html) Multifunction I/O Device
  * [USB-6343](https://www.ni.com/en-us/support/model.usb-6343.html) Multifunction I/O Device
  * [Quicksyn FSW-0010](http://ni-microwavecomponents.com/quicksyn-full) Microwave Synthesizer (formerly PhaseMatrix)
  
  **Note:** Since v2.5.0 (June 2019), [`labscript_devices.NI_DAQmx`](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/NI_DAQmx) can be used to automatically generate a labscript device class for _any_ NI-DAQmx device! (PR [#56](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/56))

* [NovaTech DDS9m](http://www.novatechsales.com/PDF_files/dds9mds_lr.pdf) 170MHz Four Channel Direct Digital Synthesized Signal Generator (see [blog post](http://labscriptsuite.org/blog/tag/novatech-dds9m/))
* [OpalKelly XEM3001](https://opalkelly.com/products/xem3001/) FPGA Boards used by the Cicero control system (PR [#50](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/50))
* [PineBlaster](http://labscriptsuite.org/hardware/pineblaster) Open-source Digital Pattern Generator
* [PrawnBlaster](https://github.com/labscript-suite/prawnblaster/) Open-source pseudoclock based on the $4 Raspberry Pi Pico
* [SpinCore](https://www.spincore.com/products/#pulsegeneration) Programmable Pulse Generators and Direct Digital Synthesis
  * [PulseBlasterDDS-II-300-AWG](http://www.spincore.com/products/PulseBlasterDDS-II-300/)
  * [PulseBlasterESR-PRO](https://www.spincore.com/products/PulseBlasterESR-PRO/)
  * [PulseBlasterESR-CompactPCI](https://www.spincore.com/products/PulseBlasterESR-CompactPCI/)
  * [PulseBlaster](https://www.spincore.com/products/PulseBlaster/) e.g. SP2 Model: PB24-100-32k
  * [PulseBlasterUSB](https://www.spincore.com/products/PulseBlasterUSB/)
* [Tektronix oscilloscopes](https://www.tek.com/oscilloscope) (PR [#61](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/56))
* [Zaber](https://www.zaber.com) Motion Controllers, e.g. linear translation stages (PR [#85](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/85))


### Supported cameras

The following cameras are implemented by subclassing [`labscript_devices.Camera`](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/Camera.py), a Python-based camera server which can be controlled directly from [**blacs**](https://github.com/labscript-suite/blacs).

* [FLIR](https://www.flir.com) cameras (e.g. [FlyCapture 2](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/FlyCapture2Camera)) using the free PyCapture2 API (PR [#71](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/9))
* [Andor](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/AndorSolis) cameras (PR [#80](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/AndorSolis))
* [Basler pylon](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/PylonCamera) (PRs [#69](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/69) and [#74](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/74)).
* Any camera compatible with National Instruments [IMAQdx](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/IMAQdxCamera) (PRs [#70](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/70), [#72](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/72), [#73](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/73), [#77](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/77), [#79](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/79), [#83](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/83)).
* This includes most cameras compliant with the [GigE Vision](https://en.wikipedia.org/wiki/GigE_Vision) interface standard, such as [Allied Vision](https://www.alliedvision.com/en/products/cameras.html) cameras.

† We do not endorse the use of any particular hardware.


## Installation

labscript-devices is distributed as a Python package on [PyPI](https://pypi.org/user/labscript-suite) and [Anaconda Cloud](https://anaconda.org/labscript-suite), and should be installed with other components of the _labscript suite_. Please see the [installation guide](https://docs.labscriptsuite.org/en/latest/installation) for details.



            

Raw data

            {
    "_id": null,
    "home_page": "http://labscriptsuite.org",
    "name": "labscript-devices",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "experiment control automation",
    "author": "The labscript suite community",
    "author_email": "labscriptsuite@googlegroups.com",
    "download_url": "https://files.pythonhosted.org/packages/95/89/9a91c9d9a62cf5b10e1a375dbf53c4a8f5dab22d4bb7718516ed12db1509/labscript-devices-3.1.1.tar.gz",
    "platform": "",
    "description": "<img src=\"https://raw.githubusercontent.com/labscript-suite/labscript-suite/master/art/labscript_32nx32n.svg\" height=\"64\" alt=\"the labscript suite\" align=\"right\">\n\n# the _labscript suite_ \u00bb labscript-devices\n\n### Plugin architecture for controlling experiment hardware\n\n[![Actions Status](https://github.com/labscript-suite/labscript-devices/workflows/Build%20and%20Release/badge.svg?branch=maintenance%2F3.0.x)](https://github.com/labscript-suite/labscript-devices/actions)\n[![License](https://img.shields.io/pypi/l/labscript-devices.svg)](https://github.com/labscript-suite/labscript-devices/raw/master/LICENSE.txt)\n[![Python Version](https://img.shields.io/pypi/pyversions/labscript-devices.svg)](https://python.org)\n[![PyPI](https://img.shields.io/pypi/v/labscript-devices.svg)](https://pypi.org/project/labscript-devices)\n[![Conda Version](https://img.shields.io/conda/v/labscript-suite/labscript-devices)](https://anaconda.org/labscript-suite/labscript-devices)\n[![Google Group](https://img.shields.io/badge/Google%20Group-labscriptsuite-blue.svg)](https://groups.google.com/forum/#!forum/labscriptsuite)\n<!-- [![DOI](http://img.shields.io/badge/DOI-10.1063%2F1.4817213-0F79D0.svg)](https://doi.org/10.1063/1.4817213) -->\n\n\nA modular and extensible plugin architecture to control experiment hardware using the [*labscript suite*](https://github.com/labscript-suite/labscript-suite).\n\nThe *labscript suite*\u00a0supports a range of commercial and open-source hardware, and is modular by design. Adding support for new devices involves writing Python functions for a well-defined set of primitives to program instructions, and transition between buffered I/O and manual states. See the [documentation](http://labscriptsuite.org/documentation)\u00a0for more details on adding new devices.\n\n\n## Supported hardware\n\nThe following devices have been implemented in the _labscript suite_:<sup>\u2020</sup>\n* [AlazarTech](https://www.alazartech.com) PCI Express Digitizers (e.g. [ATS9462](https://www.alazartech.com/Product/ATS9462); PR [#41](http://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/41))\n* [LightCrafter DMD](http://www.ti.com/tool/DLPLCR4500EVM) Digital Micro-mirror Device (PR\u00a0[#43](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/43))\n* [MOGLabs Agile RF Synthesizers](https://www.moglabs.com/products/rf-electronics/agile-rf-synth) (ARF/XRF)\n* [National Instruments Data Acquisition](http://www.ni.com/data-acquisition/) ([DAQmx](https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P8baSAC)) devices:\n  * [cDAQ-9184](https://www.ni.com/en-us/support/model.cdaq-9184.html) CompactDAQ Chassis\n  * [PCI 6251](https://www.ni.com/en-au/support/model.pci-6251.html)\u00a0Multifunction I/O Device\n  * [PCI 6533/6534](http://www.ni.com/pdf/manuals/371464d.pdf)\u00a0High-Speed Digital Pattern I/O\n  * [PCI-6713](https://www.ni.com/en-au/support/model.pci-6713.html)\u00a0Analog Output Device\n  * [PCI-6733](https://www.ni.com/en-au/support/model.pci-6733.html) Analog Output Device\n  * PCI-DIO-32HS High-Speed Digital I/O\n  * [PCIe-6363](https://www.ni.com/en-us/support/model.pcie-6363.html) Multifunction I/O Device\n  * [PCIe-6738](https://www.ni.com/en-us/support/model.pcie-6738.html)\u00a0Analog Output Device\n  * [PXI-6733](https://www.ni.com/en-au/support/model.pxi-6733.html) PXI Analog Output Module\n  * [PXIe-6361](https://www.ni.com/en-au/support/model.pxie-6361.html)\u00a0PXI Multifunction I/O Module\n  * [PXIe-6535](https://www.ni.com/en-ie/support/model.pxie-6535.html)\u00a0PXI Digital I/O Module\n  * [PXIe-6738](https://www.ni.com/en-au/support/model.pxie-6738.html) PXI Analog Output Module\n  * [USB-6008](https://www.ni.com/en-au/support/model.usb-6008.html) Multifunction I/O Device\n  * [USB-6229](https://www.ni.com/en-my/support/model.usb-6229.html) Multifunction I/O Device\n  * [USB-6343](https://www.ni.com/en-us/support/model.usb-6343.html)\u00a0Multifunction I/O Device\n  * [Quicksyn FSW-0010](http://ni-microwavecomponents.com/quicksyn-full)\u00a0Microwave Synthesizer (formerly PhaseMatrix)\n  \n  **Note:** Since v2.5.0 (June 2019), [`labscript_devices.NI_DAQmx`](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/NI_DAQmx) can be used to automatically generate a labscript device class for _any_ NI-DAQmx device! (PR [#56](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/56))\n\n* [NovaTech DDS9m](http://www.novatechsales.com/PDF_files/dds9mds_lr.pdf) 170MHz Four Channel Direct Digital Synthesized Signal Generator (see [blog post](http://labscriptsuite.org/blog/tag/novatech-dds9m/))\n* [OpalKelly XEM3001](https://opalkelly.com/products/xem3001/) FPGA Boards used by the Cicero control system (PR [#50](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/50))\n* [PineBlaster](http://labscriptsuite.org/hardware/pineblaster)\u00a0Open-source Digital Pattern Generator\n* [PrawnBlaster](https://github.com/labscript-suite/prawnblaster/)\u00a0Open-source pseudoclock based on the $4 Raspberry Pi Pico\n* [SpinCore](https://www.spincore.com/products/#pulsegeneration)\u00a0Programmable Pulse Generators and\u00a0Direct Digital Synthesis\n  * [PulseBlasterDDS-II-300-AWG](http://www.spincore.com/products/PulseBlasterDDS-II-300/)\n  * [PulseBlasterESR-PRO](https://www.spincore.com/products/PulseBlasterESR-PRO/)\n  * [PulseBlasterESR-CompactPCI](https://www.spincore.com/products/PulseBlasterESR-CompactPCI/)\n  * [PulseBlaster](https://www.spincore.com/products/PulseBlaster/) e.g. SP2 Model: PB24-100-32k\n  * [PulseBlasterUSB](https://www.spincore.com/products/PulseBlasterUSB/)\n* [Tektronix oscilloscopes](https://www.tek.com/oscilloscope)\u00a0(PR\u00a0[#61](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/56))\n* [Zaber](https://www.zaber.com)\u00a0Motion Controllers, e.g. linear translation stages (PR [#85](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/85))\n\n\n### Supported cameras\n\nThe following cameras are implemented by subclassing [`labscript_devices.Camera`](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/Camera.py), a Python-based camera server which can be controlled directly from [**blacs**](https://github.com/labscript-suite/blacs).\n\n* [FLIR](https://www.flir.com) cameras (e.g. [FlyCapture 2](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/FlyCapture2Camera)) using the free PyCapture2 API (PR [#71](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/9))\n* [Andor](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/AndorSolis)\u00a0cameras (PR [#80](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/AndorSolis))\n* [Basler pylon](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/PylonCamera)\u00a0(PRs [#69](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/69) and [#74](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/74)).\n* Any camera compatible with National Instruments\u00a0[IMAQdx](https://github.com/labscript-suite/labscript-devices/tree/master/labscript_devices/IMAQdxCamera)\u00a0(PRs [#70](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/70), [#72](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/72), [#73](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/73), [#77](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/77), [#79](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/79), [#83](https://bitbucket-archive.labscriptsuite.org/#!/labscript_suite/labscript_devices/pull-requests/83)).\n* This includes most cameras compliant with the\u00a0[GigE Vision](https://en.wikipedia.org/wiki/GigE_Vision)\u00a0interface standard, such as [Allied Vision](https://www.alliedvision.com/en/products/cameras.html) cameras.\n\n\u2020 We do not endorse the use of any particular hardware.\n\n\n## Installation\n\nlabscript-devices is distributed as a Python package on [PyPI](https://pypi.org/user/labscript-suite) and [Anaconda Cloud](https://anaconda.org/labscript-suite), and should be installed with other components of the _labscript suite_. Please see the [installation guide](https://docs.labscriptsuite.org/en/latest/installation) for details.\n\n\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "Device drivers for hardware controlled by the labscript suite",
    "version": "3.1.1",
    "split_keywords": [
        "experiment",
        "control",
        "automation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "71ee11b92bdaf941570bb49feeaad6adde191dd5bafdc127084adcea50255e6d",
                "md5": "fe3387d03aa52737f0ac8568ac9b045b",
                "sha256": "a28ff3096ba98528a2756f7accb77890af480970b1eccb1ae4c637d691046b13"
            },
            "downloads": -1,
            "filename": "labscript_devices-3.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "fe3387d03aa52737f0ac8568ac9b045b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 274150,
            "upload_time": "2021-12-15T13:46:47",
            "upload_time_iso_8601": "2021-12-15T13:46:47.763751Z",
            "url": "https://files.pythonhosted.org/packages/71/ee/11b92bdaf941570bb49feeaad6adde191dd5bafdc127084adcea50255e6d/labscript_devices-3.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "95899a91c9d9a62cf5b10e1a375dbf53c4a8f5dab22d4bb7718516ed12db1509",
                "md5": "a09a600fdb339c566fe99b4cb792cb3a",
                "sha256": "1f32e70746b111b81bdf05070721a786dff60d96313e5d44cf7e55a8eb40859d"
            },
            "downloads": -1,
            "filename": "labscript-devices-3.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "a09a600fdb339c566fe99b4cb792cb3a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 327548,
            "upload_time": "2021-12-15T13:46:49",
            "upload_time_iso_8601": "2021-12-15T13:46:49.088885Z",
            "url": "https://files.pythonhosted.org/packages/95/89/9a91c9d9a62cf5b10e1a375dbf53c4a8f5dab22d4bb7718516ed12db1509/labscript-devices-3.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2021-12-15 13:46:49",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "labscript-devices"
}
        
Elapsed time: 0.05278s