Перестала работать отправка SMS

Добрый вечер! Не вполне понятно, после чего, но сегодня фактически перестала работать отправка SMS. В сетевых соединениях модем виден, регистрация в сети есть, тип сети и силу сигнала показывает. Из консоли отправка по примеру ниже работает

 mmcli -m wbc --messaging-create-sms="text='Test',number='+79999999999'"
Successfully created new SMS: /org/freedesktop/ModemManager1/SMS/10
# mmcli -m wbc -s 10 --send

При запуске

systemctl status smsd

получаем

Unit smsd.service could not be found.

Куда и почему он потерялся - не ясно. Еще утром из правил SMS уходили

Запуск mmcli -L дает:
/org/freedesktop/ModemManager1/Modem/0 [INCORPORATED] A7602E-H

Проблема с отправкой SMS решена. Но не вполне ясно, почему предлагаемый способ диагностики сервиса дает ошибку отсутствия модуля.

Добрый день.

А зачем smsd если судя по выводу - модемом управляет ModemManager?

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

Да, это, похоже, снова история, когда документация расходится с реальностью, увы.

Начну с того, что поиск по wiki по простому контексту на первом экране не предлагает прямой статьи. А статей я нашел минимум две: 1, 2, причем не вполне очевидно, какая их них относится к актуальному модулю WBC. Причем в статье 2, на которую идет ссылка со страницы модуля, по факту нет информации для диагностики установщиком.

Ну, а рекомендацию с проверкой systemctl дал Ваш бот

Реально нужно где-то собрать актуальную информацию, чтобы по шагам можно было самостоятельно диагностику провести, причем - с объяснением того, что и зачем делаем.

Также несколько удивляет наличие warning’ов (couldn’t parse, couldn’t load) ModemManager по “родному” модему:

ModemManager_20260324T065338.log (7,8 КБ)

P.S. Сам вопрос решен с отправкой SMS - перемудрили немного с логикой правила соответствующего.

Да, словосочетание используется в нескольких статьях. Тут вряд ли что-то можно исправить, поиск так и работает.

Да, в самом начале статьи описывается для какого релиза она применима.
То есть модем, например WBC-4G v.2 может стоять в контроллерах 6.x, для которых есть релизы (и могут использоваться) еще на Stretch.
Сходу не могу придумать как сделать лучше.
Разве что в документации модуля несколько ссылок.

Так вот же: Настройка 4G-модема в контроллере Wiren Board на Debian Bullseye — Wiren Board

Вот “NW ACT” и “NW DEACT” пожалуй интересно, проверю.
Навскидку - это в mm-modem-helpers.c
Но если для обработки нужно патчить MM - скорее не будет реализовано, разве что mainline пакет/
Ну и в SIM не указаны номера, которые хочет вытащить MM.

В том-то и дело, что “на выходе” получается, что наиболее очевидным путем через поисковый запрос на wiki ничего путного - не найти. А это уже саму wiki обесценивает, увы.

Есть предложение выделять эту информацию как-то. Признаюсь честно, я ее пропустил.

Увы, приходится вернуться к проблеме. Из консоли отправка работает, а вот из правила такой фрагмент кода

var myMessage='Отправлено совсем очень затянутое и катастрофически довольно таки длинное тестовое сообщение SMS в длинным текстом и номером на номер ' + smsNumber;
Notify.sendSMS(smsNumber, myMessage);
log(myMessage);

не сопровождается получением тем же абонентом SMS, при этом в логе только приложенное. Вчера то же самое было, решилось через reboot контроллера, что, мягко говоря - не айс. В сетевых соединениях у модема SIM1 имя сети видно, Megafon, LTE, 51%. От состояния передачи данных модемом (подключено/отключено) не зависит

log_20260329T152022.log (25,0 КБ)

Файл с состоянием модема приложен. Перезапуск его по питанию через systemctl stop wb-gsm тоже не влияет, как и пересохранение правила. А вот service wb-rules restart помогает…

log_20260329T153824.log (7,2 КБ)

modemstate.log (2,1 КБ)

Я тут вижу перезапуск модема при отправке

2026-03-29T12:14:12.930Z [NetworkManager] Exit.
2026-03-29T12:14:12.929Z [NetworkManager] nm-ppp-plugin: cleaning up
2026-03-29T12:14:12.928Z [NetworkManager] nm-ppp-plugin: status 1 / phase 'dead'
2026-03-29T12:14:12.874Z [ModemManager] <info>  [modem1] state changed (connected -> disconnecting)
2026-03-29T12:14:12.865Z [dbus] [system] Rejected send message, 0 matched rules; type="error", sender=":1.8" (uid=0 pid=518 comm="/usr/sbin/NetworkManager --no-daemon ") interface="(unset)" member="(unset)" error name="org.freedesktop.DBus.Error.UnknownMethod" requested_reply="0" destination=":1.746" (uid=0 pid=164549 comm="/usr/sbin/pppd nodetach lock nodefaultroute noipv6")
2026-03-29T12:14:12.865Z [dbus] [system] Rejected send message, 0 matched rules; type="error", sender=":1.8" (uid=0 pid=518 comm="/usr/sbin/NetworkManager --no-daemon ") interface="(unset)" member="(unset)" error name="org.freedesktop.DBus.Error.UnknownMethod" requested_reply="0" destination=":1.746" (uid=0 pid=164549 comm="/usr/sbin/pppd nodetach lock nodefaultroute noipv6")
2026-03-29T12:14:12.860Z [avahi-daemon] Withdrawing workstation service for ppp0.
2026-03-29T12:14:12.860Z [dbus] [system] Rejected send message, 0 matched rules; type="error", sender=":1.8" (uid=0 pid=518 comm="/usr/sbin/NetworkManager --no-daemon ") interface="(unset)" member="(unset)" error name="org.freedesktop.DBus.Error.UnknownMethod" requested_reply="0" destination=":1.746" (uid=0 pid=164549 comm="/usr/sbin/pppd nodetach lock nodefaultroute noipv6")
2026-03-29T12:14:12.859Z [NetworkManager] Connection terminated.
2026-03-29T12:14:12.859Z [NetworkManager] Connection terminated.
2026-03-29T12:14:12.853Z [NetworkManager] nm-ppp-plugin: status 11 / phase 'disconnect'
2026-03-29T12:14:12.848Z [NetworkManager] <info>  [1774786452.8478] device (ppp0): state change: disconnected -> unmanaged (reason 'connection-assumed', sys-iface-state: 'external')
2026-03-29T12:14:12.848Z [dbus] [system] Rejected send message, 0 matched rules; type="error", sender=":1.8" (uid=0 pid=518 comm="/usr/sbin/NetworkManager --no-daemon ") interface="(unset)" member="(unset)" error name="org.freedesktop.DBus.Error.UnknownMethod" requested_reply="0" destination=":1.746" (uid=0 pid=164549 comm="/usr/sbin/pppd nodetach lock nodefaultroute noipv6")
2026-03-29T12:14:12.848Z [NetworkManager] nm-ppp-plugin: status 5 / phase 'establish'
2026-03-29T12:14:12.847Z [NetworkManager] Sent 1184037 bytes, received 860622 bytes.
2026-03-29T12:14:12.847Z [NetworkManager] Connect time 935.3 minutes.
2026-03-29T12:14:12.847Z [NetworkManager] nm-ppp-plugin: status 8 / phase 'network'
2026-03-29T12:14:12.847Z [NetworkManager] Terminating on signal 15

2026-03-29T12:14:12.846Z [NetworkManager] Connect t2026-03-29T12:14:12.846Z [NetworkManager] Sent 1184037 bytes, received 860622 bytes.ime 935.3 minutes.
2026-03-29T12:14:12.846Z [NetworkManager] Terminating on signal 15
2026-03-29T12:14:12.842Z [NetworkManager] nm-ppp-plugin: status 10 / phase 'terminate'
2026-03-29T12:14:12.841Z [NetworkManager] <info>  [1774786452.8408] audit: op="connection-activate" uuid="5d4297ba-c319-4c05-a153-17cb42e6e196" name="wb-gsm-sim1" pid=738867 uid=0 result="success"
2026-03-29T12:14:12.841Z [NetworkManager] <info>  [1774786452.8405] device (ttyUSB1): disconnecting for new activation request.
2026-03-29T12:14:12.834Z [init] Started Network Manager Script Dispatcher Service.
2026-03-29T12:14:12.833Z [NetworkManager] <info>  [1774786452.8325] audit: op="connection-update" uuid="5d4297ba-c319-4c05-a153-17cb42e6e196" name="wb-gsm-sim1" args="connection.timestamp,connection.autoconnect" pid=738867 uid=0 result="success"
2026-03-29T12:14:12.831Z [dbus] [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
2026-03-29T12:14:12.805Z [init] Starting Network Manager Script Dispatcher Service...
2026-03-29T12:14:12.777Z [dbus] [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.8' (uid=0 pid=518 comm="/usr/sbin/NetworkManager --no-daemon ")
2026-03-29T12:14:12.775Z [NetworkManager] <info>  [1774786452.7749] audit: op="connection-deactivate" uuid="5d4297ba-c319-4c05-a153-17cb42e6e196" name="wb-gsm-sim1" pid=738867 uid=0 result="success"
2026-03-29T12:14:12.769Z [NetworkManager] <info>  [1774786452.7691] device (ttyUSB1): state change: activated -> deactivating (reason 'user-requested', sys-iface-state: 'managed')
2026-03-29T12:14:12.566Z [init] wb-connection-manager.service: Consumed 21min 52.075s CPU time.

лог приложенный зачем-то идет вверх, пока понял раза три пересматривал.
Выглядит как WBC-4G v.2: Errata — Wiren Board
Обновите прошивку модема.

По ссылке не вполне понятно, куда именно нужно загрузить прошивку (п.4)

В модем.

В какой каталог?

Попытка вызова

fbfdownloader_arm7l -b BinFile.bin

дает ошибку “Command not found”. Утилиты по умолчанию в контроллере нет или?

В модем или, таки, в контроллер сначала?

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

Разобраться с обновлением кое-как удалось. Но есть 2 вопроса:

  1. В пункте 4 инструкции не вполне понятно, что хотели показать. Почему нет явного указания на то, куда нужно скопировать прошивку?
  2. В пункте 6 речь идет о файле BinFile.bin, хотя ранее везде указывалось полное имя файла с прошивкой, включающее версию. И на скриншоте, кстати, тоже длинное имя. Зачем людей путать?

Печаль в том, что обновление не помогло. FW теперь - A50C4B11A7600M7. Только SMS через какое-то время все равно перестают уходить. При этом из консоли все отправляется. Лечится - как и ранее, через service wb-rules restart. Что, собственно, заставляет усомниться, что проблема - в модеме, а не в сервисе wb-rules.

Пришлите диагностический архив пожалуйста. Ну и - после того как “перестают уходить” - в каком состоянии модем? То есть вывод mmcli -m any - а именно состояние регистрации, state.

Собрано два архива. Один - после неудачной отправки SMS из правила. Второй - сразу после успешной отправки из консоли. Между ними получено состояние модема - connected

приложен диагностический архив, доступен только сотрудникам поддержки
(440,3 КБ)

приложен диагностический архив, доступен только сотрудникам поддержки
(440,6 КБ)

Что-то у меня подозрение вызвал порт enx020c29a39b6d
Но это USB0

[   37.005195] rndis_host 1-1:1.0 enx020c29a39b6d: renamed from usb0

Предположу что имеется в виду

Mar 31 14:44:15 wirenboard-AXCFBMYW wb-rules[2120]: INFO: [rule info] Отправлено SMS на номер +792xxxxxxxx

Ну, что я вижу. Судя по отсутствию ошибок в журналах - отработала функция отправки
Ну и перед ней _checkUse4gModem() - по записям в логе

Mar 31 14:44:15 wirenboard-AXCFBMYW wb-gsm[635417]: main: Called from pid 635326 (sh)
Mar 31 14:44:15 wirenboard-AXCFBMYW wb-gsm[635428]: guess_of_node: Got of_gsm_node: /soc/usb@5310000/wbc-modem@1
Mar 31 14:44:15 wirenboard-AXCFBMYW wb-gsm[635451]: gsm_check_present: Modem is enabled in DT (/soc/usb@5310000/wbc-modem@1)
Mar 31 14:44:15 wirenboard-AXCFBMYW wb-gsm[635480]: should_enable: Should enable GSM modem

При этом каллбэк нулевой. Были б записи с содержимым capturedOutput, capturedErrorOutput.
У меня подобное не воспроизводится, хоть и пробовал - нужно:
Включить debug для wb-rules (по крайней мере будет видно что тут
вызывается)
Еще, дополнительно - включить debug для ModemManager. Это уж точно позволит увидеть что ему приходит и как обрабатывается.
Ну и - диагностический архив после неудачной отправки.

Ок. Как включить debug этих двух сервисов? И, главное, как его потом выключить?

debug wb-rules включается переключателем в web-интерфейсе.


Ну и для MM так: Настройка 4G-модема в контроллере Wiren Board на Debian Bullseye — Wiren Board