Добрый день.
По какой-то причине перестали отвечать устройства все устройства GPIO, при этом никаких аппаратных и софтверных работ долгое время не производилось. До этого стабильно работало около полугода. Переключение свитчей в админке Wirenboard, а так же через MQTT не приводит к изменению состояния устройств. Всего на шине три устройства, все перестали реагировать.
Как можно диагностировать проблему?
Добрый день.
Такой баг был в ядре 4.9: errata
проверьте пожалуйста - попадает ли по описанию. Способ проверить еще такой: Выключить контроллер и снять на 10-15 секунд питание с него полностью, отключать кнопкой бесполезно.
Но лучше в любом случае обновиться. Если версия ПО дорелизная, то инструкция тут:
https://wirenboard.com/wiki/Wiren_Board_Firmware_Update#Релизы_ПО
Добрый день.
К сожалению, не помогли: обновление полное обезточивание на 30 секунд, физическое переподключение боковых устройств.
Не вполне понимаю, где посмотреть, вроде не старое:
Welcome to Wiren Board 6.7.2 (s/n **AXNNIM4J**), release **wb-2201** (as **stable**)
Linux wirenboard-AXNNIM4J 5.10.35-wb105 #1 Wed Feb 2 21:09:31 UTC 2022 armv7l GNU/Linux
Релиз свежий стабильный. Так, а пришлите пожалуйста диагностический архив ну и посморите/покажите статус сервиса wb-mqtt-gpio
О, есть какая-то фатальная ошибка в логах, надеюсь это и есть причина и получится исправить проблему программно.
diag_output_AXNNIM4J_2022-03-16-08.zip (157.0 KB)
wb-mqtt-gpio_20220315T110621.log (75.6 KB)
Есть строчка:
ERROR: [gpio] FATAL: duplicate GPIO offset in config: '0' at chip '/dev/gpiochip6' defined as 'hall-down'. It is already defined as 'EXT2_IN1'. To override set similar MQTT id (name). @ config.cpp:47
в которой один канал (EXT2_IN1) дважды определен, причем второй раз с другим именем. А именно: “hall-down”.
При этом в пользовательском конфиге - используется hall-down а в системном стандартное. Приведите пользовательский конфиг к стандартному имени (можно очистить).
Очистка помогла, устройства ожили.
Только я не понял, что такое пользовательский и системный конфиги. Знаю только про wb-mqtt-gpio.conf
Спасибо!
Сситемный лежит тут: /var/lib/wb-mqtt-gpio/conf.d/system.conf
“действующий” собирается из обоих.
если пользовательский не добавляет а переопределяет существующий GPIO - надо его переопределять с тем же именем.