Проблема с датчиками DS18B20 после обновления

мы всё ещё не можем воспроизвести. Если кто-то с такой проблемой сможет предоставить нам доступ по ssh - можем попробовать исправить.

Спасибо, все более или менее заработало, иногда прилетают битые пакеты, для меня не критично.

1 лайк

Линия в пределах 10-12 метров

Ошибки в журнале есть, оказывается. Вот что пишет:

wb-mqtt-w1.service - Kernel 1-Wire MQTT driver for WB-HomA
Loaded: loaded (/lib/systemd/system/wb-mqtt-w1.service; enabled; vendor prese
Active: active (running) since Fri 2021-11-19 14:26:55 UTC; 2 days ago
Main PID: 1102 (main)
CGroup: /system.slice/wb-mqtt-w1.service
└─1102 /usr/bin/wb-mqtt-w1

Nov 22 08:38:20 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:38:31 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:38:31 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:38:54 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:40:13 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:40:24 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: ERROR: [w1 driver] Bad CRC
Nov 22 08:40:24 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:40:45 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
Nov 22 08:41:29 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: ERROR: [w1 driver] Bad CRC
Nov 22 08:42:04 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveCo
lines 1-17/17 (END)…skipping…

● wb-mqtt-w1.service - Kernel 1-Wire MQTT driver for WB-HomA
Loaded: loaded (/lib/systemd/system/wb-mqtt-w1.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2021-11-19 14:26:55 UTC; 2 days ago
Main PID: 1102 (main)
CGroup: /system.slice/wb-mqtt-w1.service
└─1102 /usr/bin/wb-mqtt-w1

Nov 22 09:22:55 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c969d58
Nov 22 09:23:27 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c9699b8
Nov 22 09:25:31 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c960f04
Nov 22 09:27:45 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c95b510
Nov 22 09:27:58 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-000d0080c038
Nov 22 09:28:43 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c9699b8
Nov 22 09:28:54 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master1/28-00000016de5c/w1_slave)
Nov 22 09:28:54 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000c960f04
Nov 22 09:29:16 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00004000de5c
Nov 22 09:29:47 wirenboard-AVLRSJY6 wb-mqtt-w1[1102]: INFO: [w1 driver] RemoveControl of: 28-00000016de5c

Так. Вижу что периодически пропадают каие-то из устройств, например 28-00000c960f04
покажите еще вывод из

dmesg | grep w1_master_driver

Ну и попробуйте подключить один датчик на шину 1W, отключив остальные.


dmesg grep w1_master_driver.docx (22.1 КБ)

На w2 тоже пробовал перевесить - без изменений Откинул от шины половину датчиков - не помогло. Один новый датчик, подключенный на w1 - взлетает на ура.
Датчиков сейчас подключено 9, в вебе показывает 1-wire thermometers - появляется 7-11 устройств с нулевыми, красными, ненулевыми показателями.
Еще смущает, что показывает то “подключено”, то “отключено” само устройство

Подключил запасной WB из ящика, новый.
WB 6.8.1 с прошивкой wb-2108.Датчики есть. Один слетел правда, может физически его задели.

Попробую тоже сделать гирлянду, воспроизведу.

Столкнулся с аналогичной проблемой только датчиков больше и гирлянда была больше по истории видно что после обновления датчики начали работать в таком же режиме как описано выше как из этой проблемы выходили?

Опишите вашу конфигурацию подробно: какой контроллер, какой релиз установлен, сколько датчиков подключено, как подключено и к каким портам? Датчики сразу не работали? Какие датчики используются? Если подключить только один датчик к порту для теста коротким проводом работает?

Batch No

6.8.1B/2 509

Current uptime

0d 20h 2m

DTS Version

HW Revision

6.8.1

Manufacturing Date

2021-08-31 17:15:53+00:00

Release name

wb-2201

Release suite

stable

Short SN

ANQIPVHB

Temperature Grade

industrial

4 числа обновлялся с версии не могу сказать с какой, и было все нормально, потом в определенный момент датчики начали показывать 0 и умирать, до этого много месяцев стабильно работа 1-wire шина там на 2 канала по 6 и 8 датчиков скорее звездой чем шлейфом но концы не очень длинные по 0,5-5 метров.
Вопрос как узнать какое событие привело к такому состоянию датчиков, новый один датчик работает стабильно.

       прикладываю фото истории




Примерно с 30 апреля сетап датчиков работал. без критических ошибок и нюансов.

4 числа после обновления занимался подключением на второй канал RS-485-2 новых устройств.

Собственно хронологический порядок событий такой: 

Появились новые устройства, были загружены шаблон драйвера и подключено на линию RS-485-2 устройства и в то же время датчики начали исчезать показывать 0 и красным загораться.

Почитав форум предположил что может дело в недостатке питания но вот график по питанию за выбранный промежуток времени:

Какие датчики используются, где их приобретали? Если подключить только один датчик к порту для теста коротким проводом работает нормально? Используете трехпроводную схему подключения датчиков?

Пришлите, пожалуйста, архив с диагностической информацией контроллера и лог-файл сервиса wb-mqtt-w1:

journalctl -u wb-mqtt-w1 --since "15 minutes ago" > /root/w1_log.txt

Файл /root/w1_log.txt пришлите.

Затем остановите сервис опроса датчиков 1-wire и запустите его в отладочном режиме, пришлите полный вывод в консоль после 5-10 минут работы:

systemctl stop wb-mqtt-w1 
wb-mqtt-w1 -d3

Здравствуйте! Получилось ли решить проблему?

Здравствуйте. Сегодня обновился с 2104 на 2204. Аналогичная история с датчиками 1-wire((( Из 12 штук видит от 1 до 3-х одновременно, температура 0 град. По очереди все отваливаются. До обновления все работало, как часы на протяжении года без сбоев. Видно дело не в топологии подключения…

Восстановлю “гирлянду” из аналогичного количества датчиков - попробую воспроизвести.

И дополнение рядом в ветке история WB6 самопроизвольно перезагружается по несколько раз в день - #33 от пользователя R0man У меня абсолютно аналогично, отключил w1, полет нормальный. Что-то с 1-wire совсем не так… Можно как-то вручную именно этот сервис даунгрейдить до версии в пакете 2104, где все работало?
Спасибо.

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

@Rumpa Отключили сервис wb-mqtt-w1? То есть при работающем сервисе контроллер самопроизвольно перезагружался, а после остановки перезагрузок нет?
Пришлите, пожалуйста, диагностику, как описано в сообщении выше:

Сегодня вечером постараюсь снять диагностику и прислать. На всякий случай по топологии - датчики подключены гирляндой, или стежками, как правильно назвать не знаю, по 3-х проводной схеме. Главное - год работали как часы, пока не обновился…

Получилось ли решить проблему?

Словил аналогичную проблему. Датчики покупали вместе с контроллером.
2 года все работало ОК, но после вынужденного обновления сегодня словили этот баг.
Логи вашего парсера, имхо, нет особого смысла собирать. Скорее всего что-то не так в модуле ядра.
Если зайти в /sys/bus/w1/devices/w1_bus_master1, то количество устройств на шине постоянно скачет. Поэтому парсер постоянно читает нули с большей части датчиков, 2-3 успевает прочитать и все. При этом их id меняются, поэтому на графиках скачки постоянно наблюдаются.
Может ядро откатить попробовать?