ioBroker.modbus
ioBroker.modbus copied to clipboard
Factor 0.1/0,1 is not scaling down
I am using mdbus adapter in slave mode. Master is "Technische Alternative - CMI". For scaling down imported values I use factor 0.1. But instead of scaling down by factor 10, modbus instance shows values multiplied by 10. trying decimal commas instead of decimal point makes no difference. Trying to solve this issue via formulas is not possible neither. It appears to me, formulas are only available for master instances. This appears to me to be strange as well.
To Reproduce
- use modbus slave mode instance, none of the check boxes are ticked in "Allgemein"
- create register entry for holding register with factor 0.1 or 0,1 / signed 16 Bit Big endian, only "Abfrage" Checkbox is ticked
- wait for incomming data
Expected behavior
I expect incomming values to be scaled down
Screenshots & Logfiles
If applicable, add screenshots and logfiles to help explain your problem.
Versions:
Installierte Instanzen:
3
Verfügbare Version:
5.0.11
Installierte Version:
5.0.11
Uuups.. I did a bit of more investigation.
I checked my settings. So now I know 0,1 is the factor I should use.
I tried factor 0,1 -> which converts register values 92 to 920 I tried factor 10 -> which converts register value 92 to 9,1
I can live with this, but this is wrong way round. Isn't it?
please provide a debiug log. 0.1 should work normally ...
I hope this is what you want to see.
Adress Nr 4 is the one you probably want to see.
2023-11-15 12:19:32.450 - warn: modbus.0 (915) FC4 request outside inputs registers boundaries: address 30, len 1. Expected from 0 to 4
2023-11-15 12:19:32.450 - debug: modbus.0 (915) sending tcp data
2023-11-15 12:19:37.450 - debug: modbus.0 (915) handling write single register request.
2023-11-15 12:19:37.452 - debug: modbus.0 (915) sending tcp data
2023-11-15 12:19:40.925 - info: host.iobroker stopInstance system.adapter.modbus.0 (force=false, process=true)
2023-11-15 12:19:40.928 - info: modbus.0 (915) Got terminate signal TERMINATE_YOURSELF
2023-11-15 12:19:40.930 - info: modbus.0 (915) terminating
2023-11-15 12:19:40.930 - debug: modbus.0 (915) Plugin sentry destroyed
2023-11-15 12:19:40.930 - info: modbus.0 (915) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
2023-11-15 12:19:40.971 - info: host.iobroker stopInstance system.adapter.modbus.0 send kill signal
2023-11-15 12:19:41.432 - info: modbus.0 (915) terminating
2023-11-15 12:19:41.463 - info: host.iobroker instance system.adapter.modbus.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)
2023-11-15 12:19:44.038 - info: host.iobroker instance system.adapter.modbus.0 started with pid 930
2023-11-15 12:19:44.767 - debug: modbus.0 (930) Redis Objects: Use Redis connection: 127.0.0.1:9001
2023-11-15 12:19:44.789 - debug: modbus.0 (930) Objects client ready ... initialize now
2023-11-15 12:19:44.791 - debug: modbus.0 (930) Objects create System PubSub Client
2023-11-15 12:19:44.791 - debug: modbus.0 (930) Objects create User PubSub Client
2023-11-15 12:19:44.801 - debug: modbus.0 (930) Objects client initialize lua scripts
2023-11-15 12:19:44.805 - debug: modbus.0 (930) Objects connected to redis: 127.0.0.1:9001
2023-11-15 12:19:44.814 - debug: modbus.0 (930) Redis States: Use Redis connection: 127.0.0.1:9000
2023-11-15 12:19:44.819 - debug: modbus.0 (930) States create System PubSub Client
2023-11-15 12:19:44.820 - debug: modbus.0 (930) States create User PubSub Client
2023-11-15 12:19:44.867 - debug: modbus.0 (930) States connected to redis: 127.0.0.1:9000
2023-11-15 12:19:44.887 - debug: modbus.0 (930) Plugin sentry Initialize Plugin (enabled=true)
2023-11-15 12:19:45.092 - info: modbus.0 (930) starting. Version 5.0.11 in /opt/iobroker/node_modules/iobroker.modbus, node: v18.18.2, js-controller: 5.0.12
2023-11-15 12:19:45.172 - debug: modbus.0 (930) Iterate inputRegs inputRegisters: 0 = inputRegisters.3_test
2023-11-15 12:19:45.173 - debug: modbus.0 (930) Iterate holdingRegs holdingRegisters: 0 = holdingRegisters.2_0-10v
2023-11-15 12:19:45.173 - debug: modbus.0 (930) Iterate holdingRegs holdingRegisters: 1 = holdingRegisters.3_EZ3-Leistung
2023-11-15 12:19:45.173 - debug: modbus.0 (930) Iterate holdingRegs holdingRegisters: 2 = holdingRegisters.4_EZ3-Tagesleistung
2023-11-15 12:19:45.174 - debug: modbus.0 (930) Iterate holdingRegs holdingRegisters: 3 = holdingRegisters.5
2023-11-15 12:19:45.174 - debug: modbus.0 (930) Initialize Objects for disInputs: []
2023-11-15 12:19:45.174 - debug: modbus.0 (930) Initialize Objects for coils: []
2023-11-15 12:19:45.175 - debug: modbus.0 (930) Initialize Objects for inputRegs: [{"_address":"3","name":"test","description":"test","unit":"keh","type":"int16be","len":1,"factor":1,"offset":0.1,"formula":"","role":"value.valve","room":"","cw":false,"isScale":"","address":3,"deviceId":2,"id":"inputRegisters.3_test"}]
2023-11-15 12:19:45.175 - debug: modbus.0 (930) Add inputRegisters.3_test: {"_id":"inputRegisters.3_test","type":"state","common":{"name":"test","role":"value.valve","type":"number","read":true,"write":true,"def":0,"unit":"keh"},"native":{"regType":"inputRegs","address":3,"deviceId":2,"type":"int16be","len":1,"offset":0.1,"factor":1}}
2023-11-15 12:19:45.175 - debug: modbus.0 (930) Initialize Objects for holdingRegs: [{"_address":2,"name":"0-10v","description":"0-10vB","unit":"","type":"int16be","len":1,"factor":1,"offset":0,"formula":"","role":"level","room":"","poll":true,"wp":false,"cw":false,"isScale":false,"deviceId":2,"address":2,"id":"holdingRegisters.2_0-10v"},{"_address":3,"name":"EZ3-Leistung","description":"EZ3-Elektr. Leistung","unit":"Watt","type":"int16be","len":1,"factor":1,"offset":0,"formula":"x*12","role":"level","room":"","poll":true,"wp":false,"cw":false,"isScale":false,"deviceId":2,"address":3,"id":"holdingRegisters.3_EZ3-Leistung"},{"_address":4,"name":"EZ3-Tagesleistung","description":"EZ3-Tagesleistung","unit":"KWh","type":"int16be","len":1,"factor":0.1,"offset":0,"formula":"","role":"level","room":"","poll":true,"wp":false,"cw":false,"isScale":false,"deviceId":2,"address":4,"id":"holdingRegisters.4_EZ3-Tagesleistung"},{"_address":5,"name":"","description":"","unit":"","type":"int16be","len":1,"factor":1,"offset":0,"formula":"","role":"level","room":"","poll":true,"wp":false,"cw":false,"isScale":false,"deviceId":2,"address":5,"id":"holdingRegisters.5"}]
2023-11-15 12:19:45.175 - debug: modbus.0 (930) Add holdingRegisters.2_0-10v: {"_id":"holdingRegisters.2_0-10v","type":"state","common":{"name":"0-10vB","role":"level","type":"number","read":true,"write":true,"def":0,"unit":""},"native":{"regType":"holdingRegs","address":2,"deviceId":2,"type":"int16be","len":1,"offset":0,"factor":1,"poll":true}}
2023-11-15 12:19:45.176 - debug: modbus.0 (930) Add holdingRegisters.3_EZ3-Leistung: {"_id":"holdingRegisters.3_EZ3-Leistung","type":"state","common":{"name":"EZ3-Elektr. Leistung","role":"level","type":"number","read":true,"write":true,"def":0,"unit":"Watt"},"native":{"regType":"holdingRegs","address":3,"deviceId":2,"type":"int16be","len":1,"offset":0,"factor":1,"poll":true}}
2023-11-15 12:19:45.176 - debug: modbus.0 (930) Add holdingRegisters.4_EZ3-Tagesleistung: {"_id":"holdingRegisters.4_EZ3-Tagesleistung","type":"state","common":{"name":"EZ3-Tagesleistung","role":"level","type":"number","read":true,"write":true,"def":0,"unit":"KWh"},"native":{"regType":"holdingRegs","address":4,"deviceId":2,"type":"int16be","len":1,"offset":0,"factor":0.1,"poll":true}}
2023-11-15 12:19:45.176 - debug: modbus.0 (930) Add holdingRegisters.5: {"_id":"holdingRegisters.5","type":"state","common":{"name":"","role":"level","type":"number","read":true,"write":true,"def":0,"unit":""},"native":{"regType":"holdingRegs","address":5,"deviceId":2,"type":"int16be","len":1,"offset":0,"factor":1,"poll":true}}
2023-11-15 12:19:45.337 - debug: modbus.0 (930) Slave ready to start
2023-11-15 12:19:45.422 - debug: modbus.0 (930) server is listening on port
2023-11-15 12:19:45.423 - debug: modbus.0 (930) initiating read coils request handler.
2023-11-15 12:19:45.423 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.423 - debug: modbus.0 (930) initiating read discrete inputs request handler.
2023-11-15 12:19:45.424 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.424 - debug: modbus.0 (930) initiating read holding registers request handler.
2023-11-15 12:19:45.424 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.424 - debug: modbus.0 (930) initiating read input registers request handler.
2023-11-15 12:19:45.425 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.425 - debug: modbus.0 (930) initiating write multiple coils request handler.
2023-11-15 12:19:45.425 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.425 - debug: modbus.0 (930) initiating write multiple registers request handler.
2023-11-15 12:19:45.425 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.426 - debug: modbus.0 (930) initiating write single coil request handler.
2023-11-15 12:19:45.426 - debug: modbus.0 (930) setting request handler
2023-11-15 12:19:45.426 - debug: modbus.0 (930) initiating write single register request handler.
2023-11-15 12:19:45.426 - debug: modbus.0 (930) setting request handler
2023-11-15 12:20:09.305 - info: modbus.2 (720) Connected to slave 127.0.0.1
2023-11-15 12:20:09.306 - info: modbus.2 (720) Disconnected from slave 127.0.0.1
2023-11-15 12:20:09.306 - debug: modbus.0 (930) new connection
2023-11-15 12:20:09.308 - debug: modbus.0 (930) + Clients connected: 127.0.0.1
2023-11-15 12:20:09.311 - debug: modbus.0 (930) - Client connected: 127.0.0.1
2023-11-15 12:20:09.312 - debug: modbus.0 (930) connection closed, socket
2023-11-15 12:20:23.350 - debug: modbus.0 (930) new connection
2023-11-15 12:20:23.350 - debug: modbus.0 (930) + Clients connected: 192.168.0.8
2023-11-15 12:20:23.453 - debug: modbus.0 (930) handling write single register request.
2023-11-15 12:20:23.457 - debug: modbus.0 (930) sending tcp data
2023-11-15 12:20:32.450 - warn: modbus.0 (930) FC4 request outside inputs registers boundaries: address 30, len 1. Expected from 0 to 4
2023-11-15 12:20:32.451 - debug: modbus.0 (930) sending tcp data
2023-11-15 12:20:37.449 - debug: modbus.0 (930) handling write single register request.
2023-11-15 12:20:37.450 - debug: modbus.0 (930) sending tcp data
2023-11-15 12:20:40.449 - debug: modbus.0 (930) handling write single register request.
I would still prefere a proper solution to the problem reported. Is this issue still under investigation?
... sure, as soon as someone has time to look into the code for the reason