Compatible mPCI-E Modems
There are a variety of mPCIe USB modems available providing HDSPA/3G/GPRS functionality
Sierra Wireless MCxxxx 3G/4G AirPrime series are the most popular choice with current high end LTE offerings and have the advantage of older models being widely available in bulk at low cost from various wholesale sources, so are ideal for both low and high volume usage. SIMCOM and QUECTEL also supply modems aimed for industrial usage and are available from various resellers world wide at competitive prices.
mPCIe modems usually provide two serial ports for communicating with the modem via AT commands and a optional third for a GPS feed if the modem supports it. Having two AT command ports is a distinct advantage over non-USB direct serial port modems as this allows you to assign one to the OS to provide the PPP connection, the other can then be used to send SMS messages or issue other AT nework service commands whilst not disrupting the active ppp network connection.
OS Support for most of the mPCIe modems available is included within the Linux kernel so no additional drivers are needed, see below list of modems we have tested.
The modem is connected to the host via the mPCIe slot's USB connections and appears as several /dev/ttyUSBx serial ports after boot up, the amount of serial ports and port number for the AT and GPS interfaces varies from modem to modem.
On boot-up the OS will show multiple ttyUSB serial port end points attached to the modem however only a maximum of 3 will be usable for our purposes, the remainder being for other proprietary software interfaces. The specific ttyUSBx port assigned to each modem function can vary between boots as the on board RS232 UART is also attached via USB and it cannot be guaranteed which one will be detected first.
For convenience we have provided some pre-written udev rules for several modem types (as well as the on board USB RS232 adapter) which will consistantly create the below symlink shortcuts at each boot cycle :
|/dev/modemAT||Modem Primary AT Command Port|
|/dev/modemPPP||Modem PPP Connection Port|
|/dev/modemGPS||Modem GPS NEMA Feed*|
|/dev/ttyS1||USB RS232 UART|
* Older Sierra Wireless modems require the use of a special passive GPS antenna fitted to the AUX/GPS connector, check modem datasheet for antenna specification needed
In order to configure these symlinks the respective udev rule should be placed in /etc/udev/rules.d
The rules as downloaded are mutually exclusive so please only install the rule needed to match the modem type installed.
||GPS Option||Fastest PPP Port||udev rule|
|MC7304/7354 LTE||Yes||QMI Direct IP||20-modem-7304.rules|
|MC7455 LTE||Yes||QMI Direct IP||20-modem-7304.rules|
|QUECTEL EC20 LTE***||Yes||QMI Direct IP||20-modem-ec20.rules|
|QUECTEL EC21 LTE***||Yes||QMI Direct IP||20-modem-ec21.rules|
|QUECTEL EC25 LTE***||Yes||QMI Direct IP||20-modem-ec21.rules|
|QUECTEL BG96 LTE-CAT1M***||Yes||QMI Direct IP||20-modem-ec21.rules****|
|SIMCOM 7100 LTE***||Yes||QMI Direct IP||20-modem-7100.rules|
*** Requires Raspberry Pi Kernel 4.9.19 or later**** Available from RAK Wireless in mPCIe format, RAW-IP format, modemstat command doesn't work use qmi-cli
LTE Modems for North America are often carrier locked, and so require matching firmware pre-loading onto them before they will work, the chosen carrier type (e.g. AT&T, Verizon) should be specified during the purchasing process to ensure compatibility with your chosen cellular network.
Many of the modems above cover different regions and additionaly in the case of LTE modems cover different LTE Bands, so it's worth double checking with your modem vendor which modem is most suitable for the target region.
[ wget --no-check-certificate 'https://drive.google.com/uc?export=download&id=0B8gkYppHOJNMVC01TldjbHVEM1U' -O modem-rules.tar ]