Releases: BlackZork/mqmgateway
Releases · BlackZork/mqmgateway
v2.12.0
New features:
- retain flag = false on topic level
Allows to configure MQTT topic to publish messages if register data was changed between polls only. This mode will not set MQTT RETAIN flag on published MQTT messages. See retain flag description for more info.
v.2.10.1
This is a bugfix release:
- do not set empty strings as mqtt credentials if not specified in config.yaml. Fixed authentication issues with mqtt servers (#68)
- do not overwrite network delays with zero values when slave delays are not set (#70)
- fixed possible segfault in std.int32 converter when low_first is set and there is only one modbus register to read from
v2.10.0
v2.8.1
v2.8.0
New features:
- std.map converter for state and command topics.
- TLS support for mqtt broker connection (git-developer).
- support for single quoted converter arguments of string type.
- support for hex (0x..) and octal (0123..) format in mqtt string payload for command topics
Bugfixes:
- Respect both delay_before_first_command and delay_before_command set for a single poll group
- Fixed bug with multi-slave poll_group definition overriding previously defined slave name property
v2.6.0
New features:
- support for nested maps and lists in state section, with converters added on any level.
- support for list of registers with converter in availability section.
- improved performance for configurations with a lot of modbus networks and many MQTT command and state topics:
- added relation map for poll group to MQTT state topics.
- added relation map for MQTT command topics to register data.
- Added multi device support for poll groups and mqtt topics
v2.4.0
This release was intended to be much smaller, but the changes got a bit out of control :-)
New features:
- Write commands now respect poll delays configured per network or per slave. Renamed min_delay_before[_first]_poll to delay_before[_first]_command (#40). Please update your config file.
- Added write_retries and read_retries, configurable per slave or per modbus network.
- Made log debug level (5) usable for real-time monitoring. Moved all very frequent logs to new trace level (6), added logs for read and write recovery.
- Added watchdog for Modbus network. It reconnects network if TCP /RTU connection is stalled (#39) or RTU device is unplugged (#9). The default watch period is 10s. See "watchdog" entry in modbus configuration section
Bug fixes:
- Fixed bug where state was not updated after a write to register that is a member of a poll group, but not the first one.
- Fixed write only mode
- Availability flag was not changed after reconnecting Modbus network (#43)
- a response_timeout and a response_data_timeout was not set for TCP network, defaults changed from invalid 1s to 500ms (#39)
- Removed double timestamp from logs when modqttd stderr is connected to systemd-journald stream.
- Do not send garbage as state if read fails on initial poll
- Fixed compile errors for gcc v.9
v2.2.0
New features:
- std.bit() converter for state topics. See Standard Converters for description
v2.0.0
New features:
- modbus thread polling loop was reorganized and partially rewritten. Removed sub-loops for initial poll and register group polling. Now there is a single control loop for reading, writing and reacting to control messages from the main thread. This is the main reason to bump version to 2.x.
- new per-slave configuration options
min_delay_before_first_poll
andmin_delay_before_poll
. Those options allows to define a silence period before reading register data.