10.3. PyMoDAQ 5.1 (5.1.0-5.1.13)
PyMoDAQ 5.1.0 was released on 2025-10-06, followed by thirteen maintenance releases until 2026-06-17. Pull requests (#NNN) refer to the PyMoDAQ repository.
10.3.1. Highlights
5.1 consolidates the LECO remote-control layer, generalizes optimizers (with the Bayesian optimizer rebuilt on
version 2 of the bayesian-optimization package) and adds a Data Mixer and an adaptive scan mode as
extensions. DAQ_Move gets a more compact layout and a relative-move UI, and units are handled more consistently.
10.3.2. Major new features
10.3.2.1. Optimizers and extensions
Integration of the
bayesian-optimizationpackage v2: #534; generalization of the optimizer framework: #581; base model corrections and logo: #730, #732Adaptive scan mode as an extension: #589; detectors can be overridden from an extension: #588, #727
Data Mixer in the core extensions: #719
PID upgrade and documentation, setpoint actuators usable from extensions: #703, #708, #633
Stop type setting for optimizers, with a dynamic tooltip: #731, #726
10.3.2.2. LECO communication
LECO serializer, units for moves, settings of LECO plugins and grab/stop in the viewer: #553, #554, #558
Controller host IP settable from the director, actor/director connecting to an arbitrary coordinator host and port: #557, #689
More robust directors, improvements of the LECO parts, JSON data with
LECODirector: #683, #678, #627Compatibility with
pyleco>= 0.5: #644; documentation for JSON communication: #709
10.3.2.3. Control modules and UI
Compact actuators layout: #592; relative UI for DAQ_Move: #641; actuator UI type selectable in the Dashboard: #676; patches of the actuator UI: #619
Control module settings as a popup (
viewer/settings_as_popupconfig entry): #620Notification when a live Viewer2D cannot display all the received data: #570
Dashboard can be run directly with a preset from the command line: #665, #670
Units: SI prefix handling for dimensionless quantities, units kept as is, optional SI prefix display, units in scans: #604, #625, #626, #704
Nested group parameters (
addMenu) with a compatible default preset: #712, #716; list ordering instead of values in the configuration: #673Name for the scan and logger windows: #711; h5 browser features moved to
pymodaq_gui: #546Configuration file split by package, with checks of mandatory entries: #593, #594, #606
10.3.2.4. Documentation
Lab story “Read a Basler camera”, rewritten “Loading modules” section, fixed sequence diagrams: #612, #677, #707, #713
10.3.3. Bug fixes (5.1.1-5.1.13)
5.1.1-5.1.2: documentation builds, daq_logger quit, dashboard module loading factorization: #737, #743, #749, #728
5.1.3-5.1.4: .NET libraries initialization,
pyqtgraphrestricted to < 0.14, monorepo port: #745, #768, #780, #7895.1.5: Python 3.9 support removed and 3.13 added, configuration list entries, average live plot display: #795, #803, #827
5.1.6-5.1.7: DAQ_Move dataset,
QPointFaccess,QTimerownership, loading a dashboard with a preset: #818, #854, #872, #8765.1.8-5.1.9: LECODirector timers and control, wrong plot of 2D spread scans,
tables < 3.10security fix: #885, #894, #896, #9045.1.10-5.1.11: non-printable characters in XML export, preset settings restoration, scanner data initialization, dynamic data casting in the viewer: #932, #950, #959, #960
5.1.12: 10+ actuators/detectors in an experiment,
ini_positionbutton moves to the initial scan position: #1053, #10575.1.13: sub-package versions forced to match the
pymodaqversion: #1082