Digi Embedded Yocto下使用蜂窝模块
DEY支持并验证过以下这些蜂窝模块
- Telit LE910
- Telit HE910
- Huawei ME909u
- Sierra Wireless MC7710
DEY发行版采用ModemManager守护进程来识别并正确配置蜂窝模块。ModemManager是D-Bus激活的守护进程,用来控制移动宽带(2G/3G/4G)设备和连接,提供统一的高层API接口。在DEY中ModemManager会在启动时运行并开启峰窝模块支持,连接到运营商网络。ModemManager提供一个简单的命令行管理工具mmcli。
配置DEY支持蜂窝模块
在conf/local.conf配置文件中设置下列选项来选择模块和运营商支持。
- CELLULAR_INTERFACE (required): 无线模块启用时创建的网络接口名称,通常是wwan0 (网口驱动)或ppp0 (串口驱动)。
- CELLULAR_APN (required): 运营商或SIM卡指定的接入点名称APN.
- CELLULAR_PIN (optional): SIM卡PIN码,卡未锁定时别定义它,通常留空。
- CELLULAR_AUTO (optional): 如果设置,蜂窝网络接口在启动时会自动启用。
上述配置对于像LE910,ME909u,MC7710等大多数蜂窝模块来说已经够用。这些蜂窝模块不需要pppd来启用网络接口。一些比较早期的,仅支持串口的蜂窝模块,像HE910,需要用pppd来启用网络接口,需要下述额外的配置:
- CELLULAR_PORT (required): 模块串口设备名,通常是ttyUSBn或ttyACMn。仅支持串行接口的模块需配置该项。
- CELLULAR_USER (optional): ppp认证用户名
- CELLULAR_PASSWORD (optional): ppp认证密码
是否需要ppp认证取决于运营商网络。
/etc/network/if-pre-up/ 和 /etc/network/if-post-down/ 中的脚本用在蜂窝模块启用或停用时自动执行,以建立或关闭运营商网络连接。 conf/local.conf中的蜂窝模块参数会被插入到/etc/network/interfaces文件中,比如下面:
# Cellular interface #auto wwan0 iface wwan0 inet manual apn ac.vodafone.es pin 1234
您可以手动编辑这个文件。
通信接口协议
配置示例
本章节列出DEY所支持的蜂窝模块在local.conf中配置实例。在这些例子中我们用movistar.es作为运营商,并用PIN码1234锁定SIM卡。
Telit LE910
CELLULAR_INTERFACE = "wwan0" CELLULAR_APN = "movistar.es" CELLULAR_PIN = "1234" CELLULAR_AUTO = "1"
Telit HE910
CELLULAR_INTERFACE = "ppp0" CELLULAR_APN = "movistar.es" CELLULAR_PIN = "1234" CELLULAR_AUTO = "1" CELLULAR_PORT = "ttyACM0" CELLULAR_USER = "movistar" CELLULAR_PASSWORD = "movistar"
Huawei ME909u
CELLULAR_INTERFACE = "eth1" CELLULAR_APN = "movistar.es" CELLULAR_PIN = "1234" CELLULAR_AUTO = "1"
Sierra Wireless MC7710
CELLULAR_INTERFACE = "wwan0" CELLULAR_APN = "movistar.es" CELLULAR_PIN = "1234" CELLULAR_AUTO = "1"
其它蜂窝模块支持
对于未列在上面的蜂窝模块,Digi官方会提供一个集成指南来帮助用户集成到自己的DEY镜像中。
更详细说明,请参考Digi官方文档 [[http://www.digi.com/resources/documentation/Digidocs/90001945-13/default.htm#reference/r_an_cellular.htm?TocPath%3DDigi%2520Embedded%2520Yocto%7cSystem%2520development%7cTechnical%2520notes%7c_____1|DEY蜂窝模块支持]
如何查看蜂窝模块连网情况
正确配置后的生成的镜像,在启动后会自动运行ModemManager,根据配置连上运营商网络。 这时,您使用ifconfig命令,可以发现多出一个类似wwan0蜂窝网络接口 同时,在命令行中,可以用mmcli命令管理蜂窝模块和连接情况 比如下面命令列出系统中的蜂窝模块
mmcli -L