Package: dvg-devices
DvG_DevicesCollection of I/O interfaces to communicate with microcontroller boards and
laboratory devices, with optional PyQt/PySide multithread support and graphical
user-interfaces.Supports PyQt5, PyQt6, PySide2 and PySide6.Documentation:https://python-dvg-devices.readthedocs.ioGithub:https://github.com/Dennis-van-Gils/python-dvg-devicesPyPI:https://pypi.org/project/dvg-devicesInstallation:pip install dvg-devicesInstallation with an optional Qt-library:pip install dvg-devices[pyqt5/pyqt6/pyside2/pyside6]Supported devicesArduino, or similarmicrocontroller boardAim TTi QL series IIpower supplyBronkhorst EL-FLOWmass flow controllerJulabo circulatorrecirculating bathKeysight 3497xAdigital multimeterKeysight N8700power supplyParker Compax3servo controllerPicotech PT104temperature loggerPolyScience PDrecirculating bathThermoFisher ThermoFlexchillerHighlightsClassSerialDevice()offering higher-level general I/O methods for
a serial device, such asauto_connect(),write()andquery().ClassArduino()which wraps aroundSerialDevice(). In combination withDvG_StreamCommandit
allows for automatically connecting to your Arduino(-like) device and for easy
serial I/O communication.Separate PyQt/PySide interfaces are provided for each of these devices,
offering out-of-the-box multithreaded data acquisition and communication. It
relies onDvG_QDeviceIO.Ready-to-run PyQt/PySide demos to directly control many of the supported
devices with a graphical user-interface.Changelog1.3.0 (2023-02-23)Added methodBaseDevice.SerialDevice.query_bytes()Fixed type hints inBaseDevice.SerialDevice1.2.0 (2022-09-14)Added support for PyQt5, PyQt6, PySide2 and PySide61.1.0 (2022-02-01)Added methodBaseDevice.SerialDevice.readline()1.0.0 (2021-07-02)Stable release, identical to v0.2.60.2.6 (2021-03-02)Minor: Adjusted width of GUI control inJulabo_circulator_qdev.py0.2.5 (2021-03-02)Loosened dependence topyserial~= 3.40.2.4 (2021-03-02)Added device: Julabo circulator0.2.3 (2020-08-27)Workaround for bug with unknown cause inAim_TTi_PSU_protocol_RS232where
the power supply occasionally will skew the serial input and output stream,
such that the reply matches the second-previous query statement. Fixed by
forcefully flushing the serial input and output buffers whenever a wrong reply
is received. Hopefully, this will fix the skew when the nextquery()operation gets executed.0.2.2 (2020-08-27)Fixed bug inBaseDevice.query_ascii(). The use ofast.literal_evalgot
removed because it chokes onnan. Everything is now interpreted as afloatinstead.0.2.1 (2020-08-12)Fix wrong import statementdvg-pyqt-controlsFix wrong import statementdvg-pyqt-filelogger0.2.0 (2020-08-11)Added dependencedvg-pyqt-controls~=1.0Added dependencedvg-pyqt-filelogger~=1.0Added dependencedvg-pyqtgraph-threadsafe~=3.00.1.0 (2020-07-23)Fixed bug inBaseDevice.pywhereinspect.getouterframes()would
momentarily suspend the thread. Solved by ditching inspect. The newID_validation_querymechanism now relies on a simple boolean flag that
gets set to forcequery()to raise on timeout.Update dependencedvg-qdeviceio==0.3.00.0.7 (2020-07-17)Update dependencedvg-qdeviceio==0.2.20.0.6 (2020-07-16)Finished implementingBaseDevice.SerialDevice()Update dependencedvg-qdeviceio==0.2.10.0.5 (2020-07-07)Update dependencedvg-qdeviceio==0.2.0EnumDAQ_triggeris now calledDAQ_TRIGGERCode style: Black0.0.4 (2020-07-04)Update dependencedvg-qdeviceio==0.1.20.0.3 (2020-07-02)Fixed broken packaging0.0.2 (2020-07-02)Major restructuring PyPI packageImplementedDvG_QDeviceIO0.0.1 (2020-07-01)First release on PyPI