14.04 - ModemManager настроить последовательный модем

Я работаю с Ubuntu 14.04 LTS, где я хотел бы подключить модем Cinterion через последовательный порт - в данном случае ttyS0.

Модем работает правильно, когда введена следующая команда:

pppd call OPERATOR

Получение некоторых трасс в /var/log/syslog, подобных этим:

NetworkManager[911]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
NetworkManager[911]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/ppp0, iface: ppp0): no ifupdown configuration found.
NetworkManager[911]: <warn> /sys/devices/virtual/net/ppp0: couldn't determine device driver; ignoring...

После перехода по этой ссылке AskUbuntu я добавил правило для udev, чтобы ttyS0 мог быть включен как "устройство последовательной сети":

SUBSYSTEM=="pnp", ACTION=="add", KERNEL=="00:08", ENV{ID_MM_PLATFORM_DRIVER_PROBE}="1"

Благодаря этим выходам:

# udevadm info /dev/ttyS0
P: /devices/pnp0/00:08/tty/ttyS0
N: ttyS0
E: DEVNAME=/dev/ttyS0
E: DEVPATH=/devices/pnp0/00:08/tty/ttyS0
E: ID_MM_CANDIDATE=1
E: MAJOR=4
E: MINOR=64
E: SUBSYSTEM=tty
E: USEC_INITIALIZED=87154

# udevadm info /sys/devices/pnp0/00\:08
P: /devices/pnp0/00:08
E: DEVPATH=/devices/pnp0/00:08
E: DRIVER=serial
E: ID_MM_PLATFORM_DRIVER_PROBE=1
E: SUBSYSTEM=pnp
E: USEC_INITIALIZED=87046

Кроме того, поскольку я хотел проверить выходные данные отладки ModemManager, я остановил службу диспетчера сети. Затем в выводе я получил следы, подобные этим:

    #ModemManager --debug    
    [...]
    ModemManager[3170]: <debug> [1473157920.412477] [mm-device.c:298] mm_device_grab_port(): (/sys/devices/pnp0/00:08) could not get vendor/product ID

    ModemManager[3170]: <debug> [1473157920.412643] [mm-plugin-manager.c:576] build_plugins_list(): (Plugin Manager) [ttyS0] Found '5' plugins to try...

    ModemManager[3170]: <debug> [1473157920.412662] [mm-plugin-manager.c:580] build_plugins_list(): (Plugin Manager) [ttyS0]   Will try with plugin 'Cinterion'

    ModemManager[3170]: <debug> [1473157929.569356] [mm-port-probe-at.c:43] mm_port_probe_response_processor_is_at(): Parsing AT got: 'Serial command timed out'
    ModemManager[3170]: <debug> [1473157929.569369] [mm-port-probe.c:161] mm_port_probe_set_result_at(): (tty/ttyS0) port is not AT-capable

    [...]
    ModemManager[3170]: <debug> [1473157935.569494] [mm-plugin-manager.c:417] plugin_supports_port_ready(): (Plugin Manager) (Generic) [ttyS0] found best plugin for port
    ModemManager[3170]: <debug> [1473157935.569507] [mm-plugin-manager.c:285] port_probe_context_finished(): (Plugin Manager) 'ttyS0' port probe finished, last one in device
    ModemManager[3170]: <debug> [1473157935.569514] [mm-plugin-manager.c:107] find_device_support_context_complete_and_free(): (Plugin Manager) [/sys/devices/pnp0/00:08] device support check finished in '15.157042' seconds
    ModemManager[3170]: <info>  [1473157935.569638] [mm-device.c:486] mm_device_create_modem(): Creating modem with plugin 'Generic' and '1' ports
    ModemManager[3170]: <warn>  [1473157935.569779] [mm-plugin.c:900] mm_plugin_create_modem(): Could not grab port (tty/ttyS0): 'Cannot add port 'tty/ttyS0', unhandled serial type'
    ModemManager[3170]: <debug> [1473157935.569805] [mm-base-modem.c:1556] finalize(): Modem (Generic) '/sys/devices/pnp0/00:08' completely disposed
    ModemManager[3170]: <warn>  [1473157935.569816] [mm-manager.c:145] find_device_support_ready(): Couldn't create modem for device at '/sys/devices/pnp0/00:08': Failed to find primary AT port
    [...]

Итак, процесс завершился с ошибкой и не нашел модем в pnp0/00:08.

Какие дополнительные шаги должны быть сделаны?

1 ответ

В соответствии с:

ModemManager[3170]: <debug> [1473157929.569356] [mm-port-probe-at.c:43] mm_port_probe_response_processor_is_at(): Parsing AT got: 'Serial command timed out'
ModemManager[3170]: <debug> [1473157929.569369] [mm-port-probe.c:161] mm_port_probe_set_result_at(): (tty/ttyS0) port is not AT-capable

Ваше последовательное соединение истекает. Проверьте, какие AT-команды отправлены.

Кроме того, модули Cinterion обычно работают на скорости 115200 бод по умолчанию, тогда как ModemManager использует 57600 (по крайней мере, когда я его использовал).

Попробуйте изменить скорость передачи модулей на 57600, выполнив:

AT+IPR=57600

& Перезагружать. Если у вас есть дальнейшие проблемы, вам нужно проследить по вашему последовательному соединению и проверить, что отправляется по интерфейсу.

Другие вопросы по тегам