Modbus Collector
Always check the compatibility matrix below before installing a new version.
Compatibility
Collectors of all versions >= v1.0.0 are compatible with all Factry Historian versions >= v4.0.0, in both directions. However, for certain functionalities, certain minimum versions of the collector and Factry Historian are required. More information is always available in the release notes.
Feature Compatibility Matrix
This is the compatibility matrix for version listed on this page. If you have downloaded a newer version than the one listed on this page please check the release notes of that version.
Feature | MODBUS Collector Version | Factry Historian Version |
|---|---|---|
Collector Auto Update | >= v1.2.0 | >= v6.4.0 |
Windows 7, 8 Support | <= v1.4.1 | |
v2.3.0
Released on 09/09/2026
Changes
- Measurements that sit close together in the register map are now collected in a single Modbus request instead of one request per measurement. A collector with hundreds of measurements can finish its poll cycle within the collection interval, where before the polls piled up and data arrived with old timestamps. Three advanced collector settings control this: MaxRegistersPerRequest (default 125, the Modbus maximum), MaxRegisterGap (default 8, how many unused registers may sit between two measurements before they are split into separate requests) and BlockReadingEnabled (default on). For Coils and Discrete Inputs the two limits count in bits, at 16 bits per register
- If a device refuses a grouped request, which happens when the request covers an address it does not map, the measurements in that request are read separately instead, so only the measurements the device actually refuses are reported bad. The refusal is remembered, so the collector stops paying for a request it already knows will fail, and retried every five minutes in case the device only refused it temporarily
- A poll no longer starts while the previous one is still running. The collector skips the tick and reports it, instead of queueing requests that would report current values under an older timestamp
- A measurement with a collection interval or offset the collector cannot schedule is now reported as badly configured, where before it was logged and otherwise ignored
- Measurements are no longer polled an extra time at the top of every minute regardless of their CollectionOffset. Staggering measurements with CollectionOffset now actually spreads the load, and a measurement with an offset no longer collects an extra sample each minute
v2.2.2
Released on 13/08/2026
Bug fixes
- Fixed the number of measurements reported in the logs on startup, it counted measurements that were deleted in the Historian
- Fixed the collector not shutting down. Stopping the collector waited for the poll loop, but the poll loop only stopped when the scheduler was closed, which happened after that wait. The collector never exited on its own and was killed once its termination grace period ran out
- Fixed the collector crashing on startup when the Modbus client could not be initialized, for example when no default byte order is set
- A paused or stopping collector now stops reading the Modbus server after the request that is already in progress, instead of working through every remaining measurement and discarding the results
- Fixed points being dropped silently, and the collector hanging, when a poll finished while the collector was shutting down
- Pausing the collector no longer discards the values the poll in progress had already read
- Stopping or pausing the collector now waits for the poll in progress, instead of tearing the connection down underneath it
- A poll that takes longer than the collection interval no longer has the next poll started alongside it. Overlapping polls read every register twice and could report a value from the wrong poll
- Fixed the collector leaving the previous poll loop running when it was activated again without being paused first, which also read every register twice
v2.2.1
Released on 16/07/2026
Changes
- Updated the base collector to v4.2.0
v2.2.0
Released on 16/06/2026
Changes
Bug fixes
- Fixed issues where the Modbus connection could fall into a bad state, preventing a faulty connection from restarting
v2.1.0
Released on 22/01/2026
Changes
v2.0.0
Released on 23/05/2025
- Updated to base collector v3.1.1 and thus dropped support for Windows 7 and 8
v1.4.1
Released on 25/04/2025
Changes
- Altered a trace log to print the raw bytes received from the device
v1.4.0
Released on 04/04/2025
Changes
- Moved the slaveID from the collector settings to the measurement settings
v1.3.4
Released on 02/04/2025
Bug fixes
- Fixed reconnecting client on windows socket errors
v1.3.3
Released on 11/03/2025
Bug fixes
- Fixed reconnecting client on tcp disconnection
v1.3.2
Released on 29/01/2025
Changes
- Disabled streaming until a data loss fix is implemented
v1.3.1
Released on 02/01/2025
Changes
v1.3.0
Released on 03/10/2024
Changes
v1.2.2
Released on 07/06/2024
Changes
- Added support for performance monitoring with Pyroscope
Bug fixes
- Restored windows 7 compatibility
v1.2.1
Changes
- Fixed a bug where the collector would not pause a measurement
v1.2.0
Changes
- Added support for auto-updating. Requires historian server >= v6.4.0
v1.1.9
Changes
v1.1.8
Changes
v1.1.7
Changes
v1.1.6
Bug fixes
- Fixed crash if buffer path could not be opened
- Collector no longer tries to register collector if historian API is unavailable
v1.1.0
When updating to this version keep in mind that environment variables that had a different value will need to be set in the Historian.
Changes
- Added first version of Modbus documentation
- Changed most environment variables to be configured as advanced collector settings in the Historian.