Отваливается GSM WBC-3G модем

Добрый день,

Установил в контроллер v 6.7.2 ваш GSM WBC-3G модем (ниже листинг dmesg)
Для отправки смс об авариях использую gammu-smsd

По факту еще ни разу не смог получить реального смс об аварии ((
Хотя в тесте все отрабатывает но позже (пока непонятно через сколько времени) прописанный руками девайс в конфиге отваливается.
/etc/gammu-smsdrc:
port = /dev/ttyACM0
connection = at115200

лог ошибки:
Wed 2022/06/22 10:26:27 gammu-smsd[399]: Error at init connection: Ошибка открытия устройства: его не существует. (DEVICENOTEXIST[4])
Wed 2022/06/22 10:26:27 gammu-smsd[399]: Going to 30 seconds sleep because of too many connection errors
меняю последнюю цифра в имени девайса, рестартую демон начинает работать.

Вот текущие устройства модема
dmesg:
[756346.466445] usb 2-1.3: Product: SIMCOM_PRODUCT
[756346.471095] usb 2-1.3: Manufacturer: SIMCOM_VENDOR
[756346.475996] usb 2-1.3: SerialNumber: 004999010640000
[756346.568106] cdc_acm 2-1.3:1.0: ttyACM1: USB ACM device
[756346.629881] cdc_acm 2-1.3:1.2: ttyACM2: USB ACM device
[756346.663090] cdc_acm 2-1.3:1.4: ttyACM3: USB ACM device
[756346.680994] cdc_acm 2-1.3:1.6: ttyACM4: USB ACM device
[756346.704405] cdc_acm 2-1.3:1.8: ttyACM5: USB ACM device
[756346.722911] cdc_acm 2-1.3:1.10: ttyACM6: USB ACM device
[756346.749623] cdc_acm 2-1.3:1.12: ttyACM7: USB ACM device

перед этим
[756339.326401] usb 2-1.3: USB disconnect, device number 13
[756341.667809] usb 2-1.3: new high-speed USB device number 15 using ci_hdrc
[756341.818943] usb 2-1.3: New USB device found, idVendor=8087, idProduct=07ed
[756341.826028] usb 2-1.3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[756342.398382] usb 2-1.3: USB disconnect, device number 15
[756346.277773] usb 2-1.3: new high-speed USB device number 16 using ci_hdrc
[756346.451683] usb 2-1.3: New USB device found, idVendor=1e0e, idProduct=0020
[756346.458876] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3

Подскажите как решить проблему ?

Добрый день.

А чем (когда) включается модем? То есть в какой момент выполняется команда wb-gsm restart_if_broken?
Из вывода dmesg видно что модем выключен. А ранее ничего не было?

получается команды на включение никакой не было. Залипал 0 модем я в конфиге ставил АСМ1 и все начинало работать. Потом залипает 1 я ставлю АСМ0 и так по кругу ))

сейчас после этой команды вижу в dmesg появился ACM0 и исчез ACM1 …

[3475375.484420] usb 2-1.3: Product: SIMCOM_PRODUCT
[3475375.489083] usb 2-1.3: Manufacturer: SIMCOM_VENDOR
[3475375.494144] usb 2-1.3: SerialNumber: 004999010640000
[3475375.568062] cdc_acm 2-1.3:1.0: ttyACM0: USB ACM device
[3475375.597631] cdc_acm 2-1.3:1.2: ttyACM2: USB ACM device
[3475375.619841] cdc_acm 2-1.3:1.4: ttyACM3: USB ACM device
[3475375.683409] cdc_acm 2-1.3:1.6: ttyACM4: USB ACM device
[3475375.712155] cdc_acm 2-1.3:1.8: ttyACM5: USB ACM device
[3475375.732555] cdc_acm 2-1.3:1.10: ttyACM6: USB ACM device
[3475375.749630] cdc_acm 2-1.3:1.12: ttyACM7: USB ACM device

что делать непонятно …

То есть модем не был включен, получается? Или он используется для чего-то еще и включается при подъеме сети, например?
А использовать /dev/ttyGSM для работы gammu не пробовали?

из документации я так и не понял как делятся между собой все восемь устройств которые видны в ОС …
Получается что залипает 1 модем я ставлю в конфиг другой и все взлетает. Перегружать модем не нужно … только сервис перегружаю через systemctl

У меня еще была мысль о том что конфликтуют gammu и gammu-smsd поэтому я в их конфигах в одном прописал ACM0 , в другом ACM1. А вот в wb-gsm скрипте указан только 1 модем …

с ttyGSM сначала не разобраслся с udev и думал что проще будет указать конкретное имя устройства но жизнь показала что как то не очень все рабтает в таком виде ((

Понятие “залипает” не совсем корректно, как по мне. Посмотрите, занят ли порт? Можно ли к нему подключиться и отправить at-команду?

Ну как бы “залипает” это наверное действительно не точно. В логах gammu-smsd вообще говорится что устройства нет. Dmesg эту идею подтерждает…
Wed 2022/06/22 17:07:13 gammu-smsd[7792]: Error at init connection: Ошибка открытия устройства: его не существует. (DEVICENOTEXIST[4])
Wed 2022/06/22 17:07:13 gammu-smsd[7792]: Going to 30 seconds sleep because of too many connection errors

подскажите пожалуйста через какую утилиту можно дать AT команду на модем и какую ? )

миником тоже ругается на этот девайс (
minicom -D /dev/ttyACM1 -b 115200 -8 -a off
minicom: cannot open /dev/ttyACM1: No such file or directory

P.S: а /dev/ttyGSM ссылается на устройство как я понимаю не связанное с модемом …

ls -al /dev/ttyGSM
lrwxrwxrwx 1 root root 7 May 13 11:08 /dev/ttyGSM → ttymxc7

Так, то есть модем на этот момент выключен?
Интересно. А ядро какое стоит (ну и релиз на контроллере)

https://wirenboard.com/wiki/GSM/GPRS#Подключение_в_linux

image

Переключил на /dev/ttyGSM проверил в minicom. Gammu-smsd смог отправить тестовое сообщение понаблюдаю недельку …

Недельки ждать не пришлось. Всё зависло через 1ч. Наверное нужно было упомянуть что модем используется и для аварийного инета и для смс об авариях. Похоже gsm мешает gprs ((
Пробовал разнести их по ACM0 и ACM1 результат отрицательный - сейчас не работает ни то ни то ((
Можно как-н перегрузить модем не прергружая контроллер ?

Да, одновременно через один порт работать не будет.

А к портам (ttyGSM, ACM0, ACM1) подключиться с помощью minicom можно?

wg-gsm off

выключит его, то есть сначала попытается отправить команду на выключение, затем по питанию.

Получилось ли решить проблему?