移远官网

SOC上同时连接两个模组的问题

背景:两个EC801E模组,都通过USB的方式连接到CPU上。目前已知的是EC801E模组仅支持ECM/RNDIS这种USB网口的拨号方式。
当前验证情况:加载了ECM驱动后,会因为这两个USB网卡自动获取到的IP地址等信息都是一样的,导致需要关闭其中一个才能ping通网络,如图所示:


问题:两个EC801E模组是否可以同时使用ECM/RNDIS的拨号方式进行联网?如果可以,应该要怎么配置?如果不支持的话,是否有其他方式可以让两个4G模组同时联网工作?

可以接两个。但是两个都要配置在缺省的路由规则上。
route -n
看看

ping 8.8.8.8 -I usb0
ping 8.8.8.8 -I usb1

是否其中一个不行?

刚才验证了几次,结果不太稳定:
情况1:ping 8.8.8.8 -I usb0 ping 8.8.8.8 -I usb1 ping 8.8.8.8,这三个命令都正常。
情况2:ping 8.8.8.8 -I usb0正常,ping 8.8.8.8 -I usb1不通,ping 8.8.8.8正常。
注:两个模组连接的SIM卡都是正常的

现在这个状态,跟出问题的状态还不一致 :mask:

有的时候两个都可以有的时候不行,那么就是那个模组的问题了,而不是Linux。
检查下不行的时候
route -n
还有AT+QNETDEVCTL?

我这边复现出了刚开始的需要down掉其中一个才能 ping www.baidu.com 的问题。
复现方式
usb0对应模组1。模组1不接SIM卡,或者接入SIM卡但不执行AT+QNETDEVCTL=1,1,1进行拨号。
usb1对应模组2。模组2接SIM卡。

关闭usb0之前,ping 8.8.8.8 -I usb1正常,ping www.baidu.com -I usb1 不通:

关闭usb0之后,ping 8.8.8.8 和 www.baidu.com都正常,如图:

如果是usb0对应的模组接入SIM卡,usb1对应模组不接SIM卡,则如图所示:

route信息如图:

就目前这个验证情况来看,

  1. 如果是usb0异常,usb1联网正常,在不关闭usb0的前提下,ping不通百度。
  2. 如果是usb0联网正常,usb1异常,则能ping通百度,但是ping8.8.8.8有问题(使用的是自己的手机SIM卡,不知道有没有影响)

模组1信息:
image
模组2信息:
image

route信息:

ifconfig信息:

ping 8.8.8.8:

ping www.baidu.com:

并且在ifconfig usb1 down之后,ping 8.8.8.8 -I usb0 还是不行: