I have several GL.iNet routers at the moment. I’m not fully satisfied with the official firmware yet but I’m keep trying. One of my main goals is to setup a non-tethering 4G connection because I hate NAT and I’m more satisfied if the connection is handled by router as much as possible. So the modem is using RNDIS/HiLink protocol by default. But there are a few articles on the internet that helps to initialize the modem as a serial (PPP) device. I would use it as an NCM or QMI device but I have no clue yet how to initialize the modem in any other way. At the moment I’m using this usb-mode.json
modification to get PPP protocol:
{
"messages" : [
"55534243123456780000000000000011063000000100010000000000000000",
],
"devices" : {
"12d1:1f01": {
"*": {
"t_vendor": 4817,
"t_product": [ 5471 ],
"msg": [ 0 ]
}
}
}
}
I don’t find any clear information on the internet how accurate are these modifications but this works for me. The only problem is that this does not works with the GL.iNet firmwares. The detection is fine but the dialling does fails for some reason. Some examples:
Fri May 6 18:29:55 2022 daemon.notice netifd: Interface 'modem_1_1' is setting up now
Fri May 6 18:29:58 2022 daemon.notice netifd: modem_1_1 (19188): Trying to set mode
Fri May 6 18:29:58 2022 daemon.notice netifd: modem_1_1 (19188): cat: can't open '/tmp/modem.1-1/signal': No such file or directory
Fri May 6 18:29:58 2022 daemon.notice pppd[19362]: pppd 2.4.7 started by root, uid 0
Fri May 6 18:29:59 2022 local2.info chat[19363]: abort on (BUSY)
Fri May 6 18:29:59 2022 local2.info chat[19363]: abort on (NO CARRIER)
Fri May 6 18:29:59 2022 local2.info chat[19363]: abort on (ERROR)
Fri May 6 18:29:59 2022 local2.info chat[19363]: report (CONNECT)
Fri May 6 18:29:59 2022 local2.info chat[19363]: timeout set to 10 seconds
Fri May 6 18:29:59 2022 local2.info chat[19363]: send (AT+CGDCONT=1,"IP","internet"^M)
Fri May 6 18:30:00 2022 local2.info chat[19363]: timeout set to 30 seconds
Fri May 6 18:30:00 2022 local2.info chat[19363]: expect (OK)
Fri May 6 18:30:00 2022 local2.info chat[19363]: ^M
Fri May 6 18:30:00 2022 local2.info chat[19363]: OK
Fri May 6 18:30:00 2022 local2.info chat[19363]: -- got it
Fri May 6 18:30:00 2022 local2.info chat[19363]: send (ATD*99***1#^M)
Fri May 6 18:30:00 2022 local2.info chat[19363]: expect (CONNECT)
Fri May 6 18:30:00 2022 local2.info chat[19363]: ^M
Fri May 6 18:30:00 2022 local2.info chat[19363]: ^M
Fri May 6 18:30:00 2022 local2.info chat[19363]: CONNECT
Fri May 6 18:30:00 2022 local2.info chat[19363]: -- got it
Fri May 6 18:30:00 2022 local2.info chat[19363]: send ( ^M)
Fri May 6 18:30:00 2022 daemon.info pppd[19362]: Serial connection established.
Fri May 6 18:30:00 2022 kern.info kernel: [ 918.034615] 3g-modem_1_1: renamed from ppp0
Fri May 6 18:30:00 2022 daemon.info pppd[19362]: Renamed interface ppp0 to 3g-modem_1_1
Fri May 6 18:30:00 2022 daemon.info pppd[19362]: Using interface 3g-modem_1_1
Fri May 6 18:30:00 2022 daemon.notice pppd[19362]: Connect: 3g-modem_1_1 <--> /dev/ttyUSB0
Fri May 6 18:30:01 2022 daemon.notice pppd[19362]: Modem hangup
Fri May 6 18:30:01 2022 daemon.notice pppd[19362]: Connection terminated.
Fri May 6 18:30:02 2022 daemon.info pppd[19362]: Exit.
Fri May 6 18:30:03 2022 daemon.notice netifd: Interface 'modem_1_1' is now down
Fri May 6 18:30:51 2022 kern.info kernel: [ 968.731676] usb 1-1: new high-speed USB device number 5 using ehci-platform
Fri May 6 18:30:51 2022 kern.info kernel: [ 968.938296] usb-storage 1-1:1.0: USB Mass Storage device detected
Fri May 6 18:30:51 2022 kern.info kernel: [ 968.958953] usb-storage 1-1:1.0: Quirks match for vid 12d1 pid 1f01: 1
Fri May 6 18:30:51 2022 kern.info kernel: [ 968.965965] scsi host0: usb-storage 1-1:1.0
Fri May 6 18:30:51 2022 kern.info kernel: [ 969.206081] usb 1-1: USB disconnect, device number 5
Fri May 6 18:30:52 2022 kern.info kernel: [ 969.911747] usb 1-1: new high-speed USB device number 6 using ehci-platform
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.136053] option 1-1:1.0: GSM modem (1-port) converter detected
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.142768] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.150581] option 1-1:1.1: GSM modem (1-port) converter detected
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.157232] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.165031] option 1-1:1.2: GSM modem (1-port) converter detected
Fri May 6 18:30:52 2022 kern.info kernel: [ 970.171628] usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
Fri May 6 18:30:53 2022 kern.info kernel: [ 970.323526] cdc_ncm 1-1:1.3: MAC-Address: 00:1e:10:1f:00:00
Fri May 6 18:30:53 2022 kern.info kernel: [ 970.329324] cdc_ncm 1-1:1.3: setting rx_max = 16384
Fri May 6 18:30:53 2022 kern.info kernel: [ 970.382791] cdc_ncm 1-1:1.3 wwan0: register 'cdc_ncm' at usb-1b000000.usb-1, Mobile Broadband Network Device, 00:1e:10:1f:00:00
Because of this I installed Gargoyle 1.13.0 one of my GL.iNet routers and applied the same modification. Gargoyle can dial and create the PPP connection without any issues. I would like to figure out how can I fix this but I don’t know where to start.