Modem-bullseye: различия между версиями
Brainroot (обсуждение | вклад) |
Matveevrj (обсуждение | вклад) |
||
(не показано 28 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE: Настройка 4G-модема в контроллере Wiren Board на Debian Bullseye }} | {{DISPLAYTITLE: Настройка 4G-модема в контроллере Wiren Board на Debian Bullseye }} | ||
== Общая информация == | == Общая информация == | ||
{{note|info|Статья описывает настройку 4G-модемов в контроллерах Wiren Board 6...7, на которых установлен релиз [[wb-2304]] и новее. Для настройки модема в релизе [[wb-2207]] и старее, а также модемов 2G/3G/NB- | {{note|info|Статья описывает настройку 4G-модемов в контроллерах Wiren Board 6...7, на которых установлен релиз [[wb-2304]] и новее. Для настройки модема в релизе [[wb-2207]] и старее, а также модемов 2G/3G/NB-IOT — используйте эту [[Modem-stretch|инструкцию]].}} | ||
В контроллеры Wiren Board могут быть установлены 2G/3G/4G(LTE)/NB-IOT модемы — зависит от комплектации. | |||
В Debian Bullseye для управления 4G-модемами используются сервисы [https://www.freedesktop.org/software/ModemManager/api/latest ModemManager] и [https://www.networkmanager.dev/docs/ NetworkManager]. Остальные модемы управляются аналогично тому, как это [[Modem-stretch | делалось в Debian Stretch]]. | |||
'''Описанное ниже относится к работе с использованием ModemManager.''' | |||
С помощью модемов можно: | |||
* подключаться к интернету по [[#Интернет через PPP|протоколу PPP]], | |||
* [[#Работа с sms и ussd | отправлять и принимать SMS]]. | |||
Модемы подключаются к процессору по uart и usb, исключение — модемы 2G. | |||
Подробнее о подключении модемов и низкоуровневом взаимодействии с ними можно почитать в разделе [[#Низкоуровневая работа по uart|Низкоуровневая работа по uart]]. | |||
Управление питанием и переключением активных sim-карт (если их две) производится с помощью gpio, процесс описан в разделе [[#Переключение активной sim-карты | Переключение активной sim-карты]]. | |||
Включение и отключение модема рекомендуем делать с помощью сервиса [[#Сервис wb-gsm|wb-gsm]]. | |||
== Включение и начало работы == | == Включение и начало работы == | ||
Строка 34: | Строка 47: | ||
Контроллер имеет базу APN сотовых операторов. NetworkManager сам определит нужный APN в зависимости от вставленной sim-карты. | Контроллер имеет базу APN сотовых операторов. NetworkManager сам определит нужный APN в зависимости от вставленной sim-карты. | ||
Настройки соединений можно изменить либо в | Настройки соединений можно изменить либо в web-интерфейсе конфигурирования контроллера, либо в консоли утилитой [https://networkmanager.dev/docs/api/latest/nmcli.html nmcli]. | ||
Настроенное соединение можно активировать из | Настроенное соединение можно активировать из web-конфигуратора или из консоли утилитой nmcli. Для того чтобы соединение автоматически активировалось при включении контроллера, надо установить галочку <code>Подключаться автоматически</code>. | ||
== Работа с | == Работа с sms == | ||
Для отправки sms-сообщения надо: | Для отправки sms-сообщения надо: | ||
# Cоздать его с использованием параметра <code>--messaging-create-sms</code>. mmcli вернёт идентификационный номер sms. | # Cоздать его с использованием параметра <code>--messaging-create-sms</code>. mmcli вернёт идентификационный номер sms. | ||
# Использовать полученный идентификационный номер для отправки командой <code>--send</code>. | # Использовать полученный идентификационный номер для отправки командой <code>--send</code>. | ||
<syntaxhighlight lang="console"> | |||
# mmcli -m | root@wirenboard-APT6KWYK:~# mmcli -m 1 --messaging-create-sms="text='Test',number='+79999999999'" | ||
Successfully created new SMS: /org/freedesktop/ModemManager1/SMS/10 | Successfully created new SMS: /org/freedesktop/ModemManager1/SMS/10 | ||
# mmcli -m | root@wirenboard-APT6KWYK:~# mmcli -m 1 -s 10 --send | ||
successfully sent the SMS | successfully sent the SMS | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== SMS-уведомления === | |||
Отправка sms-уведомлений об изменении состояния какого-либо устройства реализована в ПО Wiren Board с помощью сервиса уведомлений. Также можно отправлять SMS из движка правил wb-rules, вызывая соответствующую функцию. Подробнее в статье «[[Notification_module#Настройка модуля уведомлений |Модуль уведомлений]]». | |||
== | == Получение информации о модеме == | ||
В контроллерах, начиная с 2019 года, некоторая информация о модеме заносится в память. Получить её можно с помощью чтения файлов в директории <code>/proc/device-tree/wirenboard/gsm/</code>. | |||
В контроллерах | |||
В контроллерах версии 6.7 модем устанавливается модулем расширения. | В контроллерах версии 6.7 модем устанавливается модулем расширения. | ||
Строка 90: | Строка 94: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Image: | [[Image:mmcli-info.png|500px|Информация о модеме от ModemManager]] | ||
== Сервис wb-gsm == | == Сервис wb-gsm == | ||
Строка 113: | Строка 112: | ||
Для переключения sim-карты используется <code>mmcli</code> с параметром <code>--set-primary-sim-slot</code>. Например: | Для переключения sim-карты используется <code>mmcli</code> с параметром <code>--set-primary-sim-slot</code>. Например: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
# mmcli -m | root@wirenboard-APT6KWYK:/opt# mmcli -m any --set-primary-sim-slot=2 | ||
successfully requested primary SIM switch in modem | successfully requested primary SIM switch in modem | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 127: | Строка 126: | ||
Если необходимо отправлять команды при активном ModemManager, его надо перезапустить с параметром <code>--debug</code> и использовать mmcli для отправки команд: | Если необходимо отправлять команды при активном ModemManager, его надо перезапустить с параметром <code>--debug</code> и использовать mmcli для отправки команд: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
# mmcli -m | root@wirenboard-APT6KWYK:~# mmcli -m 0 --command=AT+CGMM | ||
response: ''A7600E-HNVW' | response: ''A7600E-HNVW' | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 189: | Строка 135: | ||
!Модель||Режимы сети||краткое описание||hardware design||AT-команды | !Модель||Режимы сети||краткое описание||hardware design||AT-команды | ||
|- | |- | ||
|SIM800||2G||[ | |SIM800||2G||[http://www.mt-system.ru/sites/default/files/documents/sim800_spec_20140423.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim800_hardware_design_v1.10.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim800_series_at_command_manual_v1.12.pdf pdf] | ||
|- | |- | ||
|SIM5300E||2G/3G||[ | |SIM5300E||2G/3G||[http://www.mt-system.ru/sites/default/files/documents/sim5300e_spec_v1611_rus_0.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim5300e_hardware_design_v1.09.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim5300e_at_command_manual_v1.01.pdf pdf] | ||
|- | |- | ||
|SIM7000E||2G/NB-IOT||[ | |SIM7000E||2G/NB-IOT||[http://www.mt-system.ru/sites/default/files/documents/sim7000e_spec_v1706_rus.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim7000_hardware_design_v1.07.pdf pdf]||[http://www.mt-system.ru/sites/default/files/documents/sim7000_series_at_command_manual_v1.06.pdf pdf] | ||
|- | |- | ||
|7600E||2G/3G/4G | |7600E||2G/3G/4G | ||
|colspan="3"| [[WBC-4G#Документация|WBC-4G]] | |colspan="3"| [[WBC-4G#Документация|WBC-4G]] | ||
|} | |} | ||
Версия 16:02, 10 мая 2023
Общая информация
Статья описывает настройку 4G-модемов в контроллерах Wiren Board 6...7, на которых установлен релиз wb-2304 и новее. Для настройки модема в релизе wb-2207 и старее, а также модемов 2G/3G/NB-IOT — используйте эту инструкцию.
В контроллеры Wiren Board могут быть установлены 2G/3G/4G(LTE)/NB-IOT модемы — зависит от комплектации.
В Debian Bullseye для управления 4G-модемами используются сервисы ModemManager и NetworkManager. Остальные модемы управляются аналогично тому, как это делалось в Debian Stretch.
Описанное ниже относится к работе с использованием ModemManager.
С помощью модемов можно:
- подключаться к интернету по протоколу PPP,
- отправлять и принимать SMS.
Модемы подключаются к процессору по uart и usb, исключение — модемы 2G. Подробнее о подключении модемов и низкоуровневом взаимодействии с ними можно почитать в разделе Низкоуровневая работа по uart.
Управление питанием и переключением активных sim-карт (если их две) производится с помощью gpio, процесс описан в разделе Переключение активной sim-карты.
Включение и отключение модема рекомендуем делать с помощью сервиса wb-gsm.
Включение и начало работы
Чтобы начать работу с модемом, нужно:
- Подключить антенну.
- Вставить sim-карту.
- Добавить модем в конфигурацию контроллера:
- В веб-интерфейсе перейдите в раздел Настройки → Конфигурационные файлы → Модули расширения и порты, выберите Слот модема.
- В раскрывающемся списке Тип модуля выберите тип установленного модуля.
- Нажмите кнопку Сохранить. Контроллер включит нужные для работы модема порты.
Для удаления модуля выберите тип Не установлен.
После конфигурирования модем включится автоматически и можно переходить к настройке подключения к оператору связи.
Интернет через PPP
ModemManager и NetworkManager позволяют организовать выход в Интернет через PPP.
После настройки модема в контроллере создаются два соединения NetworkManager'а:
wb-gsm-sim1
— параметры соединения при использовании sim-карты в первом слоте;wb-gsm-sim2
— во втором слоте.
Контроллер имеет базу APN сотовых операторов. NetworkManager сам определит нужный APN в зависимости от вставленной sim-карты.
Настройки соединений можно изменить либо в web-интерфейсе конфигурирования контроллера, либо в консоли утилитой nmcli.
Настроенное соединение можно активировать из web-конфигуратора или из консоли утилитой nmcli. Для того чтобы соединение автоматически активировалось при включении контроллера, надо установить галочку Подключаться автоматически
.
Работа с sms
Для отправки sms-сообщения надо:
- Cоздать его с использованием параметра
--messaging-create-sms
. mmcli вернёт идентификационный номер sms. - Использовать полученный идентификационный номер для отправки командой
--send
.
root@wirenboard-APT6KWYK:~# mmcli -m 1 --messaging-create-sms="text='Test',number='+79999999999'"
Successfully created new SMS: /org/freedesktop/ModemManager1/SMS/10
root@wirenboard-APT6KWYK:~# mmcli -m 1 -s 10 --send
successfully sent the SMS
SMS-уведомления
Отправка sms-уведомлений об изменении состояния какого-либо устройства реализована в ПО Wiren Board с помощью сервиса уведомлений. Также можно отправлять SMS из движка правил wb-rules, вызывая соответствующую функцию. Подробнее в статье «Модуль уведомлений».
Получение информации о модеме
В контроллерах, начиная с 2019 года, некоторая информация о модеме заносится в память. Получить её можно с помощью чтения файлов в директории /proc/device-tree/wirenboard/gsm/
.
В контроллерах версии 6.7 модем устанавливается модулем расширения.
Например, чтобы узнать модель модема, нужно выполнить команду
cat /proc/device-tree/wirenboard/gsm/model
Подробнее о файлах внутри директории можно узнать из таблицы:
Файл | Описание |
---|---|
/proc/device-tree/wirenboard/gsm/model | модель модема |
/proc/device-tree/wirenboard/gsm/type | поддерживаемые сети |
/proc/device-tree/wirenboard/gsm/status | статус модема в системе |
ModemManager позволяет получить информацию о модеме. Сделать это можно с помощью утилиты mmcli, выполнив команду:
mmcli -m any
Сервис wb-gsm
Сервис wb-gsm
предназначен для управления питанием модема, он входит в пакет wb-utils.
Питание подаётся на модем при старте сервиса и отключается при остановке.
Сервис автоматически запускается при старте контроллера, если модем выбран в настройках модулей расширения.
Управлять работой сервиса можно через команды systemctl
. Например, для остановки надо выполнить
systemctl stop wb-gsm
Переключение активной sim-карты
По умолчанию активна Sim1 — в каждый момент времени только одна sim-карта может быть активной.
Для переключения sim-карты используется mmcli
с параметром --set-primary-sim-slot
. Например:
root@wirenboard-APT6KWYK:/opt# mmcli -m any --set-primary-sim-slot=2
successfully requested primary SIM switch in modem
ModemManager выполнит переключение sim-карты и переинициализирует модем.
Низкоуровневая работа по uart
Любое взаимодействие с модемом так или иначе сводится к отправке AT-команд через последовательный порт модема.
Если необходимо отправлять команды модему, нужно остановить сервис ModemManager: systemctl stop ModemManager
. После этого можно работать с портом как описано здесь.
Если необходимо отправлять команды при активном ModemManager, его надо перезапустить с параметром --debug
и использовать mmcli для отправки команд:
root@wirenboard-APT6KWYK:~# mmcli -m 0 --command=AT+CGMM
response: ''A7600E-HNVW'
Документация на модемы
Модель | Режимы сети | краткое описание | hardware design | AT-команды |
---|---|---|---|---|
SIM800 | 2G | |||
SIM5300E | 2G/3G | |||
SIM7000E | 2G/NB-IOT | |||
7600E | 2G/3G/4G | WBC-4G |