I’m trying to setup modbus to read some 1-wire temperature sensors that are connected to a ControlbyWeb X-410 relay module. It works using snmp but I wanted to switch to modbus for monitoring and control.
What’s odd is that I have one binary water leak sensor connected to the x-410 and it reads that ok in HA but not the one-wire sensors. The x-410 logs the requests from HA and doesn’t show any errors but I get this error in the HA logs:
There’s only the one device and I’ve tried it without specifying the slave (default 0) but same error. Does the slave need to match anything for the device?
I enabled debug for modbus and here is the log file:
2024-01-30 19:05:27.891 DEBUG (SyncWorker_2) [pymodbus.logging] Running transaction 3
2024-01-30 19:05:27.892 DEBUG (SyncWorker_2) [pymodbus.logging] SEND: 0x0 0x3 0x0 0x0 0x0 0x6 0x1 0x4 0x0 0x16 0x0 0x1
2024-01-30 19:05:27.892 DEBUG (SyncWorker_2) [pymodbus.logging] New Transaction state “SENDING”
2024-01-30 19:05:27.892 DEBUG (SyncWorker_2) [pymodbus.logging] Changing transaction state from “SENDING” to “WAITING FOR REPLY”
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Changing transaction state from “WAITING FOR REPLY” to “PROCESSING REPLY”
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] RECV: 0x0 0x3 0x0 0x0 0x0 0x3 0x1 0x84 0x1
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Processing: 0x0 0x3 0x0 0x0 0x0 0x3 0x1 0x84 0x1
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Factory Response[132]
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Adding transaction 3
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Getting transaction 3
2024-01-30 19:05:27.904 DEBUG (SyncWorker_2) [pymodbus.logging] Changing transaction state from “PROCESSING REPLY” to “TRANSACTION_COMPLETE”
2024-01-30 19:05:27.905 DEBUG (SyncWorker_2) [homeassistant.components.modbus.modbus] Pymodbus: x-410: Error: device: 1 address: 22 → pymodbus returned isError True
2024-01-30 19:05:27.921 DEBUG (SyncWorker_6) [pymodbus.logging] Current transaction state - TRANSACTION_COMPLETE
I did already generate the modbus address table which is where I got the address from. I don’t see a register_type … did you mean data_type with float32?
Can you share your yaml for the 1-wire Thermocouple?