Wb 6.9.1 + WBIO-DO-R1G-16: не получается задействовать пины платы расширения

Добрый день!

Используем Wiren Board 6.9.1 с прошивкой wb-2204 совместно с модулями WBIO-DO-R1G-16 и WB-MR3-LV.

Не работают gpio на WBIO-DO-R1G-16: ни с вебинтерфейса, ни запросом через mqtt-топик не удается задействовать оборудование, подключенное к пинам.

Системный журнал содержал ошибку:

ERROR: [gpio] FATAL: Failed to parse JSON /etc/wb-mqtt-gpio.conf:* Line 1, Column 1

Проверив файл /mnt/data/etc/wb-mqtt-gpio.conf (на этот файл ссылается /etc/wb-mqtt-gpio.conf) обнаружили, что он пустой.

Почитав обсуждение, проверили память на Wiren Board 6.9.1:

df -h    
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       976M  877M   33M  97% /
devtmpfs        493M     0  493M   0% /dev
tmpfs           502M     0  502M   0% /dev/shm
tmpfs           502M  508K  501M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           502M     0  502M   0% /sys/fs/cgroup
/dev/mmcblk0p6  4.9G  3.5G  1.2G  75% /mnt/data
tmpfs           101M     0  101M   0% /run/user/0

Заполнили файл /mnt/data/etc/wb-mqtt-gpio.conf содержимым дефолтного файла wb-mqtt-gpio.conf.default.

{
    "device_name" : "Relays & FETs",

    "channels" : [
    ]
}

Ошибка из системного журнала пропала, однако gpio все так же не работает ( формирование запроса через mqtt-explorer в mqtt топик /devices/wb-gpio/controls/EXT1_K8/on к примеру не приводит к ожидаемому результату, как было раньше).

Насколько известно, при конфигурировании Wiren Board не менялся файл wb-mqtt-gpio.conf.
На рабочем контроллере Wiren Board 7 есть файл wb-mqtt-gpio.conf. Файл также не менялся однако содержит структуру:

root@wirenboard:~# cat /etc/wb-mqtt-gpio.conf
{
  "channels" : 
  [
    {
      "load_previous_state" : false,
      "name" : "EXT1_K1"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K2"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K3"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K4"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K5"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K6"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K7"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K8"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K9"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K10"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K11"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K12"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K13"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K14"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K15"
    },
    {
      "load_previous_state" : false,
      "name" : "EXT1_K16"
    }
  ],
  "device_name" : "Relays & FETs"

Пробовали добавить один канал из представленного списка, получали сообщение об ошибки нотации файла конфигурации (отсутствовали необходимые поля).

В это же время была проблема с WB-MR3-LV. Питание на него подаётся c wirenboard, однако на линии питания WB-MR3-LV напряжение составляло порядка 0.1 - 0.8 вольт. И в вэб интерфейсе каналы модуля находились в состоянии ошибки.
Ошибка пропала после заполнения файла /mnt/data/etc/wb-mqtt-gpio.conf дефолтным wb-mqtt-gpio.conf.default а также передёргивания питания.

Прилагаем вывод в системный журнал последнего запуска с нашими экспериментами:

log_20240913T184708.log (103.2 KB)

Добрый день,
Недавно подобную проблему решили выпустив фикс в новом билде прошивки.
Прошу обновиться на крайний релиз.

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

Спасибо, сегодня попробуем.

Решили проблему таким образом:
Файлы wb-hardware.conf и wb-mqtt-gpio.conf были полностью затёрты → заполнили их дефолтной структурой отсюда
и отсюда

Далее в веб интерфейсе сконфигурировали нашу систему (конфигурировали только файл wb-hardware.conf ) → всё заработало как надо.

Предположу, что как раз проблему внезапного затирания конфигов решит обновление до крайнего релиза.

Добрый день!
Замечательно, я рад, что у вас всё получилось.