Я же написал ранее, что вынужден был перегрузить контроллер. После чего все работает вновь. Мне не понятно что произошло до этого, почему значения отображались в devices, а при обращении к ним в правилах, возникали ошибки. Это касалось абсолютно всех датчиков, подключённых к контроллеру по одной шине.
Речь только про 1-wire? Т.е. вывод команды mosquitto_sub был уже после того, как всё заработало?
Именно.
Евгений, ситуация вновь повторилась, та что в этой теме.
Вот результат команды:
root@wirenboard-ARAXKJYF:~# mqtt-get-dump /devices/wb-w1/#uncategorized
Traceback (most recent call last):
File “/usr/bin/mqtt-get-dump”, line 71, in
rc = client.loop()
File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 720, in loop
rc = self.loop_read(max_packets)
File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 961, in loop_read
rc = self._packet_read()
File “/usr/lib/python2.7/dist-packages/mosquitto.py”, line 1292, in _packet_read
command = self._sock.recv(1)
socket.error: [Errno 104] Connection reset by peer
После выполнения этой команды:
root@wirenboard-ARAXKJYF:~# mosquitto_sub -v -t /devices/wb-w1/#
/devices/wb-w1/meta/name 1-wire Thermometers
Дальше дело не пошло. Терминал молчит.
Так а что именно повторилось?
Как что? Опять все то же, что я писал вначале темы. Исчезли показания датчиков температуры в виртуальных устройствах и скрипты стали ошибку выдавать при обращении к ним. Показания датчиков замерли и не меняются в devices.
а в /var/log/messages какие-нибудь ошибки про w1 есть?
Вот, например:
Mar 30 09:08:56 wirenboard-ARAXKJYF user.info kernel: [1108616.194227] w1_master_driver w1_bus_master1: Family 82 for 82.8e840822c0c6.37 is not registered.
Евгений, Вы ответьте хоть что-то. Мне перегружать уже контроллер, чтобы все заработало или будете ещё что-то рекомендовать выполнить? Пробовал вытащить провод из разъема контроллера 1-wire, но ничего не изменилось. Я допускаю, что проблема программная в контроллере. Жду скорейших указаний!
-
Эта ошибка в логе была один раз или повторяется постоянно?
-
Посмотрите пожалуйста в разделе Devices в веб-интерфейсе в блоке Discrete I/O кнопку 5Vout. Она включена?
У нас, на одном объекте, тоже периодически подвисали 1W датчики. Решили проблему добавлением правила, которое периодически на пару секунд переключает питание датчиков на 3V и обратно. Уже почти год работает без зависаний. Метод может и кривоват, но позволил решить проблему не выезжая на объект.
Повторяется
Включена всегда
Понятно. Попробуйте перезагрузить контроллер и больше ничего не делать и не трогать.
Если поможет - это будет очень странно, будем разбираться.
Помогло. Работает теперь
Ок, напишите как снова проблема появится - будем дальше диагностировать.
Проблема опять дала о себе знать.
-
Откуда появились несуществующие адреса датчиков? Их несколько десятков точно.
-
Почему не могу увидеть в истории показания предыдущего дня?
Есть связь с ошибкой работы mqtt-serial из другого моего поста сегодня?
Добрый вечер, сказали что могут быть серьёзные помехи от силовых проводов или от устройств с сильным электромагнитным полем. Убрал подальше, перегрузил и стало лучше.