TECHSHIP IS A GLOBAL SUPPLIER OF WIRELESS COMPONENTS
SIM7906E M.2 S2-1085Supplier number:
SIMCom SIM7906E is an LTE CAT-6 module for Europe in M.2 format.
It is designed for applications that need high throughput data communication in a variety of radio propagation conditions.
The AT commands of SIM7906E-M2 are mostly compatible with SIM7500/SIM7600 Series modules.
Document summarizing and describing the GPS systems epoch roll over dates in Simcom products GPS trackers and how to take precaution for it.
This archive contains the Windows operating system drivers for the SIM7000, SIM7100, SIM7230, SIM7500, SIM7600, SIM7800 series Qualcomm chipset based cellular modules. Please refer to the installation instructions document for USB mode selection details.
This archive contains the SIMCom SIM7500 - SIM7600 series modules Linux NDIS driver and system integration guide
This archive contains the Simcom SIM7500 and SIM7600 Series Linux Network NDIS driver installation files and guide on how to install them without rebuilding the kernel.
Please relate to FAQ "How to integrate Simcom SIM7500/SIM7600 Series Linux NDIS driver without rebuilding kernel" for further details.
How to set up a simple data connection over Qualcomm QMI interface using libqmi and driver qmi_wwan in Linux?
Several cellular modules based on Qualcomm chipsets implements the Qualcomm MSM QMI RMNET Interface.
There is a open source Linux in-kernel driver supporting this interface called qmi_wwan. The helper library libqmi can be used to communicate with the cellular devices over the interface and do cellular module configurations to control and trigger the data connection over the cellular network.
Install the libqmi Linux library using e.g. your OS package manager like apt etc.
(Check out the official libqmi page here: https://www.freedesktop.org/wiki/Software/libqmi/)
Please be aware that libqmi is a 3rd party software not distributed by the chipset or module vendors. So full compatibility on all available commands should not be expected.
There are Qualcomm chipset standard QMI commands and in addition vendors specific custom QMI commands not supported by all manufacturers, but still available in libqmi. There are also new QMI commands not supported in older chipsets and vice versa, old QMI commands no longer supported in new chipset series.
Verify that you have the Linux in-kernel qmi_wwan driver installed and loaded for the cellular modules QMI interface endpoint over USB:
Can look like this:
|__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=qmi_wwan, 480M
If the driver is not loaded correctly, please verify that the cellular module is set to expose QMI RMNET network interface endpoint in its configuration. How to do so can often be found in AT commands guides, Linux implementation guides and similar from the cellular module vendors.
Libqmi library include a command line tool qmicli that can be used in a more convenient way communicate directly with the module over QMI interface for testing, scripting and troubleshooting.
The qmicli help will output information about all commands available:
The qmi_wwan network control interfaces for modules are usually named like cdc-wdm# under /dev/ path.
Use the attribute --device or -d to specify it for qmicli in your command execution:
qmicli -d /dev/cdc-wdm0
In order to ease usage of the QMI interface and handle parallell command requests, libqmi include a proxy function to handle it correctly on the QMI interface, To use it, make sure to have the the attribute present in the qmicli command:
Example commands on how to communicate
Request module manufacturer:
qmicli -p -d /dev/cdc-wdm0 --dms-get-manufacturer
Get module model:
qmicli -p -d /dev/cdc-wdm0 --dms-get-model
Get firmware version:
qmicli -p -d /dev/cdc-wdm0 --dms-get-revision
Get module IDs (IMEI etc.):
qmicli -p -d /dev/cdc-wdm0 --dms-get-ids
Get SIM card status:
qmicli -p -d /dev/cdc-wdm0 --uim-get-card-status
The script qmi-network can be used to establish a simple data connection, it will automatically try to verify the IP framing type match them correctly between qmi_wwan driver and module (Raw-IP vs. 802.3 IP framing).
Create a config file containing your network operator APN details and if needed, the username and password.
Save it e.g. in the default location /etc/qmi-network.conf
The parameter --profile=[PATH] can be used to define the path to config when executing qmi-network.
Example config file content: APN details and enabling of proxy usage.
Add the username and password lines if it is needed for your APN:
Once the APN information is saved, you can start the network connection with the command:
qmi-network /dev/cdc-wdm0 start
The name of the related network interface in the Linux system can be acquired with the command:
qmicli -p -d /dev/cdc-wdm0 --get-wwan-iface
Once you see "Network started successfully" message, you can send a DHCP request on the network interface.
Please note that not all DHCP clients in Linux can handle Raw-IP format but udhcpc support it.
udhcpc -q -f -i wwan0
The IP information from the cellular network can also be acquired and set manually to the network interface by the user or scripting, the correct address details can be acquired from the cellular module over QMI with command:
qmicli -p -d /dev/cdc-wdm0 --wds-get-current-settings
If the connection was successfully set up and established, you now have a data connection. Ping request to a remote server using the cellular network interface can prove this:
ping -I wwan0 22.214.171.124
The ifconfig Linux tool can show the current details for the network interface:
To bring down and stop the cellular network connection, please use the stop command bellow:
qmi-network /dev/cdc-wdm0 stop
The ModemManager tool for Linux is based on libqmi. NetworkManager and ModemManager . Please note however that these two tools expect the cellular module interfaces to only be used by them so if you manually want to use the libqmi library or AT commands interfaces, please turn off/disable ModemManager and NetworkManager first.
The libqmi is a generic open source library for Linux systems and QMI protocol from Qualcomm, therefor there are several commands only working on selected devices and not necessarily on supported in the specific device you use, resulting in an error message.
How to collect initial diagnostics data and logs for Simcom cellular modules, needed when requesting Techship technical support?
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 module when creating a technical support ticket.
Detailed problem description and in what situations it present or can be reproduced.
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:
-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:
ls -l /dev/serial/by-id
ls -l /sys/bus/usb-serial/devices
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:
Command echo enabled:
Basic module info:
Detailed module version info:
Verbose error reporting:
Last error report:
USB endpoint configuration:
List current configuration:
Request UE system info:
Preferred network mode:
Preferred band selection:
Preferred acquisition order:
List network operator info:
Network registration status:
Network EPS registration status:
Packet domain attach status
List APN details/PDP profiles:
PDP profiles attach status:
Show PDP IP address:
RM network interface status:
The support ticket can be created after login at: https://techship.com/technical_support/
What Linux kernel modules and configs are commonly used for communicating with cellular modules over their USB interface?
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:
Configs for Modem/PPP support:
Configs for USB network drivers:
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.
UMTS Bands: B1 (2100), B2 (1900), B8 (900), B4 (AWS), B3 (1800), B5 (850) | MIMO (Multiple-Input Multiple-Output): Yes | LTE Bands: B1 (2100), B2 (1900), B3 (1800), B4 (AWS), B7 (2600), B12 (700ac), B13 (700c), B20 (800DD), B5 (850), B25 (1900), B26 (US 850 Ext), B29 (US 700de Lower), B41 (TDD 2500), B30 (2300 WCS) | Manufacturer: Sierra Wireless | LTE Region: Europe, North America, Asia, South America, Africa | Module KEY: B | FOTA Firmware Updates: Yes | Form Factor: M.2 3042 | Technology: LTE - cat 6 | Antenna Interface: IPEX MHF-4 | GPS: Yes | GNSS technology: GPS, GLONASS, BeiDou | Max DL Speed: 300 Mbps | Max UL Speed: 50 Mbps | Chipset: Qualcomm | Operating Temperature Range: -40 °C – 85 °C | Driver Support: Windows 7, Linux, Android, Windows 8.1, Windows 10 | Interface: USB 2.0, USB 3.0 | Voice Call Support: No | GNSS antenna support: Passive, Active 3.3VDC | SIM interface: Through M.2 connector, Dual SIM interface | GPIO: Yes | Carrier Certification: AT&T, Verizon, Sprint, Vodafone, Rogers | Extended Operating Temperature Range: -40 °C – 85 °C | Certification: FCC, CE, GCF, PTCRB, IC, CE RED | Size: 42 x 30 x 2.3 mm
SAMPLE PRICE $107.20
Technology / Antenna Frequency: GSM 850/900/1800/1900, UMTS 2100, Wifi/Bluetooth 2400, LTE 790-960/1710-2690 | Mounting method: Connector | Antenna Location: External | Connector Type: SMA-M | Impedance: 50 Ohm | Polarization: Vertical | Max power: 50 W | Width: 21 mm | Length: 157 mm | Height: 157 mm
SAMPLE PRICE $7.30