Skip to content

Releases: BlackZork/mqmgateway

v2.12.0

03 Jan 07:53
Compare
Choose a tag to compare

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

04 Dec 21:34
Compare
Choose a tag to compare

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

20 Sep 14:20
Compare
Choose a tag to compare

New features:

  • mqtt.publish_mode (always|on_change), allows to publish to MQTT every time a register data is read (#56, #32). Configurable per topic or globally on mqtt level.

Bugfixes:

  • do not publish on topic if related modbus register data was changed in a way that generates the same mqtt payload (#38)
  • fixed startup publish bug when the first received register value was compared to uninitialized variable
  • fixed json generation for single element lists (#65)

v2.8.1

21 Aug 20:24
Compare
Choose a tag to compare

Fixed std.map parsing for keys greater than INT16_MAX (32767). (#62)

v2.8.0

19 Jul 13:50
Compare
Choose a tag to compare

New features:

  1. std.map converter for state and command topics.
  2. TLS support for mqtt broker connection (git-developer).
  3. support for single quoted converter arguments of string type.
  4. support for hex (0x..) and octal (0123..) format in mqtt string payload for command topics

Bugfixes:

  1. Respect both delay_before_first_command and delay_before_command set for a single poll group
  2. Fixed bug with multi-slave poll_group definition overriding previously defined slave name property

v2.6.0

12 Jun 20:23
Compare
Choose a tag to compare

New features:

  1. support for nested maps and lists in state section, with converters added on any level.
  2. support for list of registers with converter in availability section.
  3. 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.
  4. Added multi device support for poll groups and mqtt topics

v2.4.0

14 May 09:25
Compare
Choose a tag to compare

This release was intended to be much smaller, but the changes got a bit out of control :-)

New features:

  1. 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.
  2. Added write_retries and read_retries, configurable per slave or per modbus network.
  3. 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.
  4. 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:

  1. 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.
  2. Fixed write only mode
  3. Availability flag was not changed after reconnecting Modbus network (#43)
  4. a response_timeout and a response_data_timeout was not set for TCP network, defaults changed from invalid 1s to 500ms (#39)
  5. Removed double timestamp from logs when modqttd stderr is connected to systemd-journald stream.
  6. Do not send garbage as state if read fails on initial poll
  7. Fixed compile errors for gcc v.9

v2.2.0

26 Mar 11:59
Compare
Choose a tag to compare

New features:

v2.0.0

17 Feb 17:53
Compare
Choose a tag to compare

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 and min_delay_before_poll. Those options allows to define a silence period before reading register data.

v1.4.1

29 Jan 14:03
Compare
Choose a tag to compare

This is the last stable release for 1.x line, no significant changes from 1.4.0.
Added to trigger docker stable images build before upcoming 2.x