Добрый день есть 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)
Да, 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м ЕМНИП.
Продолжу тему , 2108.
Отключил один датчик , на который были подозрения (сыпались ошибки crc с него), не помогло. Датчики с w1 и w2 в течении какого-то времени (30минут- 3 часа) по очереди отваливаются. Если передернуть 5v или перезагрузить контроллер, появляется 7 или 9 датчиков из 10.
Обновился опять до 2110. Перезагрузил контроллер, датчики появились. В течении 30 минут отвалились по одному датчики с w1 (уже описывал это выше) , при этом на w2 все датчики на месте. В логах ошибки crc.
Сегодня повешал перед некоторыми датчиками (с которых сыпались ошибки) конденсатор на 100мкф (между +5 и gnd)
Перезагрузил контроллер, 6 часов работают без отвалов, в логах ошибок нет. Наблюдаю дальше, завтра подключу отбракованный датчик , так же с конденсатором.
100, да еще электролит - много и “нехорошо”. Электролит плохо гасит ВЧ. Из практики - отлично работают 0.1 пленочные
Вот тут и тут описывал. Да, моя же рекомендация подтягивать “дальнй” конец линии данных к питанию - не очень хороша, это не нужно.
Если “все” то единственный верный путь дебага - померить напряжение на линии данных этой шины. И если просажено- найти датчик который сажает. Отключая по половине шины или по одному.
У меня вызывает вопрос то, что если местами шины прменять с w2 на w1 , а w1 на w2 , то те что хорошо работали на w2 начинают плохо работать на w1, а те что до этого отваливаливались работая на w1, отлично работают на w2?
На 2108 работают дольше, но тем не менее отваливаются так же как на 2110. Буду использовать скрипт который вкл/выкл 5v , если какой-то из датчиков отвалился.
У меня не воспроизводится… Точнее - есть пара датчиков, которые именно “защелкиваются”. Но с ними наприяжение на самой линии 1-wire падает. Попробуйте еще раз померить, именно наприяжение между GND и клеммой W[1…2].