Invalid crc

Здравствуйте.

Спасибо, посмотрел встроенные сценарии.
Достаточно бедный функционал, не позволит реализовать предупреждение, что через минуту выключу лампочку (поморгав).
Попробую Home assistant (внешний) + публикация через wb engine.

Вашу интеграция к home assistant, запущенный в docker расписано, как добавить.
Можно ли ее добавить в сторонний home assistant (виртуалка HAOS )?

Есть проблемы с работой через mqtt.
И на rs485 есть ошибки crc (каждые 2-3 минуты), хотя условия тепличные, 1бп, расстояние 40см, резистор 120 ом на конце линии.
Как принято, вопросы задавать где начал, или по каждому вопросу свой топик ?

Добрый день.

Не пробовал, но вроде ничего не мешает.
Подробно расписали как работать с MQTT со стороны в инструкции.

Пришлите пожалуйста фото подключения вашей RS-485

Пришлите пожалуйста фото подключения вашей RS-485

Провод UTP5 2х парный CU, 0.51мм.
RS485 по витой паре.
Резистор 120 ом в конце шины, в wirenboard резистор не выключал.
У UTP волновое сопротивление 100 ом, но резистор, как писано в мануале, 120 ом.
iGND обоих модулей реле соединены на wago (на 2 рейке слева).
Не спросил, можно ли так, но полагаю, что нет проблем, т.к. источник питания один.

Старый баг, мы пока не знаем как его вылечить, на работу не должно влиять.

Хм, когда система в покое (без помех) имеет ошибки, это совсем не есть хорошо.
CRC16 = 2^16 , даже при таком темпе через 5 месяцев что нибудь включится/выключится, и система даже не узнает об этом…

Природа бага хотя бы ясна ?
Согласование, помехи, вход rs485 ?

По стандарту кабель 120 ом, у вас в рекомендациях Ethernet.
У Ethernet 100 ом.
В wirenboard8 какой резистор ? 100 или 120 ом ?
Если отключить внутренний резистор, и с обеих сторон подключить 100 ом, это улучшит ситуацию ?

Если взять кабель с экраном и заземлить кабель, это улучшит ситуацию ?

Если найти кабель rs485 (100 ом), это улучшит ситуацию ?

Может кабель слишком короткий, и АРУ зашкаливает и нужно взять кабель длиннее ?

Копать глубоко не хочется, но какие то простые действия готов попробовать.

Jul 15 03:04:02 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:06:07 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 03:09:56 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:11:16 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:13:53 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:14:32 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:17:44 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:24:25 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 03:29:59 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 03:30:07 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:32:04 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:43:12 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 03:49:48 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: request timed out
Jul 15 03:51:02 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:53:12 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:56:31 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc
Jul 15 03:57:17 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 04:02:10 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
Jul 15 04:05:57 wirenboard-AT22VB27 wb-mqtt-serial[7825]: WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:187: Serial protocol error: malformed response: invalid crc

Тут опечатался, резистор 120 ом, как написано в мануале.

Да, проблема возможно софтовая, ждём от разработчиков новое ядро.
Но для начала рекомендую полностью пройтись по рекомендуемой диагностике шины, т.к. баг очень редкий и плавающий.

Шину первым делом посмотрел, там все четко.
Подключил к шине так же RS485-1 (отключив лишний резистор).

Вывод wb-mqtt-serial (работает с ttyRS485-2 / ttyS1):
[13:28:19.369765] <7>DEBUG: [port] /dev/ttyRS485-2: Write: b5 04 01 0e 00 02 0a 40
[13:28:19.370536] <7>DEBUG: [port] /dev/ttyRS485-2: Sleep 764 us
[13:28:19.395114] <7>DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 6b dd 01
[13:28:19.396585] <4>WARNING: [modbus] failed to read 2 input(s) @ 270 of device modbus:181: Serial protocol error: malformed response: invalid crc
[13:28:19.397051] <7>DEBUG: [serial client] </dev/ttyRS485-2 115200 8 N 2>20157688: Wait until 20157688
[13:28:19.397182] <7>DEBUG: [port] /dev/ttyRS485-2: Sleep 339 us
[13:28:19.397299] <7>DEBUG: [port] /dev/ttyRS485-2: Write: fd 46 10 00 f8 00 00 79 5b
[13:28:19.398406] <7>DEBUG: [port] /dev/ttyRS485-2: Sleep 860 us
[13:28:19.401822] <7>DEBUG: [port] /dev/ttyRS485-2: ReadFrame: ff ff ff fd 46 12 52 5d
[13:28:19.402356] <7>DEBUG: [port] /dev/ttyRS485-2: Sleep 339 us

Побайтовое чтение ttyRS485-1 (ttyS2) выдало:
[13:28:19.369804] b5
[13:28:19.369932] 04
[13:28:19.371503] 01
[13:28:19.371669] 0e
[13:28:19.371753] 00
[13:28:19.371864] 02
[13:28:19.371944] 0a
[13:28:19.372022] 40
[13:28:19.372098] 86
[13:28:19.372175] 86
[13:28:19.372251] 80
[13:28:19.372327] 87
[13:28:19.372404] ff
[13:28:19.372480] 6b
[13:28:19.372556] dd
[13:28:19.372632] 01
[13:28:19.397940] fd
[13:28:19.398192] 46
[13:28:19.398289] 10
[13:28:19.398370] 00
[13:28:19.398450] f8
[13:28:19.398528] 00
[13:28:19.398643] 00
[13:28:19.398724] 79
[13:28:19.398802] 5b
[13:28:19.400041] ff
[13:28:19.400548] ff
[13:28:19.400894] ff
[13:28:19.401334] fd
[13:28:19.401448] 46
[13:28:19.401557] 12
[13:28:19.401690] 52
[13:28:19.401798] 5d

wb-mqtt-serial потеряло часть посылки, прочитала:
[13:28:19.395114] <7>DEBUG: [port] /dev/ttyRS485-2: ReadFrame: 6b dd 01
А должна была прочитать:
[13:28:19.372098] 86
[13:28:19.372175] 86
[13:28:19.372251] 80
[13:28:19.372327] 87
[13:28:19.372404] ff
[13:28:19.372480] 6b
[13:28:19.372556] dd
[13:28:19.372632] 01
Но в ней не проходит crc16…
Т.е. и wb-mqtt-serial потерял часть данных.
Но и данные битые.
Или в физике, или в драйвере.

Пока не включил в работу, могу предоставить доступ SSH для поиска проблемы.
Есть сторонний RS485 USB адаптер, могу его подключить к шине, чтобы исключить ошибку в драйвере.

Подскажите в этих местах точно хороший контакт?


Мы рекомендуем конечно же кабель Ethernet, но лучше использовать многожильный обжатый НШВИ как в инструкции.

Точно нормальный контакт, изоляция не попала.
Да и в дампе я наглядно показал, что имеет место потеря байтов в wb-mqtt-serial .

Здравствуйте! Перенесла в отдельный топик по правилу один вопрос - одна тема.

Возможно, ситуация схожая. Если есть возможность перекинуть на сторонний адаптер - сразу будет ясность.
Есть Wiren Board 8: Errata ERRWB84009, но пока нет исправления. У меня на стороннем устройстве ошибки уходят. На WB7 вопрос решён, на WB8 пока ждём исправления.

По ошибкам CRC ожидаем выхода нового ядра для WB8.