TECHSHIP IS A GLOBAL SUPPLIER OF WIRELESS COMPONENTS

Register
FAQs /
Question

How to collect initial diagnostics data and logs for Telit cellular modules needed when requesting Techship technical support?

Solution

In order to ease the troubleshooting of technical problems and understand your end-product or application and its usage scenario we ask you to please provide the following information when creating a technical support ticket at: techship.com/technical_support/

Please give a detailed problem description and in what precise circumstances it is present.

Describe the host system:
-Hardware (system board, processor architecture, other peripheral devices...)
-Operating system with detailed versions (E.g. Windows version and build, Linux distribution, kernel version)
-Drivers used and versions (Linux: out-of-tree vendor drivers or in-kernel drivers?)

Details from the cellular module label:
-Model
-SKU/BOM or P/N code
IMEI number

For Linux systems, capture terminal logs from commands:
uname -a
lsusb
lsusb -t
ifconfig -a
ls -l /dev/serial/by-id
ls -l /sys/bus/usb-serial/devices
dmesg

The cellular module logs can be acquired by accessing one of the USB enumerated serial (COM) interfaces or physical UART serial interfaces accepting AT commands. In Windows device manager they are generally found as modem infterface or serial and ports interface types).

Send AT commands to module and capture the text output:
Test that you get a OK reply:
AT
Enable AT command echo:
ATE1
Verbose error reporting:
AT+CMEE=2
Module model:
AT+CGMM
Firmware version:
AT+CGMR
IMEI Code:
AT+CGSN
USB endpoint configuration:
AT#USBCFG?
Serial port configuration:
AT#PORTCFG?
Operational mode:
AT+CFUN?
Selected network access techniques:
AT+WS46?
List network operator info:
AT+COPS?
Network registration status:
AT+CREG?
AT+CGREG?
AT+CEREG?
Signal strength:
AT+CSQ
Last serving cell network information:
AT#SERVINFO
Current network status:
AT#RFSTS
List APN details:
AT+CGDCONT?
List Packet switch enable/disable status:
AT+CGATT?
List PDP profiles status:
AT+CGACT?
List default data connection details:
AT#BND?
List bearers and IP addresses:
AT+CGCONTRDP=
AT+CGPADDR=
AT#FWSWITCH?
AT#SWPKGV
AT#GAUTH?
AT#CGPADDR=
AT#AUTOBND?
AT#AUTOATT?

Additional test commands for Telit LM940/LM960:
AT#FIRMWARE
AT#FIRMWARE?
AT#GETFW
AT#ACTIVEFW?
AT#CACTL?
AT#RXDIV?
AT#RXTOGGLE?
AT#LRXDIV?
AT#LCFC
AT#TEMPSENS?
AT#GPIO?
AT#HWREV
AT#QSS?
AT#USB3TUNE?
AT#USBSWITCH?

Images
Telit logo
Related products
Telit HE910-G HSPA+, GPS, mPCIe
Telit HE910-G-SIM HSPA+, GPS, miniPCIe, SIM card holder
Telit HE910-D HSPA+, miniPCIe, Global
Telit HE910-D-SIM HSPA+, miniPCIe, SIM card holder
Telit LM940A11 LTE CAT-11, GPS, mPCIe
Telit LE910-EU V2 LTE CAT-4, mPCIe
Telit LE910-SV V2 LTE CAT-4, Verizon, mPCIe
Telit LE910-NA V2 LTE CAT-4, AT T, TM, mPCIe
Telit LE910-AU V2 LTE CAT-4, Telstra, mPCIe
Telit HE910-GL SIM UMTS, miniPCIe, SIM card holder
Telit HE910-G (Voice) HSPA+ LGA
Telit HE910-DG HSPA+ LGA
Telit HE910-EUD HSPA LGA
Telit UE910-EUR HSPA LGA
Telit UE910-NAR HSPA LGA
Telit LE910-NA1 LTE CAT-1 LGA
Telit LE910-EU1 LTE CAT-1 LGA
Telit LE910-SV1 LTE CAT-1 LGA
Telit LE910-EU V2 LTE CAT-4 LGA
Telit LE910-NA V2 LTE CAT-4 LGA
Telit LE910D1-E1 LTE CAT-1 LGA
Telit ME910C1-NA S.SKU LTE CAT-M1/NB1 LGA
Telit ME910C1-NA S.SKU GNSS LTE CAT-M1/NB1
Telit ME910C1-E1 LTE CAT-M1/NB1 LGA
Telit ME910C1-E1 GNSS LTE CAT-M1/NB1 LGA
Telit ME910C1-AU LTE CAT-M1/NB1 LGA
Telit ME910C1-AU GNSS LTE CAT-M1/NB1 LGA
Telit LN940 A11 LTE CAT-11 M.2
Telit LN940 A9 LTE CAT-9 M.2
Telit LE910-NA V2 LTE CAT-4, S.SKU, mPCIe
Telit ME910C1-E1 Developer kit
Telit ME910C1-AU Developer Kit
Telit ME910C1-N1 Developer Kit
Telit LE910-NA1 LTE CAT-1 Developer Kit
Telit LE910-EU1 LTE CAT-1 Developer Kit
Telit LE910-SV1 LTE CAT-1 Developer Kit
Telit LM960 LTE CAT-18, GPS, mPCIe
Telit LN941 LTE CAT-6, M.2
Telit LE910C4-NF LTE CAT-4 mPCIe
Telit LE910-NA V2 LTE CAT-4, S.SKU LGA
Telit LE910B1-NA S.SKU
Telit LE910C1-NS LTE CAT-1 Sprint mPCIe
Telit LE910-SVL LTE CAT-1
Telit HE910-GL HSPA+ LGA
Telit ME910C1-NV LTE CAT-M1 Verizon LGA
Telit ME910C1-NV GNSS LTE CAT-M1 Verizon LGA
Telit ME910C1-WW LTE CAT-M1/NB1 LGA
Telit HE910-NAD HSPA+ LGA
Telit UE910-NAD AT&T 3G LGA
Telit LE910-SVG LTE CAT-3 LGA
Telit HE910-NAR HSPA LGA
Telit HE910-D HSPA+ LGA
Telit LE910C1-NA LTE CAT-1 AT&T LGA
Telit LE910C1-NS LTE CAT-1 Sprint LGA
Telit LE910-NAG LTE CAT-3 AT&T LGA
Telit LE910-SVG LTE CAT-3 mPCIe
Telit UE910-EUD HSPA LGA
Telit UE910-N3G HSPA AT&T LGA
Telit LE910-NVG LTE CAT-3 LGA
Telit LE910-NA1 S.SKU
Telit LE910-JN1
Telit LE910C1-AP
Telit LE910C1-EU
Telit LE910B1-NA
Telit LE910B1-SA
Telit LE910-AU V2
Telit LE910-SV V2
Telit LE910B4-NA
Telit LE910C4-NF
Telit ME910C1-NA
Telit ME910C1-NA GNSS
Telit ME910C1-E2
Telit ME910C1-K1
Telit ME910C1-J1
Telit LE910-PCI (LE910-SV1)
Telit LE910-PCI (LE910-EU1)
Telit LE910-PCI (LE910-JN1)
Telit LE910-PCI (LE910-NA1)
Telit LE910-PCI (LE910C1-AP)
Telit LE910-PCI (LE910C1-NA)
Telit LE910C1-EU LTE CAT-1 mPCIe
Telit ME910C1-NV mPCIe
Telit ME910C1-NA mPCIe
Telit LE910-SV V2 (Reel)
Telit LE910C4-EU LTE CAT-4 mPCIe
Telit LE910C4-EU LTE CAT-4 mPCIe SIM
Telit LE910C1-NF
Telit ME310G1-WW CAT-M1/NB-IoT S.SKU LGA
Telit ME910G1-WW CAT-M1/NB-IoT S.SKU LGA
Telit LM940A11, HW Rev. 2, LTE CAT-11, GPS, mPCIe
Telit LE910C4-NF LTE CAT-4 mPCIe SIM
Telit LM960A18 LTE CAT-18 mPCIe
Telit LE910C1-EU LTE CAT-1 mPCIe SIM
Telit LE910C1-AP LTE CAT-1 mPCIe SIM
Telit LE910C1-NF LTE CAT-1 mPCIe
Telit LE910C4-AP LTE CAT-4 mPCIe SIM

Recently added

Question

How to establish a basic data connection using Sierra Wireless GobiNet driver and AT commands

Solution

A basic data connection can be established with AT commands when the Sierra Wireless module is used in USB mode: Qmi/Rmnet. This is supported when using the Sierra Wireless Windows drivers or the GobiNet + GobiSerial drivers. Please be aware that this is not supported when using the Linux in-kernel driver qmi_wwan.

Download and install the host OS drivers from the Techship product webpage. For Linux drivers follow the instructions in the "Linux QMI SDK Application Developers Guide". Make sure to build the GobiNet driver with RAWIP parameter set to 1.

When the drivers are set up correctly in Linux the USB endpoints should be bound as following:

usb-devices
T: Bus=02 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 2 Spd=5000 MxCh= 0
D: Ver= 3.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1
P: Vendor=1199 ProdID=9091 Rev=00.06
S: Manufacturer=Sierra Wireless, Incorporated
S: Product=Sierra Wireless EM7565 Qualcomm® Snapdragon™ X16 LTE-A
S: SerialNumber=UF74248663020633
C: #Ifs= 4 Cfg#= 1 Atr=a0 MxPwr=896mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=GobiSerial
I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=GobiSerial
I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=GobiSerial
I: If#=0x8 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=GobiNet

First, start by enabling the modules network interface bound to the GobiNet driver, default name is usually wwan0. If not found check e.g in "dmesg" what it has been renamed to. Write:

ip link set wwan0 up

Now access the serial modem interface accepting AT commands with a serial interpreter.
In Windows it is the interface found under modem tree in device manager. You can e.g. use a tool like Teraterm to communicate manually with the module.

In Linux the GobiSerial interfaces are listed as ttyUSB interfaces in the /dev/ folder, usually /dev/ttyUSB2 is bound to the modem interface accepting AT commands. Tools like minicom can be used to communicate over a serial interface. For example: minicom -D /dev/ttyUSB2

Check that you get an OK reply from the command AT. Now perform normal initiation commands to have module registered in network, such as setting normal operational mode, entering PIN code if required for SIM card etc.

Define correct APN for your cellular subscription with the AT+CGDCONT command if it is not already correctly entered:

AT+CGDCONT=1, "IPV4V6", "your.operators.apn"

Now you can activate the data connection with the command AT!SCACT=state,pid. For example activating the connection for CGDCONT profile 1:

AT!SCACT=1,1

Once OK is received, you can go ahead and execute a DHCP client on the GobiNet network interface from your Linux host. (In Windows this is all done automatically). For example uou can use dhclient in ubuntu:

dhclient -v wwan0

Now we should have a working network connection in your system over the modules network interface. You can for example test it in Linux by pinging Googles name server:

ping -I wwan0 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from 10.70.245.136 wwan0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=53 time=176 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=53 time=79.6 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=53 time=69.5 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=53 time=67.6 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=53 time=55.5 ms
^C
--- 8.8.8.8 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4008ms
rtt min/avg/max/mdev = 55.533/89.558/175.584/43.687 ms

Please relate to the modules AT commands guide for full explanations of the AT commands. This is a brief example of how to establish a network connection. For automating the procedure additional status checks are highly recommended as well as looking into integrating Sierra Wireless Linux QMI SDK instead of only relying on legacy AT commands.

In Windows 8 and later systems it is recommended to set the module in MBIM USB mode instead of the default QMI/RMNET mode to enable support for Windows built in connection manager. Please see the FAQ section for more details on how to do so.

Question

We cannot acquire an DHCP address over qmi_wwan driver when using Raspbian Linux OS?

Solution

Raspbian uses dhcpd to probe all available network interfaces found in the system, which is problematic for the qmi_wwan driver interface, if it is done before being configured properly when using cellular modules supporting only Raw-IP.

This can be avoided by setting dhcpd to deny the related cellular module network interface (most often named wwan0 by the system).
Add to the /etc/dhcpcd.conf file in Raspbian the following line (in the end):
denyinterfaces wwan0

Now, restart the system (preferably re-power it) so cellular module fully restarts also.

At next startup, the settings should be applied and you can now configure and use the qmi interface as described in some of the others faq's, found on the Techship webpage.

Question

How can we activate and use dual stack IPv4 and IPv6 functionality on the Gosuncn ZTE Welink ME3630 series cellular modules in Linux?

Solution

This can be done by configuring and using the Gosuncn ZTE Welink ME3630 module in Linux the following way:

Check with AT commands that you are using the most recent firmware version on the cellular module:
AT+ZVN
ME3630E1CV1.0B19 [Jan 15 2019 16:03:19]

The module have to be switched from default USB mode in order to support this, in this mode it uses RNDIS interface and drivers instead in host.
This mode can be switched with AT commands:
AT+ZSWITCH=x
AT+ZADSET=r
Restart module:
AT+ZRST

The module will restart now and appear in system with the following USB IDs:
usb-devices
T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=03 Dev#= 9 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=19d2 ProdID=0601 Rev=03.18
S: Manufacturer=Android
S: Product=Android
S: SerialNumber=b950269c
C: #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=500mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=e0(wlcon) Sub=01 Prot=03 Driver=rndis_host
I: If#=0x1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=rndis_host
I: If#=0x2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option

If the option driver is not attached initially it can be done so by force loading the driver:
modprobe option
echo 19d2 0601 > /sys/bus/usb-serial/drivers/option1/new_id

Activate the network interface in the Linux host system (check e.g. with dmesg what system named it to):
ip link set enp0s20u2 up

Make sure you have a cellular subscription and APN that allow usage of IPV4 and IPV6 functionality combined.
Default configuration with setting a empty string lets the module subscribe for an APN from cellular network:
AT+CGDCONT=1,"IPV4V6",""
With defined APN:
AT+CGDCONT=1,"IPV4V6","my.apn"
If you have to modify/set AT+CGDCONT, please re-register in cellular network e.g. by toggling:
AT+CFUN=0
AT+CFUN=1
(Enter PIN again with AT+CPIN if necessary)

Check that you are registered in the cellular network and module are attached on packet switched network and have got an IP:
AT+CGCONTRDP
+CGCONTRDP: 1,5,BREDBAND.TRE.SE,2.70.254.24,,80.251.201.177,80.251.201.178

Now start the network interface data connection:
With empty string APN details in second parameter, then module try to request them from network:
AT+ZECMCALL=1,"",3
Or with APN defined:
AT+ZECMCALL=1,"my.apn",3

You should receive bellow if successful:
+ZECMCALL: CONNECT
OK

Check the status of the network interface activation, both IPV4 and IPV6 information should be listed as bellow if successful:
AT+ZECMCALL?
+ZECMCALL: IPV4, 2.70.254.24, 2.70.254.25, 80.251.201.177, 80.251.201.178
+ZECMCALL: IPV6, 2a02:aa1:1018:5fc2:b532:a78c:7e20:fedb, , 2a02:aa0::55, 2a02:a6
OK

In Linux you should now run a DHCP client on the network interface in order to acquire an IPV4 adress:
dhclient -v enp0s20u2
Listening on LPF/enp0s20u2/56:60:35:1b:9f:7f
Sending on LPF/enp0s20u2/56:60:35:1b:9f:7f
Sending on Socket/fallback
DHCPDISCOVER on enp0s20u2 to 255.255.255.255 port 67 interval 3 (xid=0x914b302a)
DHCPOFFER of 2.70.254.24 from 2.70.254.25
DHCPREQUEST for 2.70.254.24 on enp0s20u2 to 255.255.255.255 port 67 (xid=0x2a304b91)
DHCPACK of 2.70.254.24 from 2.70.254.25 (xid=0x914b302a)
bound to 2.70.254.24 -- renewal in 19393 seconds.

Try ping an IPv4 address using the module network interface:
ping -4 -I enp0s20u2 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from 2.70.254.24 enp0s20u2: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=55 time=31.1 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=55 time=26.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=55 time=44.7 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 5ms
rtt min/avg/max/mdev = 26.776/34.198/44.722/7.650 ms

Try ping an IPv6 address over the module interface:
ping -6 -I enp0s20u2 2600::
PING 2600::(2600::) from 2a02:aa1:1018:5fc2:c2:afb2:2c6e:66f3 enp0s20u2: 56 data bytes
64 bytes from 2600::: icmp_seq=1 ttl=47 time=200 ms
64 bytes from 2600::: icmp_seq=2 ttl=47 time=177 ms
64 bytes from 2600::: icmp_seq=3 ttl=47 time=177 ms
64 bytes from 2600::: icmp_seq=4 ttl=47 time=176 ms
64 bytes from 2600::: icmp_seq=5 ttl=47 time=175 ms
64 bytes from 2600::: icmp_seq=6 ttl=47 time=174 ms
^C
--- 2600:: ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 12ms
rtt min/avg/max/mdev = 174.342/180.176/200.333/9.096 ms

Please note that this functionality is not supported in all firmware versions and target regional variants of the ME3630 series yet. Here tested on the ME3630 E1C version for European target region using ME3630E1CV1.0B19

Question

How-to use automated connection establishment with SIM7600E-h when using RNDIS USB mode

Solution

Both Windows and Linux systems can support RNDIS host drivers for the SIM7600 series modules, this example is done in Linux. There is a open source Linux in-kernel driver supporting rndis host USB endpoints called rndis_host.

By default the Simcom modules are delivered with QMI/RMNET interface enabled, so you will have to change the default USB mode with AT command on the Modem/AT serial ports available over USB.
lsusb
Bus 001 Device 006: ID 1e0e:9001 Qualcomm / Option

Switch from 9001 to mode 9011 for RNDIS:
AT+CUSBPIDSWITCH=9011,1,1
The module should restart automatically and re-enumerate with the new USB IDs
Check with lsusb that you have the Simcom SIM7600 module loaded, VID PID value: 1e0e 9011
lsusb
Bus 001 Device 006: ID 1e0e:9011 Qualcomm / Option

Verify with lsusb -t that the Linux in-kernel driver rndis_host or cdc-ecm drivers are loaded correctly for interface 0 and 1.
It can look e.g. like this:
lsusb -t

/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/8p, 480M
|__ Port 4: Dev 6, If 3, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 6, If 1, Class=CDC Data, Driver=rndis_host, 480M
|__ Port 4: Dev 6, If 6, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 6, If 4, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 6, If 2, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 6, If 0, Class=Communications, Driver=rndis_host, 480M
|__ Port 4: Dev 6, If 5, Class=Vendor Specific Class, Driver=option, 480M

If your system don't load the option serial interfaces correctly, then they can be forcefully loaded as bellow:
modprobe option
echo 1e0e 9011 > /sys/bus/usb-serial/drivers/option1/new_id
See the following Linux kernel commit for details on how to modify the option.c driver in order to auto load the driver:
USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode

For the modules network connection and interface to automatically activate you should have the SIM PIN deactivated or script it so host system provides it to module at every startup.
AT+CPIN=xxxx

A APN name provided by the network carrier which is used to establish a packet data connection to the cellular network is required. If you define a empty string as its default value, will make the module try to subscribe for correct APN name from network, however this works in many cases but not always. If so it has to be configured with commands as bellow:

Check configured APN profiles:
AT+CGDCONT?
You should have minimum the following defined to have module try request details from cellular network:
AT+CGDCONT=1,"IPV4V6",""
AT+CGDCONT=6,"IPV4V6",""
+CGDCONT Profile 1 is used for cellular network registration and profile 6 for the RNDIS network interface data connection.

Define both APN profiles according to the details you have obtained with your cellular subscription. Most often the APN details are same for both registration and data connection, define them to profile 1 and 6.
AT+CGDCONT=1,"IPV4V6","MY-SUBSCRIPTION-APN"
AT+CGDCONT=6,"IPV4V6","MY-SUBSCRIPTION-APN"

Some APN names require additional authentication also, please refer to the AT command: AT+CGAUTH in the AT commands guide on how to define it correctly. Current auth configurations can be checked with command:
AT+CGAUTH?
Most often no auth details are needed for the profiles and they should be empty, profile 1 can be cleared with command:
AT+CGAUTH=1,0
AT+CGAUTH=6,0

If you have modified the APN information, username and passwords it is needed to re-attach to the packet switched network or re-register in the cellular network to activate the new settings. It can be done e.g. with AT+CFUN=0 command followed by AT+CFUN=1 to switch module operation mode (SIM card will be re-initialized also so PIN code have to be given again if PIN check activated).

The module will now establish the data connection according to the new settings.

If everything is working correctly and connection established you can now run a dhcp client on the network interface.
dhclient -v usb0
Listening on LPF/usb0/4a:de:a7:7e:46:07
Sending on LPF/usb0/4a:de:a7:7e:46:07
Sending on Socket/fallback
DHCPREQUEST of 192.168.225.46 on usb0 to 255.255.255.255 port 67 (xid=0xaabce35)
DHCPACK of 192.168.225.46 from 192.168.225.1
RTNETLINK answers: File exists
bound to 192.168.225.46 -- renewal in 21475 seconds.

ping -I usb0 8.8.8.8
PING 8.8.8.8 (8.8.8.8) from 192.168.225.46 usb0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=52 time=167 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=52 time=37.6 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=52 time=44.4 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=52 time=33.6 ms

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 8ms
rtt min/avg/max/mdev = 33.600/70.635/166.972/55.753 ms

Tested on firmware release LE11B12SIM7600M22

Question

What Linux kernel modules and configs are commonly used for communicating with cellular modules over their USB interface?

Solution

Most cellular modules can be supported in Linux by using som of the in-kernel drivers. The physical data interface to the host Linux system is usually done over USB which enumerates a set of different endpoints/interfaces. A set of serial interfaces for Modem/PPP, AT commands, NMEA location data and chipset debug information are almost always available in all configurations.

In addition some type of network endpoint/interface are also available and exposed. This can vary between manufacturers and chipset vendors and can also commonly be configurable by using USB configuration mode switching or through vendor specific AT commands.

Recommended kernel configurations to enable are listed bellow. Many cellular modules base their Linux support on these modules and drivers. Once included in the kernel build, the USB interfaces will be detected and bound correctly out-of-the-box or after applying source code patches to the driver modules.

Configs for USB serial drivers:
CONFIG_USB_SERIAL
CONFIG_USB_SERIAL_GENERIC
CONFIG_USB_SERIAL_WWAN
CONFIG_USB_SERIAL_OPTION
CONFIG_USB_SERIAL_QUALCOMM
CONFIG_USB_ACM

Configs for Modem/PPP support:
CONFIG_PPP
CONFIG_PPP_BSDCOMP
CONFIG_PPP_DEFLATE
CONFIG_PPP_FILTER
CONFIG_PPP_MPPE
CONFIG_PPP_MULTILINK
CONFIG_PPPOE
CONFIG_PPP_ASYNC
CONFIG_PPP_SYNC_TTY

Configs for USB network drivers:
CONFIG_USB_USBNET
CONFIG_USB_NET_QMI_WWAN
CONFIG_USB_NET_CDCETHER
CONFIG_USB_NET_RNDIS_HOST
CONFIG_USB_NET_CDC_NCM
CONFIG_USB_NET_HUAWEI_CDC_NCM
CONFIG_USB_NET_CDC_MBIM

Please relate to the Techship product specific web pages for vendor specific Linux integration guides.

Below is a selection of kernel commits relating to cellular module support in Linux kernels:
qmi_wwan: Add support for Fibocom NL678 series
qmi_wwan: Added support for Telit LN940 series
qmi_wwan: Added support for Fibocom NL668 series
USB: serial: option: add support for GosunCn ME3630 RNDIS mode
USB: serial: option: add support for Simcom SIM7500/SIM7600 RNDIS mode
USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode)
USB: serial: option: add Fibocom NL678 series
USB: serial: option: add Telit LN940 series
USB: serial: option: add Fibocom NL668 series
USB: serial: option: add GosunCn ZTE WeLink ME3630
qmi_wwan: apply SET_DTR quirk to the SIMCOM shared device ID

If you use any of the listed cellular modules, drivers and specified USB modes in the commits above, ensure that your kernel version already include the patch or apply it to your build.

Related products
Huawei ME909u-521 - EU/ASIA
Huawei ME909u-523D - US - AT&T
Huawei ME909u-521 Mini PCI Express - EU/ASIA
Huawei ME909u-523D Mini PCI Express - US - AT&T
Sierra Wireless MC7710
Huawei ME909u-521 developer kit
Sierra Wireless MC7750
Sierra Wireless MC7700
Sierra Wireless MC7304
Sierra Wireless MC7354
Sierra Wireless MC7350
Sierra Wireless EM7305
Sierra Wireless EM7355
Huawei MU709s-2 LGA
Huawei MU709s-2 devkit
Huawei MS2131i-8 USB-stick
Huawei MU709s-2 mPCIe
Huawei ME909s-821 mPCIe
Huawei ME909s-821 LGA
Huawei ME909s-120 mPCIe EU
Huawei ME909s-120 LGA EU
Huawei MU709s-6 mPCIe
SimCom SIM5360E HSPA+ mPCie EU
SimCom SIM7100E LTE SMT EU
SimCom SIM7100E LTE mPCIe EU
SimCom SIM7100A LTE mPCIe US
SimCom SIM7100C LTE mPCIe China
SimCom SIM7230 LTE mPCIe EU
Huawei ME906s-158 M.2 EU
Huawei ME909s-120 LGA dev.kit
Sierra Wireless MC7455 LTE Cat 6
Sierra Wireless EM7455 LTE Cat 6
SimCom SIM7100E LTE mPCIe SIM
SimCom SIM5360E HSPA+ mPCie Audio/GPS
Sierra Wireless MC7430 mPCIe
SimCom SIM5360E-mPCIe SIM
Sierra Wireless EM7430 LTE Cat 6
Techship Starter kit Huawei MU709s
Techship Starter kit Huawei ME909s
SIMCom SIM7500A LTE SMT US
SIMCom SIM5300E HSPA SMT
SIMCom SIM5300E Development kit
SIMCom SIM7500A Development kit
Sierra Wireless WP7502
SIMCom SIM7500E LTE SMT EU
SIMCom SIM7500E Development Kit
Welink ME3630 E1C LCC EU
Welink ME3630 E1C mPCIe EU
SIMCom SIM7500E LTE mPCIe EU
Welink ME3630 U1A LCC (US)
Welink ME3630 U1A mPCIe (US)
SIMCom SIM7500SA LTE mPCIe Audio
SIMCom SIM7000E CAT-M/NB-IoT SMT
Telit HE910-G HSPA+, GPS, mPCIe
Telit HE910-G-SIM HSPA+, GPS, miniPCIe, SIM card holder
Telit HE910-D HSPA+, miniPCIe, Global
Telit HE910-D-SIM HSPA+, miniPCIe, SIM card holder
Telit LM940A11 LTE CAT-11, GPS, mPCIe
Telit LE910-EU V2 LTE CAT-4, mPCIe
Telit LE910-SV V2 LTE CAT-4, Verizon, mPCIe
Telit LE910-NA V2 LTE CAT-4, AT T, TM, mPCIe
Telit LE910-AU V2 LTE CAT-4, Telstra, mPCIe
Telit HE910-GL SIM UMTS, miniPCIe, SIM card holder
Telit HE910-G (Voice) HSPA+ LGA
Telit HE910-DG HSPA+ LGA
Telit HE910-EUD HSPA LGA
Telit LE910-NA1 LTE CAT-1 LGA
Telit LE910-EU1 LTE CAT-1 LGA
Telit LE910-SV1 LTE CAT-1 LGA
Telit LE910-EU V2 LTE CAT-4 LGA
Telit LE910-NA V2 LTE CAT-4 LGA
Telit LE910D1-E1 LTE CAT-1 LGA
Telit LN940 A11 LTE CAT-11 M.2
Telit LN940 A9 LTE CAT-9 M.2
SIMCom SIM7000E Development Kit
Huawei MS2372h-153 LTE USB Dongle EU
SIMCom SIM7600E-H LTE SMT EU
SIMCom SIM7600E-H LTE CAT-4 mPCIe EU
Sierra Wireless EM7565 LTE CAT-12
Welink ME3630 C1C mPCIe CN
SIMCom SIM7600E-H LTE CAT-4 mPCIe SIM
Huawei MS2372h-517 LTE USB Dongle US
SIMCom SIM7600A-H LTE CAT-4 mPCIe Audio
Huawei MS2372h-607 LTE USB Dongle Asia
Welink ME3630 E1C M.2 EU
Welink ME3630 E2C CAT-1 M.2 EU
Telit LE910-NA V2 LTE CAT-4, S.SKU, mPCIe
SIMCom SIM7600SA-H LTE CAT-4 mPCIe
SIMCom SIM7600A-H LTE CAT-4 mPCIe US
SIMCom SIM7600V-H LTE CAT-4 mPCIe Audio Verizon
Telit LE910-NA1 LTE CAT-1 Developer Kit
Telit LE910-EU1 LTE CAT-1 Developer Kit
Telit LE910-SV1 LTE CAT-1 Developer Kit
SIMCom SIM7020E-SUB KIT Developer kit
SIMCom SIM7000G
SIMCom SIM7020E NB-IoT SMT
SIMCom SIM7600SA-H LTE CAT-4 mPCIe with SIM holder
SIMCom SIM7600E LTE CAT-1 mPCIe
SIMCom SIM7600SA LTE CAT-1 mPCIe
SIMCom SIM7600E-H LTE CAT 4 -mPCIE with Audio
Telit LM960 LTE CAT-18, GPS, mPCIe
Telit LN941 LTE CAT-6, M.2
Sierra Wireless EM7511 LTE CAT-12
Sierra Wireless EM7565, CAT-12, M.2 CBRS Enabled
SIMCom SIM7000G Development Kit
SIMCom SIM7000E CAT-M/NB-IoT PCIE
SIMCom SIM7000G CAT-M/NB-IoT/GSM miniPCIe
SIMCom SIM7600E Development Kit
SIMCom SIM7020G-SUB KIT
Sierra Wireless MC-WP7607 LTE CAT-4 mPCIe
Telit LE910C4-NF LTE CAT-4 mPCIe
Telit LE910-NA V2 LTE CAT-4, S.SKU LGA
Telit LE910B1-NA S.SKU
Telit LE910C1-NS LTE CAT-1 Sprint mPCIe
Telit LE910-SVL LTE CAT-1
Telit HE910-GL HSPA+ LGA
SIMCom SIM7906E LTE CAT-6 M.2
SIMCom SIM7906E LTE CAT-6 mPCIe
SIMCom SIM7000A CAT-M/NB-IoT mPCIe
Telit HE910-NAD HSPA+ LGA
Telit LE910-SVG LTE CAT-3 LGA
Telit HE910-NAR HSPA LGA
Telit HE910-D HSPA+ LGA
Telit LE910C1-NA LTE CAT-1 AT&T LGA
Telit LE910C1-NS LTE CAT-1 Sprint LGA
Telit LE910-NAG LTE CAT-3 AT&T LGA
Telit LE910-SVG LTE CAT-3 mPCIe
Telit LE910-NVG LTE CAT-3 LGA
SIMCom SIM7600G-H LTE CAT-4 mPCIe
Telit LE910-NA1 S.SKU
Telit LE910-JN1
Telit LE910C1-AP
Telit LE910C1-EU
Telit LE910B1-NA
Telit LE910B1-SA
Telit LE910-AU V2
Telit LE910-SV V2
Telit LE910B4-NA
Telit LE910C4-NF
Telit LE910-PCI (LE910-SV1)
Telit LE910-PCI (LE910-EU1)
Telit LE910-PCI (LE910-JN1)
Telit LE910-PCI (LE910-NA1)
Telit LE910-PCI (LE910C1-AP)
Telit LE910-PCI (LE910C1-NA)
Telit LE910C1-EU LTE CAT-1 mPCIe
Telit LE910-SV V2 (Reel)
Telit LE910C4-EU LTE CAT-4 mPCIe
Telit LE910C4-EU LTE CAT-4 mPCIe SIM
GosuncnWelink GM500 U1A CAT-4 M.2
Telit LE910C1-NF
SIMCom SIM7070E CAT-M/NB2
SIMCom SIM7070E Development Kit
Telit LM940A11, HW Rev. 2, LTE CAT-11, GPS, mPCIe
Telit LE910C4-NF LTE CAT-4 mPCIe SIM
SIMCom SIM7912G LTE CAT-12 M.2
Telit LM960A18 LTE CAT-18 mPCIe
Question

The importance of using multiple antennas on LTE and 3G cellular modules

Solution

When designing in an LTE or 3G cellular module, using two antennas always offer the best possible signal reception and module performance. For LTE modules, usage of two antennas are mandatory if you want to take full potential in terms of signal quality and downlink data throughput.

Using just one antenna will disable the advance signal processing benefits you can achieve with MIMO antenna technology and approximately decrease downlink throughput by half on a LTE Cat-4 capable device. As we move onwards to even higher data throughputs, even more antenna channels will be required. For example, the new LTE Cat-18 Telit LM960 module need four antennas to utilize its full data throughput capabilities with 4x4 MIMO.

Although MIMO is not available on 3G modules, a second diversity antenna will allow the modules signal processors to improve the received signal quality especially in areas with poor reception. To further maximize the antenna performances and get proper isolation between the antennas, you should also preferably position them as far apart as possible and in different polarization.

A preferred alternative is to use a combined antenna instead of including several antenna elements. These antennas can combine different MIMO/diversity configurations with other RF elements, e.g. GNSS and Wi-Fi and are also available in different forms and mounting options.

Having everything combined in a single antenna unit also eases the installation and decreases the mounting space as well as passthrough holes required, essential for example when installed on a vehicle roof.

Question

Our cellular module, Huawei ME909s series miniPCIe, is not detected in the MikroTik RouterBoard embedded board running RouterOs, what can we do?

Solution

Many host systems running e.g. operating systems like Linux have a very short detection time for peripheral USB devices on the internal miniPCIe sockets before the host system continues to load.

This can result in the cellular module not being detected at all in the host system due to the cellular modules internal boot-up procedure have not yet finished. The D+ signal will be pulled high first after the modules internal boot-up process have completed and then signal its device presence on the USB interface to host system.

When you intend to use a cellular module in these systems and the cellular module cannot be detected, please try to add in a delay to the host systems boot-up procedure in the earliest possible stage, this to allow the cellular module to boot-up correctly first and show its presence to host system before it have passed the peripheral devices detection phase.

The boot-up times for the cellular module can commonly be found in the products hardware guide.
For Huawei ME909s series it is approximately 9 seconds.

For example in Mikrotik RouterOS, this often can be the reason for the cellular module not being detected. Then you can try to adjusting the "boot-delay" parameter from its default 1 second.

Please refer to the RouterOS Wiki for further details on boot-up delays and other useful parameters.

Question

How to collect initial diagnostics data and logs for Simcom SIM7000 series cellular modules, needed when requesting Techship technical support?

Solution

In order to troubleshoot and solve a technical problem, we ask you to please provide information about your system and logs from the related Simcom module when creating a technical support ticket.

Problem description of what exact problem is and in what precise situations present.

Describe the host system:
-Hardware (system board, peripherals...)
-Operating system and detailed versions (E.g. Windows, Linux release, kernel...)
-Drivers and driver versions

Identify the precise details of cellular module found on label:
-Model
-SKU/BOM or P/N code
(For RMA returns the IMEI number is mandatory)

If you are running on a Linux based system, please capture the terminal logs bellow:
uname -a
lsusb
lsusb -t
ifconfig -a
ls -l /dev/serial/by-id
ls -l /sys/bus/usb-serial/devices
dmesg

The logs from the cellular module firmware can be acquired by accessing the USB enumerated serial (COM) interfaces accepting AT commands. They can be named modem, AT, PC UI etc. (In Windows device manager, found under modem or serial interfaces). Send the following AT commands bellow to module and capture the output and include them when creating the the technical support ticket.

Test that you get a reply with command:
AT
Command echo enabled:
ATE1
Basic module info:
ATI
Detailed module version info:
AT+SIMCOMATI
Verbose error reporting:
AT+CMEE=2
Module model:
AT+CGMM
Firmware version:
AT+CGMR
IMEI Code:
AT+CGSN
Operational mode:
AT+CFUN?
Pin status:
AT+CPIN?
Get mobile operation band:
AT+CBAND?
Preferred band selection:
AT+CNBP?
Show network system mode:
AT+CNSMOD?
Preferred order CAT-M and NB-IoT:
AT+CMNB?
Preferred network mode:
AT+CNMP?
List network operator info:
AT+COPS?
Network registration status:
AT+CREG?
Network GPRS registration status:
AT+CGREG?
Network EPS registration status:
AT+CEREG?
Signal strength:
AT+CSQ
Request UE system info:
AT+CPSI?
Packet domain attach status
AT+CGATT?
List APN details/PDP profiles:
AT+CGDCONT?
AT$QCPDPP?
PDP profiles attach status:
AT+CGACT?
Show PDP IP address:
AT+CGPADDR
AT+CGCONTRDP
RM network interface status:
AT$QCRMCALL?
Power Saving Mode Setting:
AT+CPSMS?
Entended-DRX Setting:
AT+CEDRXS?
Get Network APN in CAT-M or NB-IOT:
AT+CGNAPN
Service Domain Preference:
AT+CSDP?
LTE Cat-M cell lock configuration:
AT+MCELLLOCK?
LTE NB-IOT cell lock configuration:
AT+NCELLLOCK?
NB-IOT Scrambling Feature config:
AT+NBSC?
APN configuration mode:
AT+CAPNMODE?
Query RRC State:
AT+CRRCSTATE?
CAT-M and NB-IOT band config:
AT+CBANDCFG?
Module crash reset status:
AT+CEDUMP?
NB-IOT band scan optimization config:
AT+CNBS?
Service Domain Preference For NB-IOT:
AT+CNDS?
Network information:
AT+CENG?

The support ticket can be created after login at: https://techship.com/technical_support/

Question

How do we integrate SparkLan devices using Mediatek MT7612U chipset in Linux systems?

Solution

The Mediatek MT7612U chipset can be supported by the Linux in-kernels wireless drivers starting from kernel version 4.19.
https://wireless.wiki.kernel.org/en/users/drivers/mediatek

(For older kernels please relate to driver source downloadable package "Sparklan Linux Drivers 3.0.0.1 v4" linked in the FAQ attached files section)

Usage of in-kernel driver in Linux kernel 4.19 and later:

Plug in the device and check if the correct Linux driver module is loaded correctly for the wifi module by command lsusb and lsusb -t as bellow:
lsusb
Bus 002 Device 005: ID 0e8d:7612 MediaTek Inc.

lsusb -t
|__ Port 3: Dev 5, If 0, Class=Vendor Specific Class, Driver=mt76x2u, 5000M

If the "Driver=mt76x2u" is not shown the driver module fails to load correctly for the wifi module, please check with command dmesg if the device has been detected at all and if the firmware file have failed to load:

dmesg
...
usb 2-3: USB disconnect, device number 2
usb 1-3: new high-speed USB device number 2 using xhci_hcd
usb 2-3: new SuperSpeed Gen 1 USB device number 3 using xhci_hcd
usb 2-3: New USB device found, idVendor=0e8d, idProduct=7612, bcdDevice= 1.00
usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 2-3: Product: 802.11ac WLAN
usb 2-3: Manufacturer: MediaTek Inc.
usb 2-3: SerialNumber: 000000000
usb 2-3: reset SuperSpeed Gen 1 USB device number 3 using xhci_hcd
mt76x2u 2-3:1.0: ASIC revision: 76120044
mt76x2u 2-3:1.0: Direct firmware load for mediatek/mt7662u_rom_patch.bin failed with error -2
mt76x2u: probe of 2-3:1.0 failed with error -2
...

If that is the case, make sure to download the latest firmware files bellow from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/mediatek and place the firmware files in the directory:
/lib/firmware/mediatek/

Firmware files:
mt7662u.bin
mt7662u_rom_patch.bin

Once in place, reboot the system or replug the USB device and the the correct driver should be loaded for the module.

Question

What firmware versions are related to the specific SKU/BOM codes of cellular modules?

Solution

Sierra Wireless
10839 Sierra Wireless EM7565, CAT-12, M.2 CBRS ENABLED
SKU: 1104207 Firmware: 01.07.02.00 GENERIC

10692 Sierra Wireless EM7565 LTE CAT-12 M.2
SKU: 1103520 Firmware: 01.07.02.00 GENERIC

10375 Sierra Wireless EM7455 LTE Cat 6
SKU: 1103582 Firmware: 02.24.05.06 GENERIC/AT&T/SPRINT/VERIZON
SKU: 1103780 Firmware: 02.24.05.06 GENERIC/AT&T/SPRINT/VERIZON

10427 Sierra Wireless EM7430
SKU: 1103733 Firmware: 02.24.05.06 GENERIC/DOCOMO/KDDI/SOFTBANK/TELSTRA

10374 Sierra Wireless MC7455 LTE Cat 6
SKU: 1103789 Firmware: 02.24.05.06 GENERIC/AT&T/BELL/ROGERS/SPRINT/TELUS/US CELLULAR/VERIZON/VODAFONE

10397 Sierra Wireless MC7430 mPCIe
SKU: 1103737 Firmware: 02.24.05.06 GENERIC/DOCOMO/KDDI/SOFTBANK/TELSTRA

10840 Sierra Wireless EM7511
SKU: 1103989 Firmware: 01.07.02.00 AT&T/GENERIC

Huawei:
10278 Huawei ME909s-120 mPCIe:
SKU: 55010273 Firmware: 11.617.01.00.00
SKU: 55010782 Firmware: 11.617.09.00.00
SKU: 55010946 Firmware: 11.617.14.00.00
SKU: 55010983 Firmware: 11.617.15.00.00

10279 Huawei ME909s-120 LGA EU:
SKU: 55010781 Firmware: 11.617.09.00.00
SKU: 55010782 Firmware: 11.617.15.00.00

Simcom:
10689 SIMCom SIM7600E-H LTE SMT EU
SKU: S2-107EQ-Z1W27 Firmware: LE11 B07 SIM7600M22
SKU: S2-107EQ-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107EQ-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107EQ-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107EQ-Z1W51 Firmware: LE11 B11 SIM7600M22

10690 SIMCom SIM7600E-H LTE mPCIe EU
SKU: S2-107ER-Z1W2L Firmware: LE11 B07 SIM7600M22
SKU: S2-107ER-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107ER-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107ER-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107ES-Z1W51 Firmware: LE11 B11 SIM7600M22

10818 SIMCom SIM7600E-H LTE CAT 4 -mPCIE with Audio
SKU: S2-107ES-Z1W27 Firmware: Firmware: LE11B07SIM7600M22
SKU: S2-107ES-Z1W2L Firmware: LE11B08SIM7600M22
SKU: S2-107ES-Z1W3S Firmware: LE11B09SIM7600M22
SKU: S2-107ES-Z1W4J Firmware: LE11B10SIM7600M22
SKU: S2-107ES-Z1W51 Firmware: LE11B11SIM7600M22

10710 SIMCom SIM7600E-H LTE CAT-4 mPCIe SIM
SKU: S2-107Q0-Z1W27 Firmware: LE11 B07 SIM7600M22
SKU: S2-107Q0-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107Q0-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107Q0-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107Q0-Z1W51 Firmware: LE11 B11 SIM7600M22

SIM7600SA-H SMT type
SKU: S2-107BH-Z1W27 Firmware: LE11 B07 SIM7600M22
SKU: S2-107BH-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107BH-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107BH-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107BH-Z1W51 Firmware: LE11 B11 SIM7600M22

10757 SIMCom SIM7600SA-H LTE CAT-4 mPCIe
SKU: S2-107KX-Z1W27 Firmware: LE11 B07 SIM7600M22
SKU: S2-107KX-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107KX-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107KX-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107KX-Z1W51 Firmware: LE11 B11 SIM7600M22

SIM7600SA-H LTE CAT 4 -mPCIE with Audio
SKU: S2-107KY-Z1W27 Firmware: LE11 B07 SIM7600M22
SKU: S2-107KY-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107KY-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107KY-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107KY-Z1W51 Firmware: LE11 B11 SIM7600M22

10810 SIMCom SIM7600SA-H LTE CAT-4 mPCIe with SIM holder
SKU: S2-107QZ-Z1W2L Firmware: LE11 B08 SIM7600M22
SKU: S2-107QZ-Z1W3S Firmware: LE11 B09 SIM7600M22
SKU: S2-107QZ-Z1W4J Firmware: LE11 B10 SIM7600M22
SKU: S2-107QZ-Z1W51 Firmware: LE11 B11 SIM7600M22

SIM7600E SMT type
SKU: S2-107EP-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107EP-Z1W4D Firmware: LE11 B02 SIM7600M21-A

10812 SIMCom SIM7600E CAT-1 mPCIe
SKU: S2-107ET-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107ET-Z1W4D Firmware: LE11 B02 SIM7600M21-A

SIM7600E LTE CAT 1 -mPCIE with Audio
SKU: S2-107EV-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107EV-Z1W4D Firmware: LE11 B02 SIM7600M21-A

10813 SIMCom SIM7600SA LTE CAT-1 mPCIe
SKU: S2-107KV-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107KV-Z1W4D Firmware: LE11 B02 SIM7600M21-A

SIM7600SA SMT type
SKU: S2-107BG-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107BG-Z1W4D Firmware: LE11 B02 SIM7600M21-A

SIM7600SA LTE CAT 1 -mPCIE with Audio
SKU: S2-107KW-Z1W2P Firmware: LE11 B01 SIM7600M21-A
SKU: S2-107KW-Z1W4D Firmware: LE11 B02 SIM7600M21-A

10305 SimCom SIM7100 LTE mPCIe US
SKU: S2-106EW-Z1L7X Firmware: 4534B03SIM7100A
SKU: S2-106EW-Z1L72 Firmware: 4534B03SIM7100A