Проблема с 1wire

Вот тоже интересует вопрос про зависание датчиков на шине w1. Ранее датчики были подключены непосредственно к контроллеру и при зависании (периодически раз в сутки) датчиков срабатывало правило и перезагружало службы wb-homa-w1, wb-homa-modbus, а так же откл/вкл 5V. Недавно подключил все датчики к ESP32 и они исправно отработали две недели без единого замечания. Сейчас я подключил датчики к отдельному БП, сигнал к контроллеру (естественно все GND соединил). Но они опять продолжают зависать с той же периодичностью, но т.к. они питаются от отдельного БП, перезапустить 5V удаленно не получается, а перезапуск служб не помогает. В чем все таки может быть проблема, что на ардуинке они не сбоят, а на wirenboard глючат ?

Добрый день! А у вас есть возможность рассказать поподробнее, что у вас на шине, сколько каких датчиков, какая длина шины? Как схемотехнически реализовывали подключение к ESP32? Какую библиотеку использовали? Очень интересно как история успеха – тем более, что такая существенная разница в поведении.

Возможное решение! И после этого работа восстанавливается, как при перезагрузке?

Датчики 10 штук ds18b20 подключены на шине к БП 5В, длина шины метров 5, от нее ответвления непосредственно к датчикам сантиметров 10-50, сигнальный провод к ардуинке через подтягивающий резистор. Саму шину не переделывал, только переподключил сигнальный провод. Библиотека стандартная DallasTemperature и OneWire. Сейчас значения датчиков передаются в брокер. Работает стабильно.

Пока не попал на объект чтоб все сделать, проверил работоспособность на контроллерах которые на руках

Спасибо большое! Просто черз подтягивающий резистор, понятно. Поделюсь с разработчиками информацией.

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

Коллеги провели исследование и нашли баг: похоже, что активная подтяжка вызода 1-wire не включается, когда должна. Будем разбираться и исправлять. Об обновлениях/исправлениях мы регулярно пишем в канал Обновления Wiren Board.

Добрый день. Проблему решил. Больше месяца перезагрузка контроллера не требуется

Подключил gnd шины 1wire на дискретный выход, написал правило отслеживания обновления датчиков, в случае если какой то датчик не обновлялся 30минут отключаем +5в и gnd на 20–30сек. Правило отрабатывает до 5 раз в день, система не виснет и все работает.