Большое количество датчиков температуры на 1-wire. Продолжаем борьбу

в продолжении темы 20 датчиков ds18b20 звездой
Отваливаются датчики 1-wire
1-Wire датчики

Отваливаются периодически 1-Wire датчики DS18B20

в логах следующее


|08-01-2025 13:20:39.530|ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master4/28-00000086dedd/w1_slave)|
|---|---|
|08-01-2025 13:19:46.011|ERROR: [w1 driver] Can't read temperature (/sys/bus/w1/devices/w1_bus_master1/28-bcb75f1f64ff/temperature)|
|08-01-2025 13:19:39.103|ERROR: [w1 driver] Can't read temperature (/sys/bus/w1/devices/w1_bus_master1/28-00000094346c/temperature)|
|08-01-2025 13:14:17.632|ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master3/28-3ce104570fc6/w1_slave)|
|08-01-2025 13:09:57.544|ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master3/28-a98d5f1f64ff/w1_slave)|
|08-01-2025 13:09:57.544|ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master3/28-a98d5f1f64ff/w1_slave)|
|08-01-2025 13:09:30.128|ERROR: [w1 driver] Can't read temperature (/sys/bus/w1/devices/w1_bus_master1/28-00000093ccb0/temperature)|
|08-01-2025 13:09:28.182|ERROR: [w1 driver] Can't read temperature (/sys/bus/w1/devices/w1_bus_master1/28-000000849932/temperature)|
|08-01-2025 13:09:13.200|ERROR: [w1 driver] Can't read temperature (/sys/bus/w1/devices/w1_bus_master1/28-3ce10457859a/temperature)|

Краткий пересказ предыдущих тем: сначала грешил что шина у меня звездой и расстояния большие.
ладно прикупил платы расширения w1 две штуки и повесил на одну плату десяток датчиков. на вторую только ОДИН с длиной провода менее метра.

и все равно в логах
ERROR: [w1 driver] Bad CRC (/sys/bus/w1/devices/w1_bus_master4/28-00000086dedd/w1_slave)

проблема получается вовсе не в длине соединения.

помогите все таки решить проблему. до 10 датчиков на одном контроллере не вызывают ошибок. как количество датчиков увеличивается - начинаются проблемы.
причем даже на порту где только один датчик.
получается проблема в ПО.

ЗЫ не предлагать
Использование Wellpro WP3066ADAM с контроллером Wiren Board — Wiren Board и второй такой же аналог AMDSG08.
я купил их, даже оба.
но они на рс-485 тормозят если устройств много. на 115к не умеют.

файл с диагностикой

diag_output_ALYNHADY_2025-01-08-14.28.46.zip (323,9 КБ)

Добрый день.
Наводки на шину от расположенных рядом силовых - исключаете?

Понимаю, что ответ не по теме и в целом нахожусь так же в поисках решений для стабильной работы таких датчиков через ВБ, но всё же самое просто напрашивается - вместо модуля расширения 1W повесить на контроллер доп модуль 485, и тогда, по идее, проблема со скоростью и разграничениями должна решиться, если их не сотни у вас конечно. За информацию о модуле спасибо, подумаю для себя. А то я уже думал не сделать ли самому такой…

1 Like

исключаю. потому что если оставить только штук 5 датчиков на w1 все становится хорошо. при увеличении количества - начинаются глюки на всех шинах. Bad CRC

и на фото один датчик на одной четвертой шине тоже периодически в ошибку уходит.

РС он просто висит вниз от контроллера. там силовых вещей нету. для фото поднял для того чтоб было понятно что он короткий.

У меня есть шина на 12 датчиков, нет ошибок. Точнее - есть но одна-две в час.

Интересно. Попробовал воспроизвести - не воспроизводится.
Тем не менее - отключите силовое питание для проверки.

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

У меня около 11 датчиков, и с одной стороны у меня тоже складывается впечатление, что ПО не идеальное, и даже в прошлом было стабильнее, с другой - всё же тенденция имеется: чем больше шумящих потребителей работает, даже обычных светодиодных ламп с их шумящими источниками - тем больше ошибок. Правда у меня кабели протяженные и идут по одним и тем же каналам.

так, все же ошибки есть при большом количестве датчиков :slight_smile:

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

если все повесить на одну шину то тогда начнут отваливатся надолго.

если распределить по четырем - то тоже ошибки будут. 46 ошибок в час на 17 датчиков

ЗЫ датчиков надо больше. хотябы раза в два.

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

Да, конечно есть даже 20-30 в час особенно если включается-выключается что-то мощное.

Было сразу после установки больше. Решил последовательной заменой счамих датчиков, (китайские). Причем заменял просто по одному и оценивал количество ошибок после замены. Увеличилось? Меняю на другой, уменьшилось - меняю следующий. То есть далеко не факт что именно тот датчик который ошибки генерит - имеет проблему.
Ну и после того как на конец цины поставил по питанию конденсатор - стало совсем хорошо.

И да, “Bad CRC” - значит что сам датчик получил запрос но при получении ответа прошла помеха.
А вот “Cant read”, чаще всего - что и датчик ответа не получил.

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

В документации написано, обращаю внимание

Обычно в домашних условиях надежно работает до 20 датчиков по 5 метров кабеля, соединенных звездой.

И там же есть рекомендации по прокладке шины. Я проверил, только не с 5 метрами - таких мало. Да, работают. И да, ошибки бывают. 1Wire не подключаются “звездой”, не видел такого в проектах.