Releases: brainelectronics/micropython-modbus
Releases · brainelectronics/micropython-modbus
2.1.3-rc20.dev45
2.1.2
Changed
- Baudrate specific inter frame time is used at Modbus RTU internal function
_uart_read
of serial.py instead of constant value of 5ms
Fixed
2.1.2-rc19.dev42
Changed
- Baudrate specific inter frame time is used at Modbus RTU internal function
_uart_read
of serial.py instead of constant value of 5ms
Fixed
2.1.2-rc18.dev42
Changed
- Baudrate specific inter frame time is used at Modbus RTU internal function
_uart_read
of serial.py instead of constant value of 5ms
Fixed
2.1.1
2.1.1-rc17.dev41
2.1.0
Added
- Typing hints available for all functions of umodbus, see #27
- Docstrings available for all constants, functions and classes of umodbus, see #27
- Test for reading more than 8 coils in a row to verify fix of #36
- Test for reading single negative holding register value
- Test for writing multiple coils to verify fix of #22
- Test for writing multiple registers to verify fix of #23
- Usage documentation for coil, discrete inputs, holding register and input register usage
- Modbus TCP IP and port binding can be checked with
is_bound
property in tcp.py
Changed
- Reordered modules of API documentation
data_as_registers
anddata_as_bits
of common.py removed- Send illegal function code
0x01
if a register other than coil or holding register is requested to be set - Simplified
_process_write_access
logic of tcp.py
Fixed
- Typing hints of function input parameters and return values
- Response data of multiple changed registers (
write_multiple_registers
) is validated with respect to the providedsigned
flag in serial.py and tcp.py, see #23 - Enable reading more than 8 coils in a row, see #36
- Writing multiple coils in TCP, see #22
- Writing multiple registers in TCP, see #23
- Unit test
test_bytes_to_bool
uses MSB and LSB data correctly - Only requested amount of registers are returned by
_process_read_access
logic of tcp.py, see #35
2.1.0-rc15.dev39
Added
- Typing hints available for all functions of umodbus, see #27
- Docstrings available for all constants, functions and classes of umodbus, see #27
- Test for reading more than 8 coils in a row to verify fix of #36
- Test for reading single negative holding register value
- Test for writing multiple coils to verify fix of #22
- Test for writing multiple registers to verify fix of #23
- Usage documentation for coil, discrete inputs, holding register and input register usage
- Modbus TCP IP and port binding can be checked with
is_bound
property in tcp.py
Changed
- Reordered modules of API documentation
data_as_registers
anddata_as_bits
of common.py removed- Send illegal function code
0x01
if a register other than coil or holding register is requested to be set - Simplified
_process_write_access
logic of tcp.py
Fixed
- Typing hints of function input parameters and return values
- Response data of multiple changed registers (
write_multiple_registers
) is validated with respect to the providedsigned
flag in serial.py and tcp.py, see #23 - Enable reading more than 8 coils in a row, see #36
- Writing multiple coils in TCP, see #22
- Writing multiple registers in TCP, see #23
- Unit test
test_bytes_to_bool
uses MSB and LSB data correctly
2.1.0-rc14.dev39
Added
- Typing hints available for all functions of umodbus, see #27
- Docstrings available for all constants, functions and classes of umodbus, see #27
- Test for reading more than 8 coils in a row to verify fix of #36
- Test for reading single negative holding register value
- Test for writing multiple coils to verify fix of #22
- Test for writing multiple registers to verify fix of #23
- Usage documentation for coil, discrete inputs, holding register and input register usage
- Modbus TCP IP and port binding can be checked with
is_bound
property in tcp.py
Changed
- Reordered modules of API documentation
data_as_registers
anddata_as_bits
of common.py removed- Send illegal function code
0x01
if a register other than coil or holding register is requested to be set - Simplified
_process_write_access
logic of tcp.py
Fixed
- Typing hints of function input parameters and return values
- Response data of multiple changed registers (
write_multiple_registers
) is validated with respect to the providedsigned
flag in serial.py and tcp.py, see #23 - Enable reading more than 8 coils in a row, see #36
- Writing multiple coils in TCP, see #22
- Writing multiple registers in TCP, see #23
- Unit test
test_bytes_to_bool
uses MSB and LSB data correctly
2.0.0
Added
- Perform MicroPython based unittests on every
Test
workflow run - Add usage description of docker based MicroPython unittest framework in USAGE
- Add docker compose file based in MicroPython 1.18 image
- Add TCP client Dockerfile, TCP host Dockerfile, unittest Dockerfile and TCP unittest specific Dockerfile. All based on MicroPython 1.18 image
- Add initial test, testing the unittest itself
- Add unittest implementation based on pfalcon's micropython-unittest
- Docstrings available for all functions of functions.py, see #27
- Typing hints available for all functions of functions.py, serial.py and tcp.py, see #27
- Unittest for functions.py, see #16
- Unittest for const.py, see #16
- .readthedocs.yaml for Read The Docs, contributes to #26
Changed
- Use default values for all registers defined in the example JSON
- TCP host example and TCP client example define a static IP address and skip further WiFi setup steps in case a Docker usage is detected by a failing import of the
network
module, contributes to #16 - Define all Modbus function codes as
const()
to avoid external modifications, contributes to #18 - Remove dependency to
Serial
andrequests
fromumodbus.modbus
, see #18 ModbusRTU
class is part of serial.py, see #18ModbusTCP
class is part of tcp.py, see #18ModbusRTU
andModbusTCP
classes and related functions removed from modbus.py, see #18- Imports changed from:
from umodbus.modbus import ModbusRTU
tofrom umodbus.serial import ModbusRTU
from umodbus.modbus import ModbusTCP
tofrom umodbus.tcp import ModbusTCP
read_coils
andread_discrete_inputs
return a list with the same length as the requested quantity instead of always 8, see #12 and #25- Common functions
bytes_to_bool
andto_short
moved to functions.py - Use HTTPS URL instead of SSH for submodule
- Cleanup of root README, content moved to SETUP and USAGE, contributes to #30
- Moved SETUP and USAGE into docs folder, see #26 contributes to #30
- Use
False
or0
as default values for registers without a specific initial value in modbus.py