Rockchip LTE module unstable on RK3399 (OrangePi 4b)
Hi,I'm trying to make Rockchip LTE module (RM310) work with the RK3399. I tried with the Debian and Ubuntu releases available for download at OrangePis downloads section. The behavious I faced was pretty much the same on both distributions.
The module is not auto-detected. It needs to be reset by pressing the grey reset button on the PCIe module. After that the device shows up after about 10 seconds:
root@orangepi4:~# mmcli -M
No modems were found
(+) /org/freedesktop/ModemManager1/Modem/1 Nezha_MIFIIt seems like it's being enabled:
<div>root@orangepi4:~# sudo mmcli -m 3 -w
d /org/freedesktop/ModemManager1/Modem/3: Initial state, 'enabling'</div>But what is actually happening is it is dropping the connection:
root@orangepi4:~# sudo mmcli -L
No modems were foundHere are a few outputs from the journalctl that might help debugging the problem for more experienced users:
Aug 15 11:47:31 orangepi4 ModemManager: <info> creating modem with plugin 'Generic' and '4' ports
Aug 15 11:47:31 orangepi4 ModemManager: <warn>Could not grab port (tty/ttyUSB0): 'Cannot add port 'tty/ttyUSB0', unhandled serial type'
Aug 15 11:47:31 orangepi4 ModemManager: <info>Modem for device '/sys/devices/platform/fe380000.usb/usb7/7-1' successfully created
Aug 15 11:47:31 orangepi4 ModemManager: <warn>couldn't load Supported Modes: 'Couldn't retrieve supported modes'
Aug 15 11:47:31 orangepi4 ModemManager: <warn>Parse error in step 0: Could not recognize +CSIM response '+CSIM:4,63C3'.
Also, it doen't help if I enable the modem with `-e`. It just drops the interface. Do I need to load some firmware? If yes, which? A little more documentation from the OrangePi crew would be very much appreciated.
Regards
(Note that the `-m X` modem selector changes a couple of times above which is because I have to reset the modem repeatedly).
A little update: I checked the list of suppoted modules for Modem Manager here and found that Huawai seems to have pretty good support coverage.
I tried a mPCIe module carrying a Huawai ME909s-120 LTE module and it seems to work out of the box. It gets detected automatically, I can enable it, set the pin and it finally enters state 'connected'.
This, I would not recommend using the rm310 for now unless you really know what you are doing. Still, I would be very, very interested in finding out how to make the rm310 work! Thus, @OrangePi-Team please tell us how you managed to get this module working? BTW.: I also recompiled a few linux kernels availble at rockchip-linux. Unfortunately, there are plenty of trees, so that it's not clear to me which would be the most appropriate to use. Any hints are highly welcome!
For your reference.
I tried the Sierra MC7700.
However, the sim could not be detected.
mmcli -L
/org/freedesktop/ModemManager1/Modem/1 MC7700
mmcli -m 1
--------------------------
General| dbus path: /org/freedesktop/ModemManager1/Modem/1
| device id: 109ce34f8d590055bb50f9deb022234f6e3b0412
--------------------------
Hardware | manufacturer: Sierra Wireless, Incorporated
| model: MC7700
| revision: SWI9200X_03.05.29.03ap r6485 CNSHZ-ED-XP0031 2014/12/02 17:53:15
| h/w revision: 1.0
| supported: gsm-umts, lte
| current: gsm-umts, lte
| equipment id: 0128xxxxxxxxxxx
--------------------------
System | device: /sys/devices/platform/fe380000.usb/usb7/7-1
| drivers: qmi_wwan, qcserial
| plugin: Sierra
| primary port: cdc-wdm0
| ports: ttyUSB0 (qcdm), ttyUSB2 (at), cdc-wdm0 (qmi), wwan0 (net)
--------------------------
Status | state: failed
|failed reason: sim-missing
| power state: on
| signal quality: 0% (cached)
--------------------------
Modes | supported: allowed: 2g; preferred: none
If you convert nimiPCIe to USB and attach it to OrangePi 4B, SIM will be detected. If SIM is detected, you can use it normally.
mmcli -L
/org/freedesktop/ModemManager1/Modem/0 MC7700
mmcli -m 0
--------------------------------
General| dbus path: /org/freedesktop/ModemManager1/Modem/0
| device id: 109ce34f8d590055bb50f9deb022234f6e3b0412
--------------------------------
Hardware | manufacturer: Sierra Wireless, Incorporated
| model: MC7700
| revision: SWI9200X_03.05.29.03ap r6485 CNSHZ-ED-XP0031 2014/12/02 17:53:15
| h/w revision: 1.0
| supported: gsm-umts, lte
| current: gsm-umts, lte
| equipment id: 0128xxxxxxxxxxx
--------------------------------
System | device: /sys/devices/platform/usb1/fe900000.dwc3/xhci-hcd.8.auto/usb5/5-1/5-1.4
| drivers: qcserial, qmi_wwan
| plugin: Sierra
| primary port: cdc-wdm0
| ports: ttyUSB0 (qcdm), ttyUSB2 (at), cdc-wdm0 (qmi), wwan0 (net)
--------------------------------
Numbers| own: 080xxxxxxxx
--------------------------------
Status | lock: sim-pin2
| unlock retries: sim-pin (3), sim-pin2 (3), sim-puk (10), sim-puk2 (10)
| state: registered
| power state: on
| access tech: lte
| signal quality: 62% (recent)
I couldn't tell whether it was a hardware problem or a software problem, so I stopped using PCIE-SOCKET-OPI4-4B with the LTE module.
In my possession, the miniPCIe module has an Edge TPU in addition to LTE. As a test, I was able to build a driver for kernel 4.4.213-rk3399 and infer it via PCIE-SOCKET-OPI4-4B.
Edited by nis at 2020-10-1 07:23
If possible, it may be a good idea to get firmware that uses the QMI modem protocol from the module chip manufacturer. If it is the latest firmware, it may be supported.
Armbian kernel 5.8.12-rockchip64 did not require kernel recompilation.
Via USB, but with kernel 4.4.179, it worked if I recompiled the kernel.
diff arch/arm64/configs/4_linux_defconfig.orgarch/arm64/configs/4_linux_defconfig
1484c1484,1485
< # CONFIG_NET_VENDOR_QUALCOMM is not set
---
> CONFIG_NET_VENDOR_QUALCOMM=y
> CONFIG_QCA7000=m
1582c1583
< # CONFIG_USB_NET_QMI_WWAN is not set
---
> CONFIG_USB_NET_QMI_WWAN=m
"CONFIG_QCA7000 = m" may not be needed.
"CONFIG_NET_VENDOR_QUALCOMM = y" could not be made into a module due to a dependency.
cat /proc/version
Linux version 4.4.179-gaa7c4263-dirty (root@ASUS-1080n) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05) ) #1 SMP Wed Sep 30 14:34:52 JST 2020
lsmod
Module SizeUsed by
qmi_wwan 245760
zram 245766
bcmdhd 12247040
sg 450560
It worked easily if I set the APN, username and password from NetworkManager.
I didn't try via PCIE-SOCKET-OPI4-4B because I attached Edge TPU as shown in the picture, but it probably doesn't recognize SIM.
c:\TPU.jpg
page:
[1]