Notice how in the dropdown when creating a requestor, all of the data types are grouped by type
with the sub-groups being byte-order ... i.e. 1,2,3,4; 4,3,2,1; 2,1,4,3; 3,4,1,2
My point is that it would be easier to pick from a half-dozen adjacent items of the same byte-order:
i.e Float 1,2,3,4; INT 1,2,3,4; UINT 1,2,3,4...
rather than having all of the types and all of the byte orders thrown to the wind requiring precise picking from among the dross
If one wanted to optimize further, I would:
make Holding Register (3) the default rather than coils
have the type selection automatically select the number of registers - typically 2
turn off brackets as the default - I can't imagine any possible utility for [ 123 ] - a non-standard extension rather than "normal" useage
those are the basic stylistic changes which would streamline the entering of requestors.
To add more functionality I would allow the requestor-list to be exported and imported... a subset of a whole system backup/restore
I would abandon the weird enforcing of even modbus register addresses/numbers on serial RS485
I encountered a situation where entering an odd number for the register caused 955 to emit broken request messages which were missing the address and word count words altogether. Some devices have "odd" register addressing schemes and it is not the role of the 955 to enforce some artificial addressing scheme... From my investigations with modbuspoll/slave I know that the modbus standard itself is flexible and does not impose such restrictions.
Further, IF there is sufficient stridency to enforce such an artificial restriction, that should be enforced at the entry/parsing level and not at the level where wrong/broken/malformed packets are emitted