Some technical details of wireless wide area network (WWAN) modules—User Identity Module (UIM), Mini PCI Express, M.2, Access Point Name (APN), AT command set, Qualcomm MSM Interface (QMI), etc.
User Identity Module (UIM)
Called SIM (subscriber identity module) for the most cases. The SIM circuit is part of the function of a Universal Integrated Circuit Card (UICC) physical smart card.
USB dongle modems usually have built-in SIM slots, on the other hand, WWAN expansion cards access UIM through M.2 or Mini PCI Express connectors. Both M.2 and Mini PCI Express specifications have defined a set of interfaces provided—which includes UIM—through the connector.
- Smart Card (SIM Card) interface pinout
- Close up of contacts on a Smart card with signal names – Wikipedia
- ISO/IEC 7816 – Wikipedia
- Tutorial – Introduction to Smart Cards
The M.2 connector has different keying notches that denote various purposes and capabilities of M.2 hosts and modules, preventing plugging of M.2 modules into feature-incompatible host connectors. You’ll need socket 2 (mechanical key B) in support of WWAN solutions.
- M.2 – Wikipedia
- PCI Express M.2 Specification
- Socket 2 Pinout Diagram (Mechanical Key B)
Mini PCI Express
- PCI Express Mini Card – Wikipedia
- PCI Express Mini Card Electromechanical Specification
- Connector Pin-out Definitions
- PCI Express® Mini Card Electromechanical Specification Revision 2.0 – Scribd
Note: UIM_SPU = VPP
Most WWAN modules use USB interface on M.2 or Mini PCI Express connector to communicate with hosts, some act as a composite USB device to provide multiple application interfaces.
AT Command Interface
- Use 3g/UMTS USB Dongle for WAN connection – OpenWrt Wiki
- Software and AT commands for M2M Modules – M2MSupport.net
- Hayes command set – Wikipedia
Qualcomm MSM Interface (QMI)
- How To Use LTE modem in QMI mode for WAN connection – OpenWrt Wiki
- libqmi – freedesktop.org
- qmicli – Control QMI devices
- ModemManager – freedesktop.org
- mmcli – Control and monitor the ModemManager
International Mobile Subscriber Identity (IMSI)
Read IMSI from SIM
qmicli --device=/dev/cdc-wdm0 --device-open-proxy --uim-read-transparent=0x3F00,0x7FFF,0x6F07
Mobile Country Code (MCC) and Mobile Network Code (MNC)
- Mobile country code – Wikipedia
- getNetworkOperator – TelephonyManager – Android Developers
- getSimOperator – TelephonyManager – Android Developers
Access Point Name (APN)
- Is APN login information stored on SIM cards? – Stack Overflow
- EF ACL – Access Point Name Control List – SIM_UICC_Dir_Files
- EF ACL – USIM (Universal Subscriber Identity Module) in the UICC
Since SIM cards do not contain APN configuration details, it might be a good idea to have an up-to-date APN database for setting up either your WWAN module Wireless Data Service (WDS) or mobile phone data service.
- Running mini PCI-e 3G card with USB – Instructables
- How to acquire IMSI and ICCID from cellular module using libqmi command line tool qmicli in Linux systems? – Techship
- ITU-T V.25ter: Serial asynchronous automatic dialling and control
- ITU-T V.250: Serial asynchronous automatic dialling and control
- 3GPP TS 27.007: AT command set for User Equipment (UE)
- 3GPP TS 31.101: UICC-terminal interface; Physical and logical characteristics
- 3GPP TS 31.102: Characteristics of the Universal Subscriber Identity Module (USIM) application
- 3GPP TS 51.011: Specification of the Subscriber Identity Module – Mobile Equipment (SIM-ME) interface