Minicom - подключение к USB модему Huawei E1550 по /dev/ttyUSB*
Подключение и управление USB модемом Huawei E1550 через консольный TTY терминал. Выполнение AT команд и USSD запросов. Получение информации о модеме, SIM карте, балансе, SMS.
Для коммуникации с USB 3G модемом есть несколько консольных и графических утилит:
- minicom - мне приглянулась больше остальных
- picocom
- cutecom (графическая программа для работы с терминалами).
Установка minicom
sudo apt install minicom -y
Примечание
Рекомендуют также устанавливать следующие пакеты:
sudo apt install libusb++-0.1-4v5 libusb++-dev
Подключение к модему
Примечание
Обычно USB модемы предоставляют 3 ttyUSB* интерфейса:
- /dev/ttyUSB0 - интернет/данные
- /dev/ttyUSB1
- /dev/ttyUSB2 - командный интерфейс/устройство
На модеме Huawei E1550 ответ на USSD запросы всегда приходит на интерфейс /dev/ttyUSB2! Даже отправляя USSD запросы в /dev/ttyUSB0 все равно слушайте 2 порт.
minicom
Подключение к модему:
sudo minicom -D /dev/ttyUSB2 -b 9600
Подключение в режиме настройки:
sudo minicom -D /dev/ttyUSB2 -s
- Переходим в "Настройка последовательного порта", далее "А - Последовательный порт" и указываем /dev/ttyUSB0 или /dev/ttyUSB2.. Enter.
- Выбираем "Сохранить настройки как dfl".
- Выход.
И мы подключимся к модему с выбранными настройками.
Примечание
Для выхода из терминала minicom (отключения от устройства) используются комбинации клавиш Ctrl+A - X (без сохранения) или Ctrl+A - Q (с сохранением).
Выполнение набора команд и вывод в файл:
sudo minicom -D /dev/ttyUSB2 --capturefile=/path/minicom.log --script=/path/minicom-script.txt
Содержимое файла minicom-script.txt (не знаю как завершить процесс после выполнения AT команды):
send ATI
picocom
Подключаемся к устройству /dev/ttyUSB2:
sudo picocom /dev/ttyUSB2
Подключаемся к устройству /dev/ttyUSB2 с отображением команд в терминал:
sudo picocom --echo -b 38400 /dev/ttyUSB2
Документация: https://github.com/npat-efault/picocom
Конфигурация
Использование /dev/tty* без sudo
Для использования /dev/tty* устройств без прав супер-юзера (sudo) необходимо добавить пользователя в группу dialout:
sudo apt remove modemmanager
sudo usermod -a -G dialout $USER
Внимание!
Если не отображается результат выполняемых AT команд и USSD запросов - проверьте, не перенаправляется ли вывод на другое ttyUSB* устройство или в файл. Попробуйте сменить устройство с ttyUSB0 на ttyUSB2.
Выполнение AT команд и USSD запросов
Показать информацию о модеме:
ATI
Manufacturer: huawei
Model: E1550
Revision: 11.608.13.02.00
IMEI: 353443043787139
+GCAP: +CGSM,+FCLASS,+DS
AT команды для получения оператора связи (carrier):
AT+COPS=3,0
AT+COPS?
Выполнение USSD запроса для просмотра баланса:
AT+CUSD=1,"*111#","15"
Смотрите список дополнительных AT команд и USSD запросов.
#tty, #terminal, #minicom, #modem, #at, #ussd, #serial