Добрый вечер!
Собираю устройство, которое будет работать по modbus. У него есть 2 coil с адресами 0 и 1, и 2 holding register с адресами 100 и 101.
Подключенное устройство нормально работает, данные по шине передаются, я их успешно считываю при помощи команды modbus_client
Я создал шаблон для устройства и добавил его через веб-интерфейс.
// Configuration options
{
“device_type”: “SVIRSKI-DOOR-SENSOR”,
“device”: {
“name”: “SVIRSKI-DOOR-SENSOR”,
“id”: “svirski-door-sensor”,
“max_read_registers”: 0,
“channels”: [
{
“name”: “Direction 1”,
“reg_type”: “coil”,
“address”: 0,
“type”: “switch”
},
{
“name”: “Direction 2”,
“reg_type”: “coil”,
“address”: 1,
“type”: “switch”
},
{
“name”: “Direction 1 counter”,
“reg_type”: “holding”,
“readonly”: true,
“address”: 100,
“type”: “value”
},
{
“name”: “Direction 2 counter”,
“reg_type”: “holding”,
“readonly”: true,
“address”: 101,
“type”: “value”
}
]
}
}
Оно отображается в устройствах.
Только почему-то регистры хранения считываются без проблем. А вот койлы не хотят, хотя через modbus_client проблем нет, вот лог:
Иногда срабатывают и койлы, но очень редко, в основном вот эта ошибка в логах.
Подскажите, что может быть не так?