aboutsummaryrefslogtreecommitdiffstats
path: root/package/network/utils
diff options
context:
space:
mode:
authorSzabolcs Hubai <szab.hu@gmail.com>2023-03-25 00:00:27 +0100
committerHauke Mehrtens <hauke@hauke-m.de>2023-03-29 17:29:02 +0200
commitdbd6ebd6d84b35599a0446559576df41f487200e (patch)
treefface47f0ba671a03332d344a8abdcc6d4fdb836 /package/network/utils
parent91eca7b04ff1309c7408baa1f1631d7623ce50cf (diff)
downloadupstream-dbd6ebd6d84b35599a0446559576df41f487200e.tar.gz
upstream-dbd6ebd6d84b35599a0446559576df41f487200e.tar.bz2
upstream-dbd6ebd6d84b35599a0446559576df41f487200e.zip
comgt: ncm: support Mikrotik R11e-LTE6 modem
The Mikrotik R11e-LTE6 modem is similar to ZTE MF286R modem, added earlier: it has a Marvel chip, able to work in ACM+RNDIS mode, knows ZTE specific commands, runs OpenWrt Barrier Breaker fork. While the modem is able to offer IPv6 address, the RNDIS setup is unable to complete if there is an IPv6 adress. While it works in ACM+RNDIS mode, the user experience isn't as good as with "proto 3g": the modem happily serves a local IP (192.168.1.xxx) without internet access. Of course, if the modem has enough time (for example at the second dialup), it will serve a public IP. Modifing the DHCP Lease (to a short interval before connect and back to default while finalizing) is a workaround to get a public IP at the first try. A safe workaround for this is to excercise an offline script of the pingcheck program: simply restart (ifdown - ifup) the connection. Another pitfall is that the modem writes a few messages at startup, which confuses the manufacturer detection algorithm and got disabled. daemon.notice netifd: Interface 'mikrotik' is setting up now daemon.notice netifd: mikrotik (2366): Failed to parse message data daemon.notice netifd: mikrotik (2366): WARNING: Variable 'ok' does not exist or is not an array/object daemon.notice netifd: mikrotik (2366): Unsupported modem daemon.notice netifd: mikrotik (2426): Stopping network mikrotik daemon.notice netifd: mikrotik (2426): Failed to parse message data daemon.notice netifd: mikrotik (2426): WARNING: Variable '*simdetec:1,sim' does not exist or is not an array/object daemon.notice netifd: mikrotik (2426): Unsupported modem daemon.notice netifd: Interface 'mikrotik' is now down A workaround for this is to use the "delay" option in the interface configuration. I want to thank Forum members dchard (in topic Adding support for MikroTik hAP ac3 LTE6 kit (D53GR_5HacD2HnD)) [1] and mrhaav (in topic OpenWrt X86_64 + Mikrotik R11e-LTE6) [2] for sharing their experiments and works. Another information page was found at eko.one.pl [3]. [1]: https://forum.openwrt.org/t/137555 [2]: https://forum.openwrt.org/t/151743 [3]: https://eko.one.pl/?p=modem-r11elte Signed-off-by: Szabolcs Hubai <szab.hu@gmail.com>
Diffstat (limited to 'package/network/utils')
-rw-r--r--package/network/utils/comgt/files/ncm.json12
1 files changed, 12 insertions, 0 deletions
diff --git a/package/network/utils/comgt/files/ncm.json b/package/network/utils/comgt/files/ncm.json
index 7d9a38fe36..df0810ddbc 100644
--- a/package/network/utils/comgt/files/ncm.json
+++ b/package/network/utils/comgt/files/ncm.json
@@ -112,5 +112,17 @@
],
"connect": "AT+ZGACT=1,${profile}",
"disconnect": "AT+ZGACT=0,${profile}"
+ },
+ "\"mikrotik\"": {
+ "configure": [
+ "AT+CFUN=4",
+ "AT+ZGDCONT=${profile},\\\"${pdptype}\\\",\\\"${apn}\\\",0",
+ "AT+ZDHCPLEASE=10",
+ "AT+CFUN=1"
+ ],
+ "waitforconnect": "\\\"+ZCONSTAT: 1,${context_type}\\\",\\\"+ZGIPDNS: ${context_type}\\\"",
+ "connect": "AT+ZGACT=1,${context_type}",
+ "finalize": "AT+ZDHCPLEASE=0",
+ "disconnect": "AT+ZGACT=0,1"
}
}