Содержание статьи

Модем Em7455 поддерживает несколько протоколов взаимодействия с операционной системой, среди которых MBIM и QMI. Режим QMI часто выбирают для повышения скорости отклика и стабильности соединения при работе с мобильным интернетом на Linux-системах.
Для перевода устройства в QMI необходима установка дополнительных пакетов, таких как libqmi и uqmi, а также корректная конфигурация драйверов. Важно убедиться, что текущий режим работы модема действительно отличается от QMI, чтобы избежать конфликтов в системе.
Процесс переключения включает использование специализированных команд через терминал, которые меняют внутренние настройки модема. После переключения потребуется проверить статус интерфейса и настроить сетевое подключение с использованием утилит QMI-протокола.
Проверка текущего режима работы модема Em7455
Определение текущего режима работы Em7455 начинается с идентификации используемого интерфейса. Выполните команду lsusb для проверки подключения модема к системе и получения его идентификаторов.
Для проверки активного режима взаимодействия используйте утилиту mmcli из пакета ModemManager. Команда mmcli -m 0 отобразит подробную информацию о модеме, включая режим работы: MBIM или QMI.
Альтернативно, для систем с установленным пакетом libqmi, команда qmicli -d /dev/cdc-wdm0 —device-open-proxy позволит получить статус интерфейса. Отсутствие ответа или ошибки укажут на неверный режим или необходимость переключения.
Также стоит проверить наличие соответствующих сетевых интерфейсов: для QMI это обычно wwan0 с поддержкой QMI-протокола, для MBIM – интерфейс с другой конфигурацией. Команда ip link поможет выявить активные интерфейсы.
Подготовка системы для переключения в режим QMI
Перед переключением модема Em7455 на QMI необходимо обновить ядро Linux до версии не ниже 4.15, так как поддержка QMI улучшена начиная с этой версии.
Убедитесь, что установлены пакеты libqmi, libqmi-utils и ModemManager. В дистрибутивах на базе Debian используйте команду sudo apt install libqmi-utils modemmanager, в Fedora – sudo dnf install libqmi modemmanager.
Для предотвращения конфликтов отключите службу ModemManager на время настройки командой sudo systemctl stop ModemManager. После завершения переключения службу можно запустить заново.
Проверьте, что модем подключен и распознан системой с помощью ls /dev/cdc-wdm*. Если устройства отсутствуют, убедитесь в правильности драйверов и USB-конфигурации.
Если модем ранее работал в режиме MBIM, рекомендуется очистить все активные сетевые подключения, связанные с ним, чтобы избежать конфликтов после смены режима.
Установка и настройка необходимых драйверов и утилит

Для работы с модемом Em7455 в режиме QMI требуется установка пакета libqmi-utils, включающего утилиту qmicli. В системах Debian и Ubuntu выполните sudo apt install libqmi-utils, в Fedora – sudo dnf install libqmi.
Драйверы ядра для работы с QMI обычно встроены начиная с версии 4.15. Проверьте наличие модуля cdc-wdm командой lsmod | grep cdc_wdm. При отсутствии загрузите модуль вручную: sudo modprobe cdc-wdm.
Установите и настройте ModemManager для управления модемом. Для этого используйте sudo systemctl enable —now ModemManager. При необходимости настройте правила udev для корректного доступа к устройству.
Проверьте работоспособность утилиты qmicli с командой qmicli -d /dev/cdc-wdm0 —get-identifier, которая должна вернуть уникальный идентификатор модема.
Если используются сетевые менеджеры, убедитесь в их поддержке QMI. Например, NetworkManager версии 1.10 и выше содержит встроенную поддержку QMI-интерфейсов.
Команды для перевода Em7455 из режима MBIM в QMI

Переключение модема Em7455 с MBIM на QMI выполняется с помощью команды qmicli и требует доступа к устройству /dev/cdc-wdm0. Ниже приведён порядок действий:
- Остановите службу ModemManager, чтобы избежать конфликтов:
sudo systemctl stop ModemManager - Проверьте текущий режим модема:
qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-expected-data-format - Перезагрузите модем, чтобы изменения вступили в силу. Например, через отключение и повторное подключение USB или перезагрузку системы.
- Запустите службу ModemManager:
sudo systemctl start ModemManager - Проверьте новый режим работы:
qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-expected-data-format
sudo qmicli -d /dev/cdc-wdm0 --device-open-proxy --set-expected-data-format=qmi
Если устройство не переключилось, убедитесь, что драйвер cdc-wdm загружен, и нет конфликтующих сервисов, например, ModemManager, которые могут блокировать доступ.
Проверка успешного переключения модема в режим QMI

Для подтверждения перевода Em7455 в режим QMI выполните команду:
qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-expected-data-format
Ответ должен содержать строку QMI. Если отображается MBIM или другой режим, переключение не произошло.
Проверьте наличие сетевого интерфейса с поддержкой QMI с помощью:
ip link show wwan0
Интерфейс wwan0 должен быть активен и отображаться в списке.
Также проверьте статус модема через qmicli:
qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-connection-status
Если служба ModemManager используется, убедитесь в корректном распознавании устройства командой:
mmcli -m 0
В разделе «Ports» должен присутствовать порт QMI, а состояние модема – «registered» или «connected».
При отсутствии ожидаемых результатов повторите процедуру переключения и проверьте загрузку модуля cdc-wdm с помощью:
lsmod | grep cdc_wdm
Если модуль отсутствует, загрузите его вручную.
Настройка сетевого подключения через QMI-интерфейс

Для настройки подключения через QMI-интерфейс используйте утилиту qmi-network, которая входит в пакет libqmi-utils. Запустите команду:
sudo qmi-network /dev/cdc-wdm0 start
Если требуется указать точку доступа (APN), создайте конфигурационный файл /etc/qmi-network.conf с содержимым:
APN="internet"
Для остановки подключения используйте:
sudo qmi-network /dev/cdc-wdm0 stop
После старта проверьте наличие сетевого интерфейса wwan0 и назначение IP-адреса командой:
ip addr show wwan0
Если адрес не получен, выполните запрос IP вручную через DHCP:
sudo dhclient wwan0
Для автоматизации запуска QMI-соединения настройте Systemd-сервис или используйте NetworkManager с поддержкой QMI, указав соответствующий профиль подключения.
При возникновении ошибок проверьте логи с помощью:
journalctl -u qmi-network
и убедитесь в правильности параметров APN и наличии доступа к SIM-карте.
Вопрос-ответ:
Как узнать, в каком режиме сейчас работает модем Em7455?
Для проверки текущего режима используйте команду qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-expected-data-format. Если вывод содержит «MBIM», модем работает в этом режиме, если «QMI» — в соответствующем. Также можно посмотреть статус через mmcli -m 0, где будет указан активный интерфейс.
Какие пакеты и драйверы нужны для перевода Em7455 в режим QMI?
Необходимы пакеты libqmi-utils и ModemManager. Драйвер cdc-wdm должен быть загружен в ядро (проверяется командой lsmod | grep cdc_wdm). При отсутствии драйвера его можно загрузить вручную через modprobe cdc-wdm. Для настройки также пригодится NetworkManager с поддержкой QMI.
Какие команды применить для переключения модема Em7455 из MBIM в QMI?
Остановите службу ModemManager (sudo systemctl stop ModemManager), затем выполните команду sudo qmicli -d /dev/cdc-wdm0 --device-open-proxy --set-expected-data-format=qmi. После перезагрузки устройства или системы включите службу обратно и проверьте режим снова.
Как проверить, что переключение модема в режим QMI прошло успешно?
После переключения выполните qmicli -d /dev/cdc-wdm0 --device-open-proxy --get-expected-data-format — должен вернуться результат «QMI». Также убедитесь, что сетевой интерфейс wwan0 появился и активен (ip link show wwan0). Для дополнительной проверки используйте mmcli -m 0 и смотрите статус подключения.
Как настроить сетевое соединение через QMI после переключения модема?
Запустите команду sudo qmi-network /dev/cdc-wdm0 start. При необходимости укажите APN в файле /etc/qmi-network.conf, добавив строку APN="имя_апн". После запуска проверьте наличие IP-адреса на интерфейсе wwan0. Для остановки используйте sudo qmi-network /dev/cdc-wdm0 stop. При необходимости настройте автоматический запуск через Systemd или NetworkManager.
