Hands On LTE on OpenWrt

  • To get the LTE modem working in OpenWrt you need to include some specific packages.
  • There are also some optional packages that you can include since they come in handy.
  • kmod-usb-wdm
  • kmod-usb-net
  • kmod-usb-net-qmi-wwan
  • libqmi
  • uqmi
  • kmod-mii
opkg update
opkg install kmod-mii kmod-usb-net kmod-usb-wdm kmod-usb-net-qmi-wwan uqmi

For Serial Support (AT Commands)

  • kmod-usb-serial
  • kmod-usb-serial-option
  • kmod-usb-serial-wwan
opkg update
opkg install kmod-usb-serial-option kmod-usb-serial kmod-usb-serial-wwan
  • qmi-utils
  • picocom
  • luci-proto-qmi
opkg update
opkg install picocom qmi-utils uci-proto-qmi
  • After you installed the packages reboot the Access Point.
  • If everything works as intended you should see the following device
ls -l /dev/cdc-wdm0
  • Now you can try to interact with the modem.
uqmi -d /dev/cdc-wdm0 --get-data-status
#This is the return
"connected"
 
uqmi -d /dev/cdc-wdm0 --get-signal-info
#This is the return
{
	"type": "lte",
	"rssi": -69,
	"rsrq": -11,
	"rsrp": -96,
	"snr": 11.000000
}
 
uqmi -d /dev/cdc-wdm0 --get-system-info
#This is the return
{
	"wcdma": {
		"service_status": "none",
		"true_service_status": "none",
		"preferred_data_path": false
	},
	"lte": {
		"service_status": "available",
		"true_service_status": "available",
		"preferred_data_path": false,
		"domain": "cs-ps",
		"service": "cs-ps",
		"roaming_status": "off",
		"forbidden": false,
		"mcc": "655",
		"mnc": "07",
		"tracking_area_code": 18,
		"enodeb_id": 18353,
		"cell_id": 80,
		"voice_support": true,
		"ims_voice_support": false,
		"cell_access_status": "all calls",
		"registration_restriction": 0,
		"registration_domain": 0
	}
}
  • The UCI system includes support for LTE confguration in /etc/config/network.
  • The MESHdesk firmware will create the config section based on the configuration returned by the controller.
  • Here is a sample section as reference
config interface 'wwan'
	option ifname 'wwan'
	option disabled '0'
	option wan_bridge '0'
	option device '/dev/cdc-wdm0'
	option apn 'lte.broadband.is'
	option proto 'qmi'
	option auth 'none'
  • You can also install the luci-proto-qmi package which essentially does the same that MESHdesk and APdesk does but only local on the Access Point.
  • We can use picocom terminal to reach the LTE modem
 picocom /dev/ttyUSB2
  • I had to first issue the following commands before the modem returned something for CUSD
AT+CMGF=1
OK
ATZ
OK
AT+CUSD=1,"*101#",15
OK
 
+CUSD: 0,"Balance: R 0.00 .Data: 25.83 MB.",15
  • You can allos issue the following command without needing to log into picocom
 echo 'AT+CUSD=1,"*101#",15' | picocom -qrix 10000 /dev/ttyUSB2
#Here is what my provider returned
+CUSD: 0,"Balance: R 0.00 .Data: 6.40 MB.",15
  • technical_lte.txt
  • Last modified: 2024/02/17 20:20
  • by system