Как изменить режим (или идентификатор продукта) модуля SIMCOM (SIM8262E-M2)

Я испортил. Недавно я получил этот модуль SIMCOM с поддержкой 5G. SIM8262E-M2
Основан на модеме Snapdragon X62.

Он имеет 4 режима (или идентификатора продукта) работы:at+cusbcfg=?дает следующее: 9001,9003,9011,901e
Заводской режим по умолчанию — 9001. Все режимы (кроме 901E) обеспечивают/dev/ttyUSB(Я научился на собственном горьком опыте!), и вы можете подавать AT-команды через них (используя minicom и т. д.).
Я по ошибке изменил режим на 901E, теперь я не могу получить из этого никакие последовательные порты!

однако это все еще имеет/dev/cdc-wdm0Я могу использовать qmicli и mbimcli для взаимодействия:

      [xplore@fedora ~]$ sudo qmicli --device=/dev/cdc-wdm0 --device-open-proxy --dms-get-operating-mode
[/dev/cdc-wdm0] Operating mode retrieved:
    Mode: 'online'
    HW restricted: 'no'

Мой вопрос: как мне вернуть режим на один из (9001,9003,9011)? ИЛИ есть ли способ выдавать AT-команды через qmicli/mbimcli?

Я также попробовал следующее (см. этот пост или этот ):

      [root@fedora xplore]# modprobe option
[root@fedora xplore]# echo 1e0e 9011 > /sys/bus/usb-serial/drivers/option1/new_id

Но после запуска я ничего не вижу/dev/ttyUSB*устройства. (нужно ли здесь еще что-то делать?, я явно не эксперт в Linux)

В настоящее время это отображается как:

      [root@fedora xplore]# lsusb
Bus 008 Device 003: ID 1e0e:901e Qualcomm / Option SDXLEMUR-LITE-MTP _SN:1505A7A0

вывод dmesg:

      [ 2449.622442] usb 8-2: new SuperSpeed USB device number 5 using xhci_hcd
[ 2449.635211] usb 8-2: LPM exit latency is zeroed, disabling LPM.
[ 2449.636702] usb 8-2: New USB device found, idVendor=1e0e, idProduct=901e, bcdDevice= 5.04
[ 2449.636704] usb 8-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2449.636704] usb 8-2: Product: SDXLEMUR-LITE-MTP _SN:1505A7A0
[ 2449.636705] usb 8-2: Manufacturer: SIMCOM
[ 2449.636706] usb 8-2: SerialNumber: 0123456789ABCDEF
[ 2449.803329] cdc_mbim 8-2:1.2: setting rx_max = 16384
[ 2449.803997] cdc_mbim 8-2:1.2: cdc-wdm0: USB WDM device
[ 2449.804219] cdc_mbim 8-2:1.2 wwan0: register 'cdc_mbim' at usb-0000:6b:00.0-2, CDC MBIM, 16:dd:bf:a1:af:08
[ 2449.816224] cdc_mbim 8-2:1.2 wwp107s0u2i2: renamed from wwan0

Я также попробовал следующее:
Включен режим отладки для ModemManager.

      sudo mmcli -m 0 --command="AT"
error: command failed: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.Connected: No AT port available to run command'

Но это показывает, что AT-порт не открыт.

Пожалуйста, помогите мне здесь, это устройство дорого для меня, и устройство имеет обширную документацию по AT-командам, без которой я не смогу его активно использовать.

Дополнительная документация:
https://www.waveshare.com/w/upload/c/c6/SIM82XX_SIM83XX_Series_AT_Command_Manual_V1.02.pdf
https://www.waveshare.com/wiki/USB_TO_M.2_B_KEY#Working_With_SIM82XX_Module
https://www.waveshare.com/wiki/SIM8262E-M2_5G_HAT
https://github.com/torvalds/linux/commit/5417a7e482962952e622eabd60cd3600dd65dedf

2 ответа

ИЛИ есть ли способ выдавать AT-команды через qmicli/mbimcli?

Я не знаю об этих двух программах, однако я написал программу atinout с единственной целью запуска AT-команд из командной строки. На основе примера, приведенного в документации 1 , и при условии, что/dev/cdc-wdm0это последовательное устройство для AT-команд, которое вы сможете запускать

      echo AT+CUSBCFG=usbid,1e0e,9011 | atinout - /dev/cdc-wdm0 -

1 Глядя на документацию по этой команде, я поражаюсь тому, насколько фундаментально сломан и неверен синтаксис этой команды, поскольку строковые параметры всегда должны быть заключены в двойные кавычки, что по нулевым веским причинам здесь не так. Человек(а), реализовавший команду AT+CUSBCFG, явно не понимал должным образом AT-команды.

В документе упоминается V.25ter , что в некотором роде правильно, но все же не очень хороший знак, поскольку ссылка должна быть на V.250 , который V.25ter был переименован в «всего лишь» 24 года назад, всего за 3 года существования:

ITU-T установил стандарт в своих Рекомендациях серии V, V.25ter, в 1995 году, пытаясь снова установить стандарт для набора команд. В 1998 году он был переименован в V.250.

И V.250 кристально ясно показывает, что такое правильный синтаксис:

5.4.2 Значения

... значение должно состоять из числовой константы или строковой константы.

5.4.2.1 Числовые константы

Числовые константы выражаются в десятичной, шестнадцатеричной или двоичной форме. ...

5.4.2.2 Строковые константы

Строковые константы должны быть ограничены в начале и конце символом двойной кавычки...

и вышеперечисленное определенно присутствовало в V.25ter с самого начала, поэтому этому ужасному неправильному синтаксису AT-команд нет оправдания.

Это исправлено! Однако исправление не является решением этой проблемы.
Я исправил это, получив последние версии драйверов для Windows, после их установки я увидел открытые COM-порты!
Я использовал шпатлевку для подключения к последовательному порту и обратного изменения режима:

      AT+CUSBCFG=USBID,1E0E,9003
Другие вопросы по тегам