Thanks @nickma82!
Here are some of the topics already started:
- Writing values in modbus binding not considering valuetype and binding state (see also some comments in issue #428)
- Connection pooling in modbus binding (see also issue #2043)
Relevant git branches
- modbus-connection-fixes (for PR #3512) – contains several connection closing fixes for modbus binding. Previously in many cases connections were left open
- modbus-connection-fixes-error-messages, based on modbus-connnection-fixes branch. Improves/logs error messages (also relates to issue #3456)
- modbus-binding-tests integration tests. Currently only for modbus TCP.
My plan is to
- develop the tests first (modbus-binding-tests) to have a basic test set to detect any regressions. In future the tests can be extended with modbus serial tests. The serial tests could be run manually since true serial port is required. I think the tests could be run on any computer with two serial USB adapters and a null modem cable (one port is used for the server while the other is the client).
– specifically, I still need tests for writing data, and some additional read tests - implement writing of other value types (refer to this discussion for more info)
- Connection pooling in modbus binding (only one connection per ip+port or serial port (but not parameters) would be opened). Mandatory for modbus servers that cabable of serving one client at a time.
I have been also experimenting with the idea of separating modbus connection configuration from item configuration. Please see my comment in the connection pooling thread.