Releases: aldas/modbus-tcp-client
Releases · aldas/modbus-tcp-client
Added support for double (64bit double precision floating point) data type to API
Added
- support for double (64bit double precision floating point) data type to API. This requires PHP 7.2+ as it uses https://www.php.net/manual/en/function.pack.php E and e formats. (#103)
2.3.1
Added
- Use PHP 8.1 in CI flow.
examples/index.php
now supports FC3 and FC4 requests.
Fixed
- From PHP 8.1
Types::parseAsciiStringFromRegister()
fails to convert extended ASCII (8bit) characters to UTF-8. Introduced
Charset::$defaultCharset
to be able to set default charset used to convert strings.
2.3.0
Allow high level API setting custom endian for each address
- Allow high level API setting custom endian for each address with
ReadRegistersBuilder
andReadRegisterAddress
classes.
fix BinaryStreamConnection reading problems, improve examples
Fixed
BinaryStreamConnection
endless loop (CPU @ 100%) when stream is ready for reading but stream returns no data at all (#73)
Added
- Example for Modbus server examples/example_response_server.php
Changed
- Changed examples to use
Packet::isCompleteLength()
handle packet fragmentation
Added
- Added functions to check is received data is complete/error Modbus TCP packet (PR #63)
Changed
- Changed
StreamHandler
to read data until complete packet is received. Previously we read only once from stream
and naively assumed that Modbus TCP packet can not be fragmented over multiple TCP packets/ multiple stream reads.
This fixed #61.
Escape stty command for SerialStreamCreator to avoid unescaped arguments
Security
- Escape stty command for SerialStreamCreator to avoid unescaped arguments (#54)
Adds Function 23 and High level API to compose Coil (fc1/2) requests
Added
- Added high level API to compose Coil (fc1/2) requests. See (#49):
ModbusTcpClient\Composer\Read\ReadCoilsBuilder
ModbusTcpClient\Composer\Write\WriteCoilsBuilder
- Added 'serial' protocol support to
BinaryStreamConnection
. See examples/rtu_usb_to_serial_stream.php how to use it. - Added example to read modbus RTU from Usb to rs-485 adapter and SHT20 sensor (#50)
- Adds Function 23 (0x17) Read/Write Multiple registers support (#47)
- Started changelog
Changed
- Adds request time on example request page
- (BREAKING change) abstract class
ModbusTcpClient\Composer\Address
changed to interface
fix Write Single Register (FC=06) validation
fix #39 Write Single Register (FC=06) value validation not allowing usigned int16 values to be used
fixes for ReadRegistersBuilder how it splits addresses to separate requests
fixes #33 case when address is at 0 location but logic that splits addresses to request ignores that address