1wire , отваливаются датчики

Добрый день есть 10 датчиков 1wire
5шт подключены на w1, остальные 5шт на w2
Подключены звездой по витой паре без экрана , по трехпроводной схеме. Через какое-то время датчики на w1 начинают отваливаться и исчезать , при этом могут какое то время показывать 0 градусов, если вык/вкл 5v , или перезагруить контроллер датчики вновь появляются. Перечитав все темы про 1wire , начал искать датчик который вешает всю шину w1 , отключая по одному, не нашел , все датчики отваливались. Датчики которые работают на w2 работают без проблем, поменял местами датчики с w2 и w1, получил отваливающиеся датчики которые без проблем работали на w2 и теперь отваливаются на w1 , а те которые раньше отваливались на w1 , теперь нормально работают на w2.
Подключил сейчас все датчики на w2, все работает.

Batch No

6.7.2F 459
Firmware version

202103170905
HW Revision

6.7.2
Release name

wb-2110
Release suite
stable

24-12-2021 01:41:17.758 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 01:40:59.366 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 01:40:41.037 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 01:40:22.556 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 01:40:04.107 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 01:39:45.677 ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master2/28-05473b412300/w1_slave)
24-12-2021 00:39:23.198 ERROR: [w1 driver] Bad CRC

Добрый день. Проверьте пожалуйста - настроен ли первый вход 1W именно как “1-Wire master”?

Да, w1 настроен как мастер.
10 датчиков подключенные к w2 все таки отвалились. Либо нули показывают либо пропадают вообще. Подключаю опять к w2 по 5шт работают нормально , в логах ошибок нет.

Линии с датчиками собраны сл образом:

В щит приходит 10 линий (на каждой по обному датчику) utp кабеля

+5 и gnd собраны со всех линий на двух клеммах.
Шина 1wire тоже собрана с этих 10 линий по 5шт на двух клеммах 1-5 w1 , 6-10 это w2

Питание на концах линий везде проверял, +5 в

Максимальная длина линии 15м

Находил похожую тему (у человека датчики показывали нули или завышенную температуру) насколько я понял у него все это началось после апгрейда до 2110

От версии ПО никак не зависит поведение аппаратных компонентов.
А какой длины лучи получившейся “звезды”? Вообще по спецификации 1-wire “ответвления” до 1,5м ЕМНИП.

Человек подключает с 2110 и прошлой версией запасной контроллер. На 2110 все датчики показывают 0, на старой версии прошивки все корректно работает.

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

Если вы считаете, что дело в версии ПО, пожалуйста попробуйте поставить себе предыдущий стабильный релиз и проверить на нём.

Откатился на 2108, датчики появились и не отваливаются

Один датчик (28-00000d935458) себя странно ведет, данные температуры при выводе

mosquitto_sub -t ‘/devices/wb-w1/#’ -v

Данные появляются с задержкой 4-5 секунд, остальные датчики выводятся за 1-2 секунды

  • 28-00000d935458/meta/error (null) иногда проскакивает, планирую заменить этот датчик.

devices/wb-w1/controls/28-00000d935458 -5.187
/devices/wb-w1/controls/28-04473b3f1400 22.062
/devices/wb-w1/controls/28-04473b578000 33.75
/devices/wb-w1/controls/28-04473b645900 19.812
/devices/wb-w1/controls/28-04473b753700 24.062
/devices/wb-w1/controls/28-05473b412300 19.312
/devices/wb-w1/controls/28-05473b549400 26.125
/devices/wb-w1/controls/28-06473b403500 32.5
/devices/wb-w1/controls/28-06473b454700 35.812
/devices/wb-w1/controls/28-06473b7a3300 23.937
/devices/wb-w1/controls/28-00000d935458/meta/error r
/devices/wb-w1/controls/28-04473b3f1400 22.062
/devices/wb-w1/controls/28-04473b578000 33.75
/devices/wb-w1/controls/28-04473b645900 19.812
/devices/wb-w1/controls/28-04473b753700 24.125
/devices/wb-w1/controls/28-05473b412300 19.312
/devices/wb-w1/controls/28-05473b549400 26.062
/devices/wb-w1/controls/28-06473b403500 32.437
/devices/wb-w1/controls/28-06473b454700 35.812
/devices/wb-w1/controls/28-06473b7a3300 23.937
/devices/wb-w1/controls/28-00000d935458 -5.187
/devices/wb-w1/controls/28-00000d935458/meta/error (null)
/devices/wb-w1/controls/28-04473b3f1400 22.062
/devices/wb-w1/controls/28-04473b578000 33.812
/devices/wb-w1/controls/28-04473b645900 19.812
/devices/wb-w1/controls/28-04473b753700 24.062
/devices/wb-w1/controls/28-05473b412300 19.312
/devices/wb-w1/controls/28-05473b549400 26.125
/devices/wb-w1/controls/28-06473b403500 32.437
/devices/wb-w1/controls/28-06473b454700 35.812
/devices/wb-w1/controls/28-06473b7a3300 23.937
/devices/wb-w1/controls/28-00000d935458 -5.187

Допаяю сейчас к своему тестовому шелйфу еще датчиков - проверю.

Продолжу тему , 2108.
Отключил один датчик , на который были подозрения (сыпались ошибки crc с него), не помогло. Датчики с w1 и w2 в течении какого-то времени (30минут- 3 часа) по очереди отваливаются. Если передернуть 5v или перезагрузить контроллер, появляется 7 или 9 датчиков из 10.

Обновился опять до 2110. Перезагрузил контроллер, датчики появились. В течении 30 минут отвалились по одному датчики с w1 (уже описывал это выше) , при этом на w2 все датчики на месте. В логах ошибки crc.

Сегодня повешал перед некоторыми датчиками (с которых сыпались ошибки) конденсатор на 100мкф (между +5 и gnd)
Перезагрузил контроллер, 6 часов работают без отвалов, в логах ошибок нет. Наблюдаю дальше, завтра подключу отбракованный датчик , так же с конденсатором.

Помалу доходит до всех… :clap:

100, да еще электролит - много и “нехорошо”. Электролит плохо гасит ВЧ. Из практики - отлично работают 0.1 пленочные
Вот тут и тут описывал. Да, моя же рекомендация подтягивать “дальнй” конец линии данных к питанию - не очень хороша, это не нужно.

Датчики проработали сутки и половина отвалилась. Отвалились все, которые работали на w1

Заменил пугв 1х1,5 кабель который был между клеммой w1 и w2 на контроллере и клеммами на которые заходят линии 1wire в щите на витую пару.

Если “все” то единственный верный путь дебага - померить напряжение на линии данных этой шины. И если просажено- найти датчик который сажает. Отключая по половине шины или по одному.

Напряжение первым делом проверял, везде норм.

У меня вызывает вопрос то, что если местами шины прменять с w2 на w1 , а w1 на w2 , то те что хорошо работали на w2 начинают плохо работать на w1, а те что до этого отваливаливались работая на w1, отлично работают на w2?

Напряжение на линии данных? А какое на работающей и “подвисшей” шине?

Датчик рабочий
Между +5 и gnd напряжение 4.99-5.01v
Между wire и gnd напряжение 4.80v

Датчик который отвалился

Между +5 и gnd напряжение 4.99-5.01v
Между wire и gnd напряжение 4.80v

Конденсаторы , я опечатался, не 100 а 10 мкф

Добрый день! Я так и не понял из ваших сообщений: на 2108 датчики работают стабильно или тоже нет?

На 2108 работают дольше, но тем не менее отваливаются так же как на 2110. Буду использовать скрипт который вкл/выкл 5v , если какой-то из датчиков отвалился.

У меня не воспроизводится… Точнее - есть пара датчиков, которые именно “защелкиваются”. Но с ними наприяжение на самой линии 1-wire падает. Попробуйте еще раз померить, именно наприяжение между GND и клеммой W[1…2].