Сервис wb-mbgate не стартует

сервис не стартует. Статус service wb-mqtt-mbgate status выдает следующее:

wb-mqtt-mbgate.service - Wiren Board MQTT to Modbus TCP gateway
     Loaded: loaded (/lib/systemd/system/wb-mqtt-mbgate.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2024-08-04 02:36:11 MSK; 3s ago
    Process: 24698 ExecStartPre=/usr/bin/wb-mqtt-mbgate-confgen -c /etc/wb-mqtt-mbgate.conf (code=exited, status=0/SUCCESS)
    Process: 24706 ExecStart=/usr/bin/wb-mqtt-mbgate -c /etc/wb-mqtt-mbgate.conf (code=exited, status=6)
   Main PID: 24706 (code=exited, status=6)
        CPU: 903ms

Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbe2-i-opentherm_11/Heating Temperature taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbe2-i-opentherm_11/Hot Water Setpoint taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbe2-i-opentherm_11/Hot Water Temperature taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbe2-i-opentherm_11/Invalid Connection taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbe2-i-opentherm_11/Water Pressure taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[24698]: Topic wbrules/Rule debugging taken from old config
Aug 04 02:36:11 wirenboard-AHCQG5PO systemd[1]: Started Wiren Board MQTT to Modbus TCP gateway.
Aug 04 02:36:11 wirenboard-AHCQG5PO wb-mqtt-mbgate[24706]: ERROR: [mbgate] FATAL: Configuration error: All channels are disabled
Aug 04 02:36:11 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Main process exited, code=exited, status=6/NOTCONFIGURED
Aug 04 02:36:11 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Failed with result 'exit-code'.
~
~

WB8, релизная ветка, установлены модули openterm и spruthub. Все ПО обновлено до текущего.
Сбрасывал до /etc/wb-mqtt-mbgate.conf.default но при перезагрузки сервиса те же ошибки.
Шаблон openterm штатный, не измененный.
Как восстановить сервис?

В тестинг ветке вроде бы это пофиксили

Там комплексная проблема. Как только начинаешь трогать /etc/mosquitto/mosquitto.conf то сразу рушится /etc/wb-mqtt-mbgate.conf и на некоторых устройствах из wb-mqtt-serial появляются ошибки. Возврат к старому mosquitto.conf проблему не лечит.

Трогать приходится, если хочешь настроить безопасное подключение по сети к MQTT брокеру.

Переходить в тестинг не хотелось бы

да, я тоже столкнулся с этой проблемой. В тестинге её пофиксили, но вылезли новые. Если после оката mosquitto mbgate не завёлся, нужно закинуть дефолтный wb-mbgate конфиг

cat /etc/wb-mqtt-mbgate.conf.default > /etc/wb-mqtt-mbgate.conf

не спасает

странно, вот я сталкивался на днях с такой же ситуацией после переезда с wb6 на wb8 Wb-mqtt-mbgate не стартует, конфиг пустой, default конфиг отсутствует - #17 от пользователя Aleksandr.vlz
мне помогло

Повелся я на записи на портале и перешел на бету :frowning:
В итоге mosquitto стартует норм.
wb-mqtt-mbgate не хочет стартовать, даже с обнуленным конфигом
Обнуление:
cat /etc/wb-mqtt-mbgate.conf.default > /etc/wb-mqtt-mbgate.conf
Рестарт
systemctl restart wb-mqtt-mbgate
просмотр статуса
systemctl status wb-mqtt-mbgate
Выход статуса:

● wb-mqtt-mbgate.service - Wiren Board MQTT to Modbus TCP gateway
     Loaded: loaded (/lib/systemd/system/wb-mqtt-mbgate.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2024-08-04 11:45:40 MSK; 2min 37s ago
    Process: 23367 ExecStartPre=/usr/bin/wb-mqtt-mbgate-confgen -c /etc/wb-mqtt-mbgate.conf (code=exited, status=0/SUCCESS)
    Process: 23372 ExecStart=/usr/bin/wb-mqtt-mbgate -c /etc/wb-mqtt-mbgate.conf (code=exited, status=6)
   Main PID: 23372 (code=exited, status=6)
        CPU: 468ms

Aug 04 11:45:39 wirenboard-AHCQG5PO systemd[1]: Starting Wiren Board MQTT to Modbus TCP gateway...
Aug 04 11:45:40 wirenboard-AHCQG5PO systemd[1]: Started Wiren Board MQTT to Modbus TCP gateway.
Aug 04 11:45:40 wirenboard-AHCQG5PO wb-mqtt-mbgate[23372]: ERROR: [mbgate] FATAL: Configuration error: All channels are disabled
Aug 04 11:45:40 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Main process exited, code=exited, status=6/NOTCONFIGURED
Aug 04 11:45:40 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Failed with result 'exit-code'.

Смотрим журнал
journalctl -u wb-mqtt-mbgate.service

Служба стартовала с переконфигурации. Выход (только head)

-- Journal begins at Mon 2024-05-27 16:02:22 MSK, ends at Sun 2024-08-04 11:50:26 MSK. --
Jul 07 14:07:42 wirenboard-AHCQG5PO systemd[1]: Starting Wiren Board MQTT to Modbus TCP gateway...
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/wbrules/controls/Rule debugging/meta/type
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/wbrules/controls/Rule debugging/meta/order
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/wbrules/controls/Rule debugging/meta/readonly
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/buzzer/controls/enabled/meta/type
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/buzzer/controls/enabled/meta/order
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/buzzer/controls/enabled/meta/readonly
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/buzzer/controls/frequency/meta/type
Jul 07 14:07:44 wirenboard-AHCQG5PO wb-mqtt-mbgate-confgen[2090]: /devices/buzzer/controls/frequency/meta/max

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

приложен диагностический архив, доступен только сотрудникам поддержки
(792.6 KB)
Во вложении

Уже бета ветка, т.к. в описании таких же проблем на форуме поддержки, должно решать проблемы. Но результата это не принесло

Добрый день!
Вижу ошибку:

ERROR: [mbgate] FATAL: Configuration error: All channels are disabled

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

Только это сделал сам сервис, когда столкнулся с ошибкой.
У меня вручную ничего не отключено. Конфигурационный файл я взял стандартный.

В “стандартном” файле нет включенных каналов, ни одного. Про это и написано. Ну и, собственно, зачем запускать сервис в котором ничего сконфигурованного и который ничего не делает?

потому что сервис при старте пишет туда все, что нашел и он становится нужного вида

Если включено автозаполнение каналов - да. Но каналы добавляются с “disable”, включать их надо (если сервис будет использоваться).

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

Итак, контроллер 8.4. Релиз stable 2404. Остановил сервис, восстанавливаю дефолтный:

systemctl stop wb-mqtt-mbgate
cp /etc/wb-mqtt-mbgate.conf.default /etc/wb-mqtt-mbgate.conf

Проверяю что в конфиге действительно дефолтный:

cat /etc/wb-mqtt-mbgate.conf
{
 "debug": false,
 "modbus": {
  "host": "*",
  "port": 502
 },
 "mqtt": {
  "host": "/var/run/mosquitto/mosquitto.sock",
  "port": 0
 },
 "registers": {
  "remap_values": false,
  "discretes": [
   {
    "topic": "battery/Charging",
    "address": 16593,
    "unitId": 10,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "network/Ethernet 2 IP Online Status",
    "address": 30753,
    "unitId": 116,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "network/Ethernet IP Online Status",
    "address": 14289,
    "unitId": 189,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "network/GPRS IP Online Status",
    "address": 3864,
    "unitId": 169,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "network/Wi-Fi 2 IP Online Status",
    "address": 243,
    "unitId": 125,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "network/Wi-Fi IP Online Status",
    "address": 56373,
    "unitId": 219,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "power_status/working on battery",
    "address": 2676,
    "unitId": 187,
    "meta_type": "switch",
    "enabled": false
   }
  ],
  "coils": [
   {
    "topic": "buzzer/enabled",
    "address": 20694,
    "unitId": 32,
    "meta_type": "switch",
    "enabled": false
   },
   {
    "topic": "system/Reboot",
    "address": 33689,
    "unitId": 228,
    "meta_type": "pushbutton",
    "enabled": false
   },
   {
    "topic": "wbrules/Rule debugging",
    "address": 1003,
    "unitId": 198,
    "meta_type": "switch",
    "enabled": false
   }
  ],
  "inputs": [
   {
    "topic": "alarms/log",
    "address": 32917,
    "unitId": 223,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "battery/Current",
    "address": 46611,
    "unitId": 189,
    "meta_type": "value",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "battery/Percentage",
    "address": 21432,
    "unitId": 163,
    "meta_type": "value",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "battery/Voltage",
    "address": 12078,
    "unitId": 135,
    "meta_type": "voltage",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "hwmon/Board Temperature",
    "address": 48593,
    "unitId": 56,
    "meta_type": "temperature",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "hwmon/CPU Temperature",
    "address": 35167,
    "unitId": 218,
    "meta_type": "temperature",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "knx/data",
    "address": 51091,
    "unitId": 149,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Active Connections",
    "address": 47587,
    "unitId": 204,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Default Interface",
    "address": 6094,
    "unitId": 41,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Ethernet 2 IP",
    "address": 46248,
    "unitId": 141,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Ethernet IP",
    "address": 11028,
    "unitId": 228,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/GPRS IP",
    "address": 34730,
    "unitId": 27,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Internet Connection",
    "address": 33562,
    "unitId": 66,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Wi-Fi 2 IP",
    "address": 57510,
    "unitId": 117,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "network/Wi-Fi IP",
    "address": 56690,
    "unitId": 167,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "power_status/Vin",
    "address": 3162,
    "unitId": 226,
    "meta_type": "voltage",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Batch No",
    "address": 32965,
    "unitId": 229,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Current uptime",
    "address": 2973,
    "unitId": 3,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/DTS Version",
    "address": 35773,
    "unitId": 170,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/HW Revision",
    "address": 20592,
    "unitId": 40,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Manufacturing Date",
    "address": 63564,
    "unitId": 66,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Release name",
    "address": 29877,
    "unitId": 81,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Release suite",
    "address": 46549,
    "unitId": 92,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Short SN",
    "address": 54330,
    "unitId": 232,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "system/Temperature Grade",
    "address": 64841,
    "unitId": 101,
    "meta_type": "text",
    "enabled": false,
    "format": "varchar",
    "size": -1,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   }
  ],
  "holdings": [
   {
    "topic": "buzzer/frequency",
    "address": 2365,
    "unitId": 186,
    "meta_type": "range",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   },
   {
    "topic": "buzzer/volume",
    "address": 51099,
    "unitId": 218,
    "meta_type": "range",
    "enabled": false,
    "format": "signed",
    "size": 2,
    "max": 0,
    "scale": 1,
    "byteswap": false,
    "wordswap": false
   }
  ]
 }
}

Да, дефолтный.
Смотрю просто количество, вижу

cat /etc/wb-mqtt-mbgate.conf |wc -l
442

Запускаю сервис, смотрю:

cat /etc/wb-mqtt-mbgate.conf |wc -l
2109

соответственно в логах сервиса неожиданного не вижу.

У меня так же

cat /etc/wb-mqtt-mbgate.conf |wc -l
442

На всякий случай (только сейчас) сделал
a+w на файл wb-mqtt-mbgate.conf

ls -la /mnt/data/etc/wb-mqtt-mbgate.conf 
-rw-rw-rw- 1 root root 13345 Aug  9 12:41 /mnt/data/etc/wb-mqtt-mbgate.conf

Галка с “обновить адреса” после перезагрузки сервиса и всего контроллера так и не снимается (вручную можно снять, но кнопка Записать не активируется)

но статус сервиса поменялся. Если нет экспорта, то он таким и должен быть (как я понимаю. правильно?)

● wb-mqtt-mbgate.service - Wiren Board MQTT to Modbus TCP gateway
     Loaded: loaded (/lib/systemd/system/wb-mqtt-mbgate.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Fri 2024-08-09 12:42:14 MSK; 23min ago
    Process: 692870 ExecStartPre=/usr/bin/wb-mqtt-mbgate-confgen -c /etc/wb-mqtt-mbgate.conf (code=exited, status=0/S>
    Process: 692871 ExecStart=/usr/bin/wb-mqtt-mbgate -c /etc/wb-mqtt-mbgate.conf (code=exited, status=6)
   Main PID: 692871 (code=exited, status=6)
        CPU: 466ms

Aug 09 12:42:13 wirenboard-AHCQG5PO systemd[1]: Starting Wiren Board MQTT to Modbus TCP gateway...
Aug 09 12:42:14 wirenboard-AHCQG5PO systemd[1]: Started Wiren Board MQTT to Modbus TCP gateway.
Aug 09 12:42:14 wirenboard-AHCQG5PO wb-mqtt-mbgate[692871]: ERROR: [mbgate] FATAL: Configuration error: All channels >
Aug 09 12:42:14 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Main process exited, code=exited, status=6/NO>
Aug 09 12:42:14 wirenboard-AHCQG5PO systemd[1]: wb-mqtt-mbgate.service: Failed with result 'exit-code'.

В описании так и написано: “Опция будет сброшена при следующем запуске сервиса”
Нет запуска - нет очистки.

Если ничего не включено - сервис не запускается, про это в логе и написано.

Запуск по идее - перезапуск сервиса и/или контроллера целиком. Так я это и делал. Или имеется ввиду?