New Data Acquisition Support for Python

Bellevue, WA --- Microstar Laboratories, Inc., maker of Data Acquisition Processor (DAP) systems for PC-based high-performance measurement applications, has released DAPtools for Python, a software API extension that enables high-performance data acquisition applications written using the Python programming language. This is not a reduced or specialized language variant -- it supports the complete, full-featured Python environment. Typical applications would be ad hoc quick tests, or configurable scripting for test automation not bound to specific large application platforms.

Critical Data Acquisition Under Python? -- Maybe Not Crazy

Python is probably not the language you would first consider for an application where late service to a data acquisition or control process means a system failure. Like the fabled hare, Python can be quick, but never as reliable as the fabled tortoise.

In contrast, the DAPL operating system running on-board in a Microstar Laboratories Data Acquisition Processor system is dedicated to taking care of critical real-time details: never late, and never missing a sample. The high-rate, multi-channel data capture operations run in parallel with the host environment supporting the Python system. The DAPL system provides automatic data buffering and supports all data transfers. The Python system can receive the data on its terms, at whatever moments it is ready. About the only major concern is that eventually the Python application script must either accept all of the data it asks for, or clean up the leftovers.

The Programming Interface

The DAPIO programming interface behind DAPtools for Python provides the same stable connections to the DAPL system that C, C++, C#, Basic, Excel, and various other high-level programming environments have used over the last 20 years. It is packaged in DLL form, allowing access from the Python environment through the ctypes library. The special objects and data types of that library can be awkward for programmers to use directly. DAPtools for Python merely "wraps" the actual low-level interface, exposing a simple "interface object" and some utility functions that make the DAP interactions work like familiar Python objects and functions. The programming is a lot like connecting to a networked resource: open a connection, specify the data acquisition and preprocessing activity to perform, run the configuration, take the requested data, and close the connection when finished.


The DAPtools for Python interface is available now with the DAPtools Basic software package. This is provided at no added charge with purchase of any DAP or xDAP data acquisition system from Microstar Laboratories, and upgrades are available for download from the Web as they are issued. There are no ongoing maintenance subscription fees, no license renewal requirements, and no deployment restrictions for applications you develop. DAPtools for Python works with the DAPL 2000 system and DAP boards for PCI and PCI-X host systems, and also with the DAPL 3000 system and the xDAP data acquisition engines, on host systems operating Windows 10, Windows 8, Windows 7, Windows XP, or Windows Server. Contact Microstar Laboratories to obtain a copy of DAPtools Basic with the DAPtools for Python interface.

For more information, visit:

Suggested Articles

A reverse engineering of smart home devices found security issues with bootloaders, outdated operating systems, passwords, and more.

4D imaging radar helps cars see objects better than before, including bridge and tunnel clearances

Siemens has built rugged industrial PCs on the new Atom x6000E series to add graphics for machine vision on the shop floor