TECHSHIP IS A GLOBAL SUPPLIER OF WIRELESS COMPONENTS

Register

SIMCom SIM8200G 5G Sub-6 LGA

Article Number: 11167
Brand: SIMCom
Supplier number: S2-1096P-Z30S5

The SIM8200G is Multi‐Band 5G NR/LTE‐FDD/LTE‐TDD/HSPA+ module solution in a LGA type which supports R15 5g NSA/SA up to 4.0 Gbps data transfer.

It has strong extension capability with rich interfaces including UART,PCIe,USB3.1, GPIO etc. The module provides much flexibility and ease of integration for customer's application.

The package of SIM8200G is LGA form factor. This also minimize the investments of customers, and enables a short time‐to‐market.

It is designed for applications that need high throughput data communication in a variety of radio propagation conditions. Due to the unique combination of performance, security and flexibility, this module is ideally suited for many applications.

Dimensions: 41 mm x 43.6 mm x 2.8 mm
Weight: 11.17g

End-of-life

This product has reached
end-of-life and can not be
ordered any more.

Quantity Price

No prices available

For more information
please contact us at
sales-americas@techship.com

For larger quantities and complete pricing, please sign in or register

Subscribe to stay up to date with the latest about this product.

Subscribe to updates
Region
Europe
Africa
Primary Technology
5G
Fallback
4G LTE
3G
Form Factor
LGA
5G Bands
n1 (FDD 2100)
n2 (FDD 1900)
n3 (FDD 1800)
n5 (FDD 850)
n7 (FDD 2600)
n8 (FDD 900)
n12 (FDD 700)
n20 (FDD 800)
n28 (FDD 700)
n38 (TDD 2600)
n40 (TDD 2300)
n41 (TDD 2500)
n48 (TDD 3600)
n66 (FDD 1700 / AWS-3)
n71 (FDD 600)
n77 (TDD 3700)
n78 (TDD 3500)
n79 (TDD 4500)
LTE Bands
B1 (FDD 2100)
B2 (FDD 1900)
B3 (FDD 1800)
B4 (FDD 1700 / AWS)
B5 (FDD 850)
B7 (FDD 2600)
B8 (FDD 900)
B12 (FDD 700ac)
B13 (FDD 700c)
B14 (FDD 700PS)
B17 (FDD 700bc)
B18 (FDD 800)
B19 (FDD 800)
B20 (FDD 800DD)
B25 (FDD 1900)
B26 (FDD 850)
B28 (FDD 700)
B29 (SDL 700)
B30 (FDD 2300)
B32 (SDL 1500)
B34 (TDD 2000)
B38 (TDD 2600)
B39 (TDD 1900)
B40 (TDD 2300)
B41 (TDD 2500)
B42 (TDD 3500)
B43 (TDD 3600)
B48 (TDD 3600)
B66 (FDD 1700 / AWS-3)
B71 (FDD 600)
UMTS Bands
B1 (2100)
B2 (1900)
B8 (900)
B4 (AWS)
B3 (1800)
B5 (850)
Max DL Speed
2400 Mbps
Max UL Speed
1000 Mbps
GNSS
Yes
GNSS technology
GPS
GLONASS
Galileo
BeiDou
Certification
SRRC
RoHS
REACH
FCC
CTA
CE
CCC
Operating Temperature Range
-30 °C – 70 °C
Chipset
Qualcomm
SDX55
Data Interface
GPIO
ADC
PCM
SDIO 3.0
SPI
USB 3.1
USB 2.0
I2C
Driver Support
Windows 10
Windows 8
Windows 7
Android
Linux
SIMCom SIM8200G 5G Sub-6 LGA Datasheet

Download

Uploaded at
2020-12-08 17:00:37
Last updated
2021-04-07 16:26:32
Version
20210402
Related products
SIMCom SIM8200G 5G Sub-6 LGA

This guide describes the SIM82xx & SIM83xx Series cellular modules AT control commands available and supported

Download

The SIM8200 Series Linux USB User Guide.

Download

Uploaded at
2021-07-09 14:02:55
Last updated
2021-07-09 14:02:55
Version
1.00
Related products
SIMCOM SIM8200EA-M.2 5G
SIMCom SIM8200-M2-EVB2-KIT
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom SIM8202E-M.2 5G
SIMCom SIM8202G-M.2 5G
This document describes SIM8200G hardware interface in great detail.

This document can help users understand both the interface specifications and the electrical and mechanical details of SIM8200G quickly. With the help of this document and other SIM8200G application notes or user guide, users can use SIM8200G to design various applications quickly.

Download

Uploaded at
2020-12-16 08:58:33
Last updated
2023-07-19 08:30:34
Version
V1.13
Related products
SIMCom SIM8200G 5G Sub-6 LGA
This application notes archive contains the following application notes:
FOTA v1.00
FTP(S) v1.00
HTTP(S) v1.00
Linux USB User Guide v1.00
MQTT(S) 1.00
Open Linux Sleep&Wakeup v1.00
SSL v1.00
TCPIP v1.00
TTS v1.00

Download

Uploaded at
2021-07-09 14:01:05
Last updated
2021-07-12 10:40:13
Related products
SIMCOM SIM8200EA-M.2 5G
SIMCom SIM8200-M2-EVB2-KIT
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom SIM8202E-M.2 5G
SIMCom SIM8202G-M.2 5G
This document describes the SIM8200G 5G module antenna port mapping and Antenna design guide to
customer to refer.

Download

Uploaded at
2021-01-29 11:36:28
Last updated
2021-01-29 11:36:28
Version
V1.02
Related products
SIMCom SIM8200G 5G Sub-6 LGA

CE RED certificate for SIMCom SIM8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:40:30
Last updated
2023-07-19 09:04:35
Related products
SIMCom SIM8200G 5G Sub-6 LGA

RoHS and Reach certification for SIM8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:54:07
Last updated
2023-07-19 09:05:09
Related products
SIMCom SIM8200G 5G Sub-6 LGA

Softbank certification for SIM8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:52:01
Last updated
2023-07-19 09:05:01
Related products
SIMCom SIM8200G 5G Sub-6 LGA

Deutche Telecom certification for SIMCom 8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:50:04
Last updated
2023-07-19 09:04:52
Related products
SIMCom SIM8200G 5G Sub-6 LGA

Jate and Telec certification for SIMCom SIM8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:45:26
Last updated
2023-07-19 09:04:44
Related products
SIMCom SIM8200G 5G Sub-6 LGA

KDDI certification SIMCom8200G 5G Sub-6

Download

Uploaded at
2023-07-19 08:58:02
Last updated
2023-07-19 09:05:18
Related products
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom Update Tool and User Guide for Simcom SIM7000 series, SIM7070 series, SIM7080 series, SIM7090 series, SIM7500 series, SIM7600 series, SIM79xx series, SIM820x series, SIM830x series.

Download

Uploaded at
2021-02-05 11:23:39
Last updated
2023-08-09 13:47:40
Version
R1.67
Requirements

Microsoft Windows 7 desktop system or later
SIMCom Windows drivers installed
(Check during update that normal operational mode and firmware update mode drivers load properly in Windows device manager)
SIMCom module firmware update file

Related products
SIMCom SIM7000E CAT-M1/NB1 SMT
SIMCom SIM7000G
SIMCom SIM7000E CAT-M1/NB1 mPCIe
SIMCom SIM7000G CAT-M/NB-IoT/GSM miniPCIe
SIMCom SIM7000A CAT-M SMT Verizon
SIMCom SIM7000A CAT-M SMT AT&T
SIMCom SIM7000A CAT-M mPCIe
SIMCom SIM7070E CAT-M/NB2
SIMCom SIM7070E CAT-M1/NB2 mPCIe
SIMCom SIM7070G CAT-M/NB2
SIMCom SIM7070G CAT-M/NB2 mPCIe
SIMCom SIM7070E (RT) Cat-M1/NB2 mPCIe
SIMCom SIM7080G CAT-M/NB-IoT
SIMCom SIM7500A LTE SMT US
SIMCom SIM7500E LTE SMT EU
SIMCom SIM7500E LTE mPCIe EU
SIMCom SIM7500SA LTE mPCIe Audio
SIMCOM SIM8200EA-M.2 5G
SIMCom SIM8202G-M.2 5G
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom SIM8300G-M.2 5G mmWave
SIMCom SIM8202E-M.2 5G
SIMCom SIM7600G R2 mPCIe
Simcom SIM7600JC-H LTE CAT-4 mPCIe
SIMCom SIM7600SA LTE CAT-1 SMT
SIMCom SIM7600G R2 LTE CAT-1 SMT
SIMCom SIM7600G-H R2 LTE CAT-4 SMT
SIMCom SIM7600NA-H LTE Cat-4 mPCIe
SIMCom SIM7600G-H R2 LTE Cat-4 mPCIe
SIMCom SIM7600E LTE CAT-1 SMT
SIMCom SIM7600V-H LTE CAT-4 M.2 Verizon
SIMCom SIM7600G-H LTE CAT-4 mPCIe
SIMCom SIM7600CE-T LTE CAT-4 mPCIe CN
SIMCom SIM7600A-H LTE CAT-4 mPCIe-SIM
SIMCom SIM7600E-H LTE CAT 4 -mPCIE with Audio
SIMCom SIM7600SA LTE CAT-1 mPCIe
SIMCom SIM7600E LTE CAT-1 mPCIe
SIMCom SIM7600SA-H LTE CAT-4 mPCIe with SIM holder
SIMCom SIM7600V-H LTE CAT-4 mPCIe Audio Verizon
SIMCom SIM7600A-H LTE CAT-4 mPCIe US
SIMCom SIM7600SA-H LTE CAT-4 mPCIe
SIMCom SIM7600A-H LTE CAT-4 mPCIe Audio
SIMCom SIM7600E-H LTE CAT-4 mPCIe SIM
SIMCom SIM7600E-H LTE CAT-4 mPCIe EU
SIMCom SIM7600E-H LTE SMT EU
SIMCom EVB-Kit
SIMCom SIM7600E-H R2 LTE CAT-4 mPCIe EU
Simcom SIM7600E R2 LTE CAT-1 mPCIe
Simcom SIM820x / SIM830x Series 5G Module Windows USB Drivers V1.01

Download

Uploaded at
2021-02-26 17:19:30
Last updated
2021-02-26 17:19:30
Version
V1.01
Requirements
Microsoft Windows 10 Desktop systems
Related products
SIMCOM SIM8200EA-M.2 5G
SIMCom SIM8202G-M.2 5G
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom SIM8300G-M.2 5G mmWave
SIMCom SIM8202E-M.2 5G
Archive containing the Simcom SIM820x and SIM830x series Linux driver integration files, connection manager and guide

Download

Uploaded at
2021-02-26 17:09:54
Last updated
2021-02-26 17:09:54
Version
1
Related products
SIMCOM SIM8200EA-M.2 5G
SIMCom SIM8202G-M.2 5G
SIMCom SIM8200G 5G Sub-6 LGA
SIMCom SIM8300G-M.2 5G mmWave
SIMCom SIM8202E-M.2 5G

This archive contains the SIMCom SIM8200G firmware LE14B03SIM8200M44A update files.

Download

Uploaded at
2023-07-19 09:04:04
Last updated
2023-08-09 14:06:44
Version
LE14B03SIM8200M44A
Requirements

SIMCom's QDL Updater Tool

Related products
SIMCom SIM8200G 5G Sub-6 LGA
Question

How do we connect to a 5G NR network?

Solution

To be able to connect to a 5G network both the module and SIM card need to have 5G technology support. If you have problems with NSA or SA for a specific band make sure that your module actually supports this as well. Read through your product’s hardware guide which can be found on the product’s page. 

Support for 5G NSA/SA on a specific band can also be firmware dependent. Make sure that you have the latest firmware installed on your module. 

This FAQ includes many different AT commands, both 3GPP standard and vendor specific commands, so it’s recommended to have your module’s AT guide with you while troubleshooting.

Perform a network scan with AT+COPS=? and check if your module can find any 5G networks. You can see if it’s a 5G network by looking at the last value in the quadruple. Depending on which technology you use this should be set to:

  • 11 - NR_5GCN (NR connected to a 5G core Network)

  • 12 - NGRAN (NG-RAN access technology)

  • 13 - EUTRA_NR (Dual connectivity of LTE with NR)

If your module can find the 5G network, check your current network configuration with the read command AT+COPS? to make sure it’s set to the correct value. Similarly you can check the NR5G network registration status with the following AT command sequence (note this command only applies for 5G SA) :

AT+C5GREG=2

AT+C5GREG?

You can select the Wireless Data Service with AT+WS46:

  • 36 - NG-RAN only

  • 37 - NG-RAN and E-UTRAN

  • 38 - NG-RAN, E-UTRAN and UTRAN

  • 40 - NG-RAN and UTRAN

Telit 5G related AT commands:

  • Enable your 5G band with AT#BND

  • To enable/disable only the 5G bands AT#5GCTL can be used

  • Check that you're connected to a 5G band with AT#SERVINFO or AT#RFSTS

  • Check that your network supports 5G NSA with AT#5GLINKSTAT?

FN980 does not have SA enabled by default. To enable it run the following commands:

AT#FWSWITCH=0
AT#BND=(Fill in you bands here, see AT guide)
AT#REBOOT

If you are using a Windows PC change the USBCFG to option 2 
AT#USBCFG=2


SIMCom 5G related AT commands:

  • Enable both SA and NSA with AT+CSYSSEL=”nr5g_disable”,0

  • Disable SA with AT+CSYSSEL="nr5g_disable",1

  • Disable NSA with AT+CSYSSEL=”nr5g_disable”,2

  • Configure 5G NSA bands with AT+CSYSSEL=”nsa_nr5g_band”

  • Configure 5G SA bands with AT+CSYSSEL=”nr5g_band”

  • Set your preferred mode with AT+CNMP

    • 55 - WCDMA+LTE+NR5G

    • 71 - NR5G

    • 109 - LTE+NR5G

Sierra Wireless 5G related AT commands:

  • Display your 5GNR information with AT!NRINFO?

  • Enable/disable ENDC (NSA) and SA with AT!RTCA (note that these settings are not persistent across power cycles)


AT!GSTATUS not responding with NR5G fields and looks similar to:

NR5G RSRP (dBm): --- NR5G RSRQ (dB): ---

NR5G SINR (dB): —


The response details are dependent on the network providing the necessary information to the modem. To be sure you get these values the modem has to be in a data call in SA mode

Fibocom 5G related AT commands:

  • Select RAT with AT+GTRAT or RAT and Bands with AT+GTACT

    • 14 - NR-RAN

    • 16 - NR-RAN/WCDMA

    • 17 - NR-RAN/LTE

    • 20 - NR-RAN/WCDMA/LT

For more general information about 5G see FAQ “What is 5G NR?”.

If you are still encountering problems connecting to a 5G network you can create a support ticket: https://techship.com/page/support/technical_support/. Please describe your problem and set up thoroughly and include the logs from this troubleshooting.


Question

How to collect initial diagnostics data for Simcom 5G cellular modules when creating a Techship technical support ticket?

Solution

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

This allows us to get a better understanding of what could relate to the experienced behaviour.

Please provide a detailed problem description and in what situations the problem is present or how it can be reproduced. Please also attach pictures showing the module assembled in your host device with RF interface cables connected between cellular module and the casing and provide datasheets for the antennas used if the problem appears to be a RF related problem such as no network registrations seen, or data throughputs not meeting your expectations etc.

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

Identify the precise details of cellular module found on label (if not visible in attached picture)
-Model
-SKU / BOM or P/N code
-Serial / IMEI number

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

The log outputs from AT commands below can be collected from the cellular module by accessing the USB enumerated serial interfaces that accept AT commands. These are typically found as Modem or Serial type of interfaces in Window device manager, check their related COM port numbers from device manager and use a terminal software like Teraterm, Sscom or similar to send the AT commands to the cellular module. typically the default 115200 bitrate and 8N1 parity settings works well for collecting these details.

In Linux systems the USB serial ports are typically found in path /dev/ and named ttyUSB0, ttyUSB1, ttyUSB2, not all serial ports accept AT commands so you might have to check which of them are the correct one. Please note that if you have Modemmanager process running in your system, it likely already communicate on the USB serial interfaces so you should stop the Modemmanager service prior to attempting to collect the diagnostic logs. Minicom or other terminal software can be used to send the AT commands to the cellular module.

Start by sending an plain AT command followed by enter key to confirm that you get a OK reply and knowing that the AT communication is working.

Now start sending the following AT commands to the module and capture the output into a log text file and include them when creating the technical support ticket at Techship.com. If possible, provide the logs with a SIM card inserted and PIN unlocked, to allow the module to be in normal operational mode and registered in network.

Test that you have a working AT interface opened:
AT

Enabled AT command echo:
ATE1

Basic module info:
ATI

Display V.25TER configurations
AT&V

Detailed module version info:
AT+SIMCOMATI

Verbose error reporting:
AT+CMEE=2

Firmware version:
AT+CGMR

Additional details:
AT+CSUB

Serial number / IMEI:
AT+CGSN

USB endpoint configuration:
AT+CUSBCFG?

PCIe interface configuration:
AT+CPCIEMODE?

SIM card interface, SIM card detect signal and active SIM slot:
AT+UIMHOTSWAPON?
AT+UIMHOTSWAPLEVEL?
AT+SMSIMCFG?

Operational mode:
AT+CFUN?

Pin status:
AT+CPIN?

Active technologies, RF bands, and scan orders:
AT+CNMP?
AT+CSYSSEL=?
AT+CSYSSEL="nr5g_disable"
AT+CSYSSEL="nr5g_band"
AT+CSYSSEL="nsa_nr5g_band"
AT+CSYSSEL="lte_band"
AT+CSYSSEL="w_band"
AT+CSYSSEL="rat_acq_order"

Request UE network system info:
AT+CPSI?
AT+CNSMOD?
AT+CNWINFO?

List network operator info:
AT+COPS?

Network registration status:
AT+CREG=2
AT+CREG?

Network GPRS registration status:
AT+CGREG=2
AT+CGREG?

Network (4G/LTE) EPS registration status:
AT+CEREG=2
AT+CEREG?

Network 5G SA
AT+C5GREG=2
AT+C5GREG?

Signal strength:
AT+CSQ

List APN details/PDP profiles:
AT+CGDCONT?
AT+CGAUTH?

Packet domain attach status:
AT+CGATT?

PDP profiles attach status:
AT+CGACT?

Show PDP IP address:
AT+CGPADDR
AT+CGCONTRDP

Device temperature:
AT+CPMUTEMP
AT+CCPUTEMP=2

Supply voltage:
AT+CBC

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

Question

Example on how to establish a data connection with Simcom SIM8202x-M2 series in Linux using QMI Rmnet over USB interface

Solution

Example on how to establish a data connection with Simcom SIM8202x-M2 series in Linux using QMI Rmnet over USB interface

5G technology introduces new requirements on the interface links between the host systems and cellular modules.
The Linux community continuously commit necessary changes to the kernel drivers and interface management tools to improve the compatibility and performance.
Because of this, it is important that you base your Linux system builds on up-to-date kernel versions, avoiding many problems already solved.

Ensure that you have up-to-date firmware version in the cellular module. Check the dedicated product page here at Techship and the firmware downloads tab or open a technical support ticket.

Early devices and engineering samples came with a older baseline firmware version and need to be update in Windows systems.

This guide specifically only describes how to establish the QMUX data connection part of the QMI rmnet USB interface for the SIM8202x-M2 series modules.
The qmi_wwan kernel driver module and libqmi library is used.

Ensure that you have the module in QMI Rmnet usb mode and qmi_wwan network kernel driver and option usb-serial driver properly loaded to the module interfaces.
Can be checked e.g. through dmesg, usb-devices or lsusb -t commands.

usb-devices
T: Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 2 Spd=5000 MxCh= 0
D: Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1
P: Vendor=1e0e ProdID=9001 Rev=04.14
S: Manufacturer=QCOM
S: Product=SDXPRAIRIE-MTP _SN:
S: SerialNumber=
C: #Ifs= 7 Cfg#= 1 Atr=a0 MxPwr=896mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=techship_serial
I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=60 Driver=techship_serial
I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=techship_serial
I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=techship_serial
I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=techship_serial
I: If#=0x5 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=50 Driver=qmi_wwan
I: If#=0x6 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=usbfs

If the qmi_wwan and option drivers do not get correctly loaded in your current system build and kernel version, please refer to the manufacturer Linux integration guide.

Alternatively you can try compile our modified out-of-kernel driver module variants: techship_qmi_wwan and techship_serial and load them in your system.
See the git readme files for details on pre-requirements, how to clone, compile and use the make file options to install the drivers.

They are available in the following git repository: https://bitbucket.org/storjor/techship_linux_drivers/

Once you have drivers correctly loaded, start by disabling the related qmi_wwan network interface name:
ip link set dev wwan0 down

Ensure RAW IP configuration is enabled:
sh -c "echo 'Y' > /sys/class/net/wwan0/qmi/raw_ip"
(observe the path name including the network interface name, update to match the interface name used in your system)

Create a virtual mux interface for the qmi network interface:
sh -c "echo '1' > /sys/class/net/wwan0/qmi/add_mux"
(observe the path name including the network interface name, update to match the interface name used in your system)

Configure the data format on module side:
qmicli -p -d /dev/cdc-wdm0 --device-open-qmi --wda-set-data-format=link-layer-protocol=raw-ip,ul-protocol=qmap,dl-protocol=qmap,dl-max-datagrams=32,dl-datagram-max-size=31744,ep-type=hsusb,ep-iface-number=5

Here in-between you should perform necessary operations to the module prior to having the cellular network data connection established.
Things like SIM state and PIN code entry, module device registration in the cellular network, APN profile management etc.

Refer to the qmicli manual pages for details on the control commands that can be supported by the libqmi library and qmicli command line interface. Note however that not all qmi commands are supported by all cellular module vendors and might be dependant on chipset families, firmware versions and additional vendor specific command etc.
https://www.freedesktop.org/wiki/Software/libqmi/

Once module is ready and registered in cellular network we can proceed to configure and set up the data connection.

Bind the virtual mux network interface we created earlier to the client ID (CID) that gets opened, the CID id is given back in the reply:
qmicli -p -d /dev/cdc-wdm0 --device-open-qmi --wds-bind-mux-data-port=mux-id=1,ep-iface-number=5 --client-no-release-cid

It is important to use the --client-no-release-cid attribute here to keep the tunnel open at all time while the data connection is established.
If the client id CID linked to the network connection is closed, then the data connection on the qmux virtual network interface will also be closed.

Start the cellular network data connection in the normal way now, include the --client-no-release-cid attribute and use the already open CID ID you got back from previous command reply. E.g. like this:
qmicli -p -d /dev/cdc-wdm0 --device-open-qmi --wds-start-network=apn=data.tre.se,ip-type=4 --client-no-release-cid --client-cid=##
Store the packet data handle id from the command reply, to re-use when stopping the network data connection.

Request the cellular data connection IP details from the module and network with command:
qmicli -p -d /dev/cdc-wdm0 --device-open-qmi --wds-get-current-settings --client-no-release-cid --client-cid=##

Bring up the main QMI RMNET network interface:
ip link set dev wwan0 up

Apply the IP address to the qmux interface that you acquired through qmicli --wds-get-current-settings above, e.g.:
ip addr add 2.64.116.145 dev qmimux0

Apply the given MTU size to the qmux interface that you acquired through qmicli --wds-get-current-settings above, e.g.:
ip link set mtu 1500 dev qmimux0

Bring up the QMUX virtual network interface:
ip link set dev qmimux0 up

You should now have a working cellular network data connection.

Test it e.g. by sending a ping over the qmux interface:
ping -I qmimux0 8.8.8.8 -c 4
PING 8.8.8.8 (8.8.8.8) from 2.68.152.91 qmimux0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=57 time=31.5 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=57 time=29.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=57 time=36.7 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=57 time=36.0 ms

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 8ms
rtt min/avg/max/mdev = 29.821/33.494/36.690/2.911 ms

Apply appropriate network interface routing suitable for your use-case, e.g:
ip route add default dev qmimux0

the qmicli --wds-get-current-settings give back DNS server addresses also if they are defined by the cellular network.
Depending on how your Linux distribution handle DNS servers you can add them or instead use a public DNS server.

To stop the cellular data network connection:
Bring down the virtual mux interface:
ip link set qmimux0 down

Flush the ip addresses:
ip -4 -6 address flush dev qmimux0

Use the --wds-stop-network attribute to stop the data connection in module, include the packet data handle and the client ID from when establishing the connection.
qmicli -p -d /dev/cdc-wdm0 --device-open-qmi --wds-stop-network=########## --client-cid=##
Note: by not adding the --client-no-release-cid attribute this client ID will be closed after command execution.

It is up to the host application to manage and poll the connection state of the cellular module.
E.g. it the connection is lost temporarily due to no network coverage in the current location, the host application should tear down and re-establish the data connection when cellular module is registered in network again.

If the data connection fails for some reason several times, ensure that the connect retry attempts do not take place continuously without some extended delays in-between. Depending on the cellular network operator, they can enforce lock-out on your subscription/device for certain time periods in order to protect the network.

Question

Example on how to establish a data connection with Simcom SIM8202x-M2 series in Linux using MBIM network interface over USB

Solution

Example on how to establish a data connection with Simcom SIM8202x-M2 series in Linux using MBIM network interface over USB

5G technology introduces new requirements on the interface links between the host systems and cellular modules.
The Linux community continuously commit necessary changes to the kernel drivers and interface management tools to improve the compatibility and performance.
Because of this, it is important that you base your Linux system builds on up-to-date kernel versions, avoiding many problems already solved.

Ensure that you have up-to-date firmware version in the cellular module. Check the dedicated product page here at Techship and the firmware downloads tab or open a technical support ticket.

Early devices and engineering samples came with a older baseline firmware version and typically need to be updated in a Windows system.

This guide describes how to establish a MBIM data connection in Linux using libmbim library and mbimcli command line interface for SIM8202x-M2 series modules when connected over USB to the host system.
The cdc_mbim kernel driver module and libmbim library is used.

Ensure that you have the Simcom module in MBIM usb mode and cdc_mbim network kernel driver and option usb-serial driver properly loaded to the module interfaces.
It can be checked e.g. through dmesg, usb-devices or lsusb -t commands.

usb-devices
T: Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0
D: Ver= 3.20 Cls=ef(misc ) Sub=02 Prot=01 MxPS= 9 #Cfgs= 1
P: Vendor=1e0e ProdID=901e Rev=04.14
S: Manufacturer=QCOM
S: Product=SDXPRAIRIE-MTP _SN:
S: SerialNumber=
C: #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=896mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=techship_serial
I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=40 Driver=techship_serial
I: If#=0x2 Alt= 0 #EPs= 1 Cls=02(commc) Sub=0e Prot=00 Driver=cdc_mbim
I: If#=0x3 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
I: If#=0x4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=60 Driver=techship_serial
I: If#=0x5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=42 Prot=01 Driver=usbfs

If the option serial drivers are not correctly loaded in your current system build and kernel version, you can try compile our modified option kernel driver module techship_serial from git link below and load them into your system build.
See the git readme files for details on pre-requirements, how to clone, compile and use the make file options to install the drivers.

They are available in the following git repository: https://bitbucket.org/storjor/techship_linux_drivers/

Refer to the mbimcli manual pages for details on the control commands that can be supported by the libmbim library and mbimcli command line interface. Note however that not all mbim commands are supported by all cellular module vendors and might be dependant on chipset families, firmware versions and additional vendor specific command etc.
https://www.freedesktop.org/wiki/Software/libmbim/

Example of how to set up a cellular data connection:
Note! A working MBIM network interface data connection requires that the MBIM control message tunnel is kept open at all time also.
To keep it open, start a new session with a mbimcli command, and keep the session open after the command execution by the --no-close attribute.
The Session ID / Transaction ID number (TRID) that is opened with the mbimcli command will be given back in the reply, save it for use in the next mbimcli command.
If the session ID linked to the network data connection is closed, then the data connection on the network interface will also be closed.

Check cellular RF radio status:
mbimcli -p -d /dev/cdc-wdm0 --query-radio-state --no-close
If not enabled, set it active:
mbimcli -p -d /dev/cdc-wdm0 --set-radio-state=on --no-close --no-open=##

Check SIM card subscriber state:
mbimcli -p -d /dev/cdc-wdm0 --query-subscriber-ready-status --no-close --no-open=##
If pin is needed, enter it using --enter-pin command:
mbimcli -p -d /dev/cdc-wdm0 --enter-pin=#### --no-close --no-open=##

Check cellular network registration state:
mbimcli -p -d /dev/cdc-wdm0 --query-registration-state --no-close --no-open=##

If not registered already, try using register automatic:
mbimcli -p -d /dev/cdc-wdm0 --register-automatic --no-close --no-open=##

Check the packet data service state:
mbimcli -p -d /dev/cdc-wdm0 --query-packet-service-state --no-close --no-open=##

If packet service state is not attached, use attach command:
mbimcli -p -d /dev/cdc-wdm0 --attach-packet-service --no-close --no-open=##

To to start a data connection use the connect command, with the desired parameters for PDP APN, IP type, auth details, etc.
mbimcli -p -d /dev/cdc-wdm0 --connect=apn='data.tre.se',ip-type='ipv4v6' --no-close --no-open=##

Bring down the MBIM network interface:
ip link set dev wwan0 down

Clear any existing IP address and routes:
ip -4 -6 address flush dev wwan0
ip -4 -6 route flush dev wwan0

The mbimcli connect command returns the IP, gateway, DNS, and MTU details for the data connection if established successfully.
Enter the IPv4 details to the network interface in the Linux host system, e.g.:
ip address add 2.70.103.209/30 dev wwan0
ip link set mtu 1500 dev wwan0

Enter the IPv6 details to the network interface in the Linux host system, e.g.:
ip -6 addr add 2a02:aa1:1021:b9d1:4fb:e1c9:589c:d53f/64 dev wwan0
ip -6 link set mtu 1500 dev wwan0

Enable the network interface:
ip link set dev wwan0 up

Apply appropriate network interface routing suitable for your use-case, e.g:
ip route add default dev
ip -6 route add default dev wwan0

You should now have a working cellular network data connection.

Test it e.g. by sending ping requests over the interface:
ping -I wwan0 8.8.8.8 -c 4
PING 8.8.8.8 (8.8.8.8) from 2.70.103.209 wwan0: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=119 time=224 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=119 time=42.7 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=119 time=30.7 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=119 time=38.4 ms

--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 30.657/84.031/224.373/81.140 ms

ping -6 -I wwan0 2600:: -c 4
PING 2600::(2600::) from 2a02:aa1:1021:b9d1:8847:afd4:e35a:aa29 wwan0: 56 data bytes
64 bytes from 2600::: icmp_seq=1 ttl=52 time=173 ms
64 bytes from 2600::: icmp_seq=2 ttl=52 time=153 ms
64 bytes from 2600::: icmp_seq=3 ttl=52 time=152 ms
64 bytes from 2600::: icmp_seq=4 ttl=52 time=208 ms

--- 2600:: ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 152.108/171.523/208.073/22.623 ms

To stop the cellular data network connection use mbimcli disconnect command.
Use the Session ID from the previous mbimcli command reply in --no-open=## attribute, but do not include the --no-close attribute, doing so closes the session afterwards.
mbimcli -p -d /dev/cdc-wdm0 --disconnect --no-open=##


Bring down the interface:
ip link set dev wwan0 down

Clear any remaining IP address and routes:
ip -4 -6 address flush dev wwan0
ip -4 -6 route flush dev wwan0

It is up to the host application to manage and poll the connection state of the cellular module.
E.g. if the connection is lost temporarily due to no network coverage in the current location, the host application should tear down and re-establish the data connection when cellular module is registered in network again.

If the data connection fails for some reason several times, ensure that the connect retry attempts do not take place continuously without some extended delays in-between.
Depending on the cellular network operator, they can enforce lock-out on your subscription/device for certain time periods in order to protect the network from being flooded by requests.