N/A
Supplier number:
SIMCom SIM7600E Development Kit
The SIMCom SIM7000E Development Kit is perfect for tests and technical development. The developer kit contains the following:
- SIMCom developer board
- SIM7600E module mounted on test board
- USB cable
- Antenna
- GPS antenna
- EU power plug
Simcom SIM7500 series and SIM7600 series AT commands manual
Simcom SIM7500 series and SIM7600 series AT commands manual
Document summarizing and describing the GPS systems epoch roll over dates in Simcom products GPS trackers and how to take precaution for it.
This document is a reference guide to all the AT commands defined for TCPIP.
This archive contains the SIMCom:
SIM7100_SIM7500_SIM7600 Series_GPIO_Application Note_V2.00
SIM7100_SIM7500_SIM7600 Series_LBS_Application Note_V2.00
SIM7100_SIM7500_SIM7600 Series_Sleep Mode_Application Note_V2.00
SIM7100_SIM7500_SIM7600 Series_UART_Application Note_V2.00
SIM7100_SIM7500_SIM7600 Series_UIM HOT SWAP_Application Note_V2.00
SIM7100_SIM7500_SIM7600_SIM7800 Series_USB AUDIO_Application Note_V2.00
SIM7100_SIM7600 Series_TTS_Application Note_V2.0
SIM7500_IM7600_Series_HTTP(S)_Application Note_V2.00
SIM7500_SIM7600 Series_FOTA_Application Note_V2.00
SIM7500_SIM7600 Series_FTP(S)_Application Note_V2.00
SIM7500_SIM7600 Series_GNSS_Application Note_V2.00
SIM7500_SIM7600 Series_Jamming Detection_Application Note_V2.00
SIM7500_SIM7600 Series_Jamming Detection_Application Note_V2.00
SIM7500_SIM7600 Series_SAT_Application Note_V2.00
SIM7500_SIM7600_SIM7800 Series_ECALL_Application Note_V2.00
SIM7500_SIM7600_SIM7800 Series_MQTT_Application Note_V2.00
SIM7500_SIM7600_SIM7800 Series_SMS_Application Note_V2.00
SIM7500_SIM7600_SIM7800 Series_SSL_Application Note_V2.00
SIM7500_SIM7600_SIM7800 Series_TCPIP_Application Note_V2.00
SIM7600 Series_HSIC_LAN_Application Note_V2.00
SIM7600 Series_Open Linux Sleep&Wake-Up_Application Note_V2.00
SIM7600 Series_Open Linux UART&SPI_Application Note_V2.00
SIM7600 Series_Open Linux_Development Guide_V2.00
SIM7600 Series_SFOTA_Application Note_V2.00
SIM7600_SIM7800 Series_SGMII_LAN_Application Note_V2.00
SIM7600M22_MIFI_RTL_Application Note_V2.00
SIM7600M22_MIFI_SIM7800 Series_BT_Application Note_V2.00
SIM7600M22_MIFI_SIM7800 Series_BT_Application Note_V2.00
Simcom_Android_ril_User Guide_V2.00
Firmware update tool and user guide for SIM7000, SIM7100, SIM7070, SIM7080, SIM7500, SIM7600 and SIM8200.
This archive contains the SIMcom SIM7500 and SIM7600 series cellular modules ADB fastboot firmware update procedure guide, and tools/source for both Windows and Linux based systems.
This archive contains the Windows firmware update tool for SIM7500 and SIM7600-series modules.
Please follow the included instructions regarding usage.
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:
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.
How can we establish data connection for cellular modules in Windows 8 and Windows 10 systems?
Microsoft Windows desktop versions starting from Windows 8 and newer have built in data connection manager for WWAN, Wifi etc. that can be used to configure, control and establish the data connection of cellular module that support MBIM interface, which most cellular modules do.
The connection managers settings and controls can be found and accessed on Windows desktop start menu through the network icon (see picture).
The Cellular tab can be found in Windows system settings and if needed the connection APN details can be manually entered through "Advanced options".
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:
lsusb -t
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:
qmicli --help-all
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 --device=/dev/cdc-wdm0
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:
-p
--device-open-proxy
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:
APN=my-network-operators-apn
APN_USER=my-apn-username
APN_PASS=my-apn-password
PROXY=yes
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 8.8.8.8
The ifconfig Linux tool can show the current details for the network interface:
ifconfig wwan0
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.
We cannot acquire an DHCP address over qmi_wwan driver when using Raspbian Linux OS?
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.