SIM7600G-H 4G for Jetson Nano

From Waveshare Wiki
Jump to: navigation, search
SIM7600G-H 4G for Jetson Nano
the global version for Jetson Nano





4G/3G/2G/GSM/GPRS/GNSS HAT for Raspberry Pi, Based on SIM7600E-H.


  • 40PIN GPIO extension header for connecting Jetson Nano.
  • Supports dial-up, telephone call, SMS, mail, TCP, UDP, DTMF, HTTP, FTP, etc.
  • Supports GPS, BeiDou, Glonass, and LBS base station positioning.
  • Onboard USB interface, to test AT Commands, get GPS positioning data, and so on.
  • Breakout UART control pins, to connect with host boards like Arduino/STM32.
  • SIM card slot, supports 1.8V/3V SIM card.
  • Onboard 3.5mm audio jack with earphones and mic support, for making telephone calls.
  • 2 x LED indicators, easy to monitor the working status.
  • Onboard voltage translator, the operating voltage can be configured to 3.3V or 5V via jumper.
  • Baudrate: 300bps ~ 4Mbps (default: 115200bps)
  • Autobauding baudrate: 9600bps ~ 115200bps
  • Control via AT commands (3GPP TS 27.007, 27.005, and V.25TER command set).
  • Supports SIM application toolkit: SAT Class 3, GSM 11.14 Release 99, USAT.



  • Receiver type
    • 16-channel
    • C/A code
  • Sensitivity
    • Tracking: -159 dBm (GPS) / -158 dBm (GLONASS) / TBD (BD)
    • Cold starts: -148 dBm
  • Time-To-First-Fix (open air)
    • Cold starts: <35s
    • Hot starts: <1s
  • Accuracy
    • Position: <2.5m CEP

SMS and Audio

  • SMS
    • Supported types: MT, MO, CB, Text, PDU
    • Storage: USIM card and ME (default)
  • Audio feature
    • Supports echo cancellation
    • Supports noise reduction


  • Power supply: 5V
  • Operating voltage: 5V/3.3V (configured via jumper)
  • Operating temperature: -30°C ~ 80°C
  • Storage temperature: -45°C ~ 90°C

Working with Jetson Nano

Hardware connection

1. Connect the 4G module jumpers to PWR and 5V and select auto power on.
2. The 4G module USB socket needs to be connected to Jetson Nano, enter "ls /dev/ttyUSB*" or "lsusb" in the terminal to check if the socket is installed correctly.


Dial-up & GNSS Usage

1. RNDIS Dial-up Internet Access
2. SIM7600X ECM Dial-Up Internet
3. 4G module supports Internet access and GNSS. When using these functions, the module connects to the network, installs minicom, and enters. Please note the DIP switches to the U_TX,U_RX side, pay attention to turning off the minicom hard flow control, as shown in the figure.
sudo apt install minicom
sudo minicom -D /dev/ttyTHS1 -b 115200
4. Input the following commands to view GPS NEMA output. Please note that the unlabeled side of the GPS antenna faces the visible sky area.

SIM7600G-H 4G for Jetson Nano DIP.jpg

Sample Demo

Software Installation

  • Login to Jetson Nano, and input the following commands in the terminal. It is not recommended to change the official source, because changing the source may cause the installation to fail.
  • Line 9 to 11 install jetson-gpio library, line 10 replace your_user_name with your username, For official file reference please click here to view.
sudo apt-get update
sudo apt-get install python3-pip
sudo pip3 install pyserial
mkdir -p ~/Documents/SIM7600X_4G_for_JETSON_NANO
wget -P ~/Documents/SIM7600X_4G_for_JETSON_NANO/
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/
tar -xvf SIM7600X_4G_for_JETSON_NANO.tar.gz
sudo pip3 install Jetson.GPIO
sudo groupadd -f -r gpio
sudo usermod -a -G gpio your_user_name
sudo udevadm control --reload-rules && sudo udevadm trigger
sudo apt-get install minicom

Note: you should replace your_user_name with the actual user name.

Python Examples


  • Make sure that all the hardware is connected properly. Start Jetson Nano and open a terminal.
  • Please press Ctrl+C to wait for the SIM7600X module to shut down when exiting, the effect is as shown in the picture.
    • You should run the following commands to run the codes and type AT commands for testing.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/AT/
sudo python3


GPS examples

  • Check that the module hardware is correctly connected, plug in the GPS antenna, and place the receiver in an open outdoor area (note that it can't be tested in cloudy or rainy weather), you need to wait for about 1 minute for the power up to receive the positioning signal.

Enter the following command line:

  • Please press Ctrl+C to wait for the SIM7600X module to shut down when exiting, the effect is as shown in the picture.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/GPS/
sudo python3


PhoneCall examples

  • Modify the file, change the phone number to yours by the vi tools, and save.
  • Please press Ctrl+C to wait for the SIM7600X module to shut down when exiting, the effect is as shown in the picture.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/PhoneCall/
vi #modify the phone number
sudo python3

SMS example

  • Run the following commands:
  • Please press Ctrl+C to wait for the SIM7600X module to shut down when exiting, the effect is as shown in the picture.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/SMS/
sudo python3

TCP example

  • Run the following commands:
  • Please press Ctrl+C to wait for the SIM7600X module to shut down when exiting, the effect is as shown in the picture.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/TCP/
sudo python3


Working with Windows

NET Indicator Operating Status

  • Always on: Looking for a network or on a call
  • 200ms ON/200ms OFF: Data connection is established
  • 800ms ON/800ms OFF: Network is registered
  • OFF: Power off or sleep mode

Software Environment

Driver Installation

1. Driver installation:
2. Connect the 4G HAT as shown above, and insert it into the Windows PC (Take Windows 10 OS as an example below).
3. Make sure the module is on normally.
4. Unzip the driver file -> double-click the exe driver file -> select a path to install -> Next -> Wait for installation -> Reboot the PC -> Finish.
5. Install all recognizable devices as shown below:

SIM7600X-Driver- (6).png

Common AT Command

  • SIM7600X module supports AT command control, some basic AT commands are shown in the table below:
    (For the complete AT command set, please refer to: For more AT commands, please refer to: SIM7600X series AT command set)
Command Description Return
AT AT Test Command OK
ATE ATE1 set echo
ATE0 close echo
AT+CGMI Query module manufacturer OK
AT+CGMM Query module model OK
AT+CGSN Query product serial number OK
AT+CSUB Query module version and chip OK
AT+CGMR Query the firmware version serial number OK
AT+IPREX Set the module hardware serial port baud rate +IPREX:
AT+CRESET Reset module OK
AT+CSQ Network signal quality query, return signal value +CSQ: 17,99
AT+CPIN? Query the status of the SIM card and return READY, indicating that the SIM card can be recognized normally +CPIN: READY
AT+COPS? Query the current operator, the operator information will be returned after normal networking +COPS:
AT+CREG? Query network registration status +CREG:
AT+CPSI? Query UE system information
AT+CNMP? Network mode selection command:
2: Automatic
13: GSM only
38: LTE only
48: Any modes but LTE
... ....

AT command sending and receiving test

  1. Download serial debugging assistant: SIM7600 serial debugging assistant
  2. Open the device manager, find the port number corresponding to AT Port; then open the sscom software, select the corresponding port and baud rate, check "Add carriage return and line feed"; click the sscom "Extension" button and pull out the preset It is best to open the serial port and send the corresponding AT command to test. The test screenshot is shown below:

Dailing up

PC Windows

  • Usually, when we use the Windows 10 operating system, make sure that the hardware and software drivers are installed. After the module is powered on, the PWR light is on normally, the NET light is flashing normally, and it will automatically connect to the Internet. If the Internet cannot be automatically connected, we can also use NDIS or PPPD to connect to the Internet.


The steps for Windows NDIS dialing are as follows:
1. Open the SIM7600 AT port, and send the command (if using SSCOM to generate AT command, you must check "Enter"):

AT$QCRMCALL=1,1 //must press "Enter"

2. At this point, the NDIS dialing takes effect, and the computer can connect to the network.


Remote NDIS (RNDIS) allows writing NDIS miniport device drivers for network devices attached to the USB bus without the need for hardware vendors. RNDIS achieves this by defining a bus-independent set of messages and describing how this message set operates over the USB bus. As this remote NDIS interface is standardized, a set of host drivers can support any number of network devices attached to the USB bus. This significantly reduces the development burden for device manufacturers, enhances overall system stability by eliminating the need for new drivers, and improves the end-user experience.

  • Install the SIM card and the antenna on the device, connect the USB cable to the PC, and provide the power supply.
  • Install USB driver.
  • Open the serial port assistant, find the corresponding COM port to the AT serial port, and send:
AT+CPSI? //Query whether to register the network
  • If the network is registered successfully, SIM7600X can send the AT command to enable USB dial-up:
  • SIM820X sends AT commands to enable the USB dial-up:
  • Successfully sent, and received as 'OK,' and the Dongle will automatically reboot.
  • Observing the Device Manager, it's noticed that some unrecognized devices have appeared, such as RNDIS (with an exclamation mark):
  • Right-click on RNDIS, go to the device software search window, and choose 'Browse my computer.' Select 'Network Adapter' from the device list.
  • In the network adapter window, choose Microsoft Corporation from the manufacturer list, then select 'Remote NDIS Compatible Device' from the list on the right-hand side.
  • Click 'Next' and wait for the installation to finish; the RNDIS Kitl device will be successfully installed. With this, the dial-up function setup is complete, and it can be seen that the PC can access the internet through the Dongle.
  • If it cannot connect to the network, please set it to obtain the IP automatically.

RNDIS Dial-up08.png

GNSS Control Example

  • Connect the GPS antenna and place the receiver with the label facing downwards in an open outdoor area (note: testing cannot be done during rainy weather). It takes about 1 minute after powering on to receive a positioning signal.
  • Detailed testing instructions and screenshots are provided below:
AT+CGPS=1	  //Open GPS
AT+CGPSINFO      //Print GPS message to the serial port 
AT+CGPS=0       //Turn off GPS

SIM7600E-H 4G DTU GNSS.png

Call Phone

  • Refer to the "Hardware Configuration" chapter to connect the LTE antenna, SIM card (the phone function must be enabled), and the headset cable with microphone, and the module is turned on.
  • Common commands for making calls:
AT+CNUM Check the phone number (not all SIM cards support this command) +CNUM
AT+CSDVC AT+CSDVC=1: switch to headphone output
AT+CSDVC=3: switch to speaker output
AT+CLVL=? Query volume range OK
AT+CLVL=2 set volume to 2 OK
ATD<phone_number>; ATD10086; Dial Mobile customer service phone number 10086 OK
AT+CHUP set volume to 2 OK
AT+CLIP=1 Set up caller ID OK
ATA Answering the Phone OK
  • The detailed operation screenshots are as follows:

Note: When using the SSCOM serial port assistant to send and receive AT commands, you must click "carriage return and line feed".

Voice output mode and volume adjustment

AT+CSDVC=1 		//switch to headphones 
AT+CSDVC =3 	        //switch to speaker
AT+CLVL =?		//Query the volume range, return +CLVL: (0-5) //Indicates that the volume is adjustable from 0 to 5
AT+CLVL=2     	        //Set the volume to 2, return OK

Answer the phone

Incoming call serial port display: RING
Send “ATA”      //Answer the phone
Send ”AT+CHUP”  //Hang up

Audio parameter debugging

+CACDBFN: (Handset_cal.acdb,Handset_tianmai.acdb)	// It is recommended to consider setting this set of parameters 

A.In the initialization stage of the module startup, before making a call, add the following content:

AT^PWRCTL=0,1,3	// Mainly improve TDD noise effect 

B. The module is in the process of establishing a voice call

VOICE CALL:BEGIN  	// Establish module call to improve call effect
AT+CECM=1      		//suppress echo
AT+CECH=0x500 	// improve the volume on the mobile phone  

See "SIM7X00_Audio_Application_Note" document for details.

Send English SMS

1. Correctly install the SIM card and LTE antenna, connect the module's USB interface to the computer with a USB cable, and turn on the module;
2. Observe whether the indicator light is normal, the PWR indicator is always on, and the NET indicator is flashing;
3. Set the local SMS center: AT + CSCA = " + 8613800755500" + Enter, return OK.

Note: China Mobile's SMS service center number is +861380xxxx500, where xxxx is the long-distance telephone area code where you are located. The SMS center may be different from place to place. For details, you can query Baidu or call China Mobile Unicom customer service. This SMS center is Shenzhen (0755).

4. AT+CMGF=1: Set the SMS mode to TEXT;
5. AT+CMGS="phone number"<Enter>, set the recipient's phone number, and then return: ">", send the content that you need, such as "Send massage test!", You don't need to "Enter" at the end. After editing the text message, send 1A to send information in hexadecimal format (1A is the key value of "CTRL+Z", which is used to tell the module to perform the sending operation, or 1B or "ESC" to cancel the operation). After successfully sending, the module returns + CMGS: 15 confirm that the transmission was successful. As shown below.
Send English Messages.png

Receive English SMS

  1. Send a message on the phone: "This is a receive test for SIM7600X!" to the test module.
  2. When receiving the information, the serial port will break and report the information, "SM", 20, which means there are 20 pieces of information in the SM, and the message just sent is the 20th piece of information.
  3. Read information: AT+CMGR=20 to read the 20th information (AT+CMGL="ALL" to read all information).
  4. Delete information: AT+CMGD=20, as shown below.
  5. Convert the displayed information to text through a code converter.

Receive English Messages.png






3D Drawing

Related Instruction



In this case, it may be that you have not successfully connected to the network, you can follow the steps below to troubleshoot:
1. First check the hardware connection:

  • Check if the MAIN antenna is connected properly;
  • Whether the connected SIM card can communicate and surf the Internet normally on mobile phones and other devices:
  • If the Raspberry Pi is connected, whether the module enters airplane mode;

2. After confirming that there is no problem with the hardware, the software can use these instructions:

  • Check if the sim card is in good contact: AT+CPIN?
  • Check if the network mode setting is correct: AT+CNMP?
  • Check the signal quality of the current environment: AT+CSQ
  • Check carrier access:AT+COPS?
  • Check internet connection:AT+CPSI?
  • Check for successful registration to the network: AT+CGREG?

SIM7600X network check.png

The SIM7600X can send the following command plus carriage return, and successfully turn on the display after displaying OK.


  • Open the Raspberry Pi terminal and input the following commands:
sudo raspi-config
Select Interfacing Options -> Serial to turn off shell access and turn on the hardware serial port

L76X GPS Module rpi serial.png
Raspberry Pi 2B/zero, the user serial device number is ttyAMA0; you can use the following command line to confirm that serial0 is the selected serial device number, as follows:

ls -l /dev/serial*

RM520n-gl faq90.png



Set up as below:

AT+CGDCONT=1, "IPV6", "APN" //Switch to IPV6, different operators APN is different, pay attention to distinguish the settings
AT+CGDCONT=1, "IP", "APN" //Switch back to IPV4


  • Under normal circumstances, SIM7600X has already dialed automatically when it is connected to the Windows system, no need to repeat the dialing, the repeated dialing will return NO CARRIER
  • If you still cannot dial up, please use the following command to change to the Windows default dial-up mode
  • The display is turned off and the mobile network is not enabled, you can ignore it and go online directly;

SIM7600X rndis dial-up .png

SIM7600 NET work driver.png

  • After installing the driver, the network card shows that it is enabled

SIM7600 dial up succeed.png

  • Generally, the default configuration of SIM7600 is to automatically select the network standard, and it is likely to choose 2G Internet access; if you need to force the use of 4G mode, you need to enter the following AT command configuration:
AT+CNMP=38    //Fixed 4G LTE, if there is no local 4G coverage, you may not be able to register to the network

Firm 4G LTE.png

  • If 4G has been fixed and the speed is still not ideal, it may be a frequency band problem;
AT+CNBP?  //Backup the current band (the returned band information can be copied to Notepad, etc.)
AT+CNBP=0x0002000000400183,0x000001E000000000,0x0000000000000021    //After returning to OK, measure the speed
AT+CNBP=0x0002000004400180,0x000001E000000000,0x000000000000003F   //If the speed doesn't improve, try this

SIM7600 band speed.png

Positioning Commands


From left to right, they are (1) dimension, (2) longitude, (3) date, (4) time, (5) altitude, (6) speed, and (7) heading angle.
SIM7600 GNSS FAQ (1234567).png



Insert the GPS antenna into the GNSS antenna holder and place the receiver label side down in the open outdoors (note that the rainy weather test can not), the power needs to wait about 1 minute to receive the positioning signal;
SIM7600G-H 4G DTU FQA06.png


GNSS parameter problem, after restarting the module, initialize the GNSS parameters with the following command can be;

Or you can use the following commands to obtain the position information.



After turning on the GPS in the AT debug serial port, turn on the NMEA port to get the dynamic information.

SIM7600E-H 4G DTU GNSS.png
For more detailed steps, please refer to the following link.
SIM7600X gets the latitude and longitude in units, we commonly use degrees as the unit, please see below for more details.



Common commands for the LBS base station positioning function of SIM7600X are as follows:

AT+CLBS=? //View the range of parameters that can be set
AT+CNETSTART//Open the network; if it fails to open the network, you can use the command AT+CNETSTOP to close and then open
AT+CLBS=1 //Get the current latitude and longitude
AT+CLBS=2 //Get the detailed address

Calling SMS


The VOLTE function can be enabled with the following command:


The VOLTE function can be disabled with the following command:


Note: The difference between Volte calls and regular phone calls: The network of Microsoft calls goes on a packet-switched Internet network. And ordinary phone calls take the circuit-switched (PSTN network) communication network. There is a fundamental difference between the two. By the time of 4G LTE, the packet network can control the delay to low enough, and ordinary phones can make calls directly through VOLTE with the packet network. However, in places where the network is poor, circuit-switched networks are still inseparable.


SIM7600X makes a call and the phone answers

Record SIM7600 and phone sound to module memory E disk (record to memory card read D)
AT+CREC=3, "e:/rec.wav"   

End recording

Play sound to the phone side to listen

Play sound to SIM7600

End playback



If the short message is stored in the SIM card, the limit is generally 50. You can use the command: AT+CPMS? make an inquiry.

  • Confirming that the SIM7600X is registered to the network and that the SIM card can send and receive SMS messages properly on devices such as cell phones;
  • Setting the correct SMS center number;
  • Initialize the SMS settings with the following command:


Hardware FAQ


Support SIM standard (Standard) card, as shown in the figure below, if it is a Micro or Nano card, you need to add a card sleeve.
SIM card size.png


This problem is generally caused by poor contact between the SIM card and the SIM card holder of the module.

  • Confirm whether the frequency band supported by the IoT card covers the frequency band supported by the module.
  • APN is not set, please use the following command to configure APN.
  • Note: Different operators' APNs is different, here the APN is changed to the corresponding operator.
  • It may be blocked, high traffic (real-name IoT) cards are going to be machine card binding, and can only be used on a device (the State Ministry of Industry and Information Technology, Ministry of Public Security, issued to the operator must be so); you can let the IoT card operator check the status of the card and unlock the next.



Using a USB 5V power supply, after successful networking, the current is generally in the range of 50~300mA, and the average is about 150mA (for reference only, depending on the network environment and networking status.

  • Frequency: 700m 800m 900m 1710-1920M 2010-2100M 2300-2400M 2500-2690M-5800MHZ
  • Gain: 9dbi ± 0.7dbi

Please put the jumper cap on C and connect the USB TO UART interface of SIM7600X to the USB port of a computer or Linux board such as Raspberry Pi through USB type to micro USB to send commands to debug:

SIM7600G-H 90.png



1) The AUX auxiliary antenna is a diversity antenna, the main antenna signal is not good enough to receive the signal with the receiving antenna, and the physical location is not the same, there is always a better, diversity antenna connected to the bandwidth and rate sensitivity will be increased by about 20%.
2) No diversity antenna can make the receiver obtain a maximum of not more than 3db diversity gain, but the diversity does not line any transmitting function, so to connect to the main antenna, transmit the signal to the base station registered to the network, the auxiliary antenna will only work.



The following command can be used to detect the presence of Qualcomm Qualcomm devices, and if a COM driver has been loaded (the Raspberry Pi system generally comes with it), a series of ttyUSB* will also appear:

ls /dev/ttyUSB*

SIM7600G-H 4G DTU FQA16.png


As shown below:
1) /dev/ttyUSB0-diag port for output developing messages
2) /dev/ttyUSB1- NMEA port for GPS NMEA data output
3) /dev/ttyUSB2-AT port for AT commands
4) /dev/ttyUSB3-Modem port for ppp-dial
5) /dev/ttyUSB4-Audio port


Use the following commands:
echo "4" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio4/direction
echo "0" > /sys/class/gpio/gpio4/value
echo "6" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio6/direction
echo "0" > /sys/class/gpio/gpio6/value


Generally, it is the problem of baud rate, TTL level, and wiring, the details are as follows:



System Firmware

  • Make sure your system kernel is above 5.4. Do not use sudo update to upgrade the Raspberry Pi to the latest version, otherwise, the kernel version will be upgraded to a version higher than the current firmware and will not be recognized.
  • It is recommended to use the more convenient RNDIS dial
  • You can burn the latest Raspberry Pi Raspbian system and reconfigure the NDIS dial-up
  • Or use the image that has been configured with the driver NDIS dial-up self-starting Raspbian system image (driver installed)


The new driver may not be compatible with some WIN7 systems, you can try the old driver:

  • SIM7600 old driver
  • SIM7600 new driver
  • 1. Download the driver.
  • 2. Connect the 4G HAT to a Windows computer as shown in the hardware connection diagram above (Windows 10 OS is used as an example below)
  • 3. Make sure the module has been powered on properly: refer to the previous section "Switching on and off the module"
  • 4. Open Device Manager->Other Devices->"SimTech, Incorporated "-> Update Driver -> Browse My Computer to find the driver file -> According to the system, select the path where the driver file is stored -> Installation is complete.
  • 5. Install all the recognized devices and drivers:

SIM7600G-H 4G09.jpg

SIM7600X-FAQ (6).png

1. Pay attention to check the device manager, the upgrade process will prompt the new device inserted, and the first upgrade will not have a device driver;
2. Pay attention to the USB cable, the USB cable rate is high during the upgrade process, so you need to choose a better quality USB cable to avoid poor contact.
3. Need to run the upgrade tool with administrator privilege (SIM7500_SIM7600_QDL V1.41 only for Update).
4. Uninstall and reinstall the update tool (SIM7500_SIM7600_QDL V1.41 only for Update).


Demo Code


Please confirm that there is a sim7600_4G_hat_init file in the current path
2019-10-11 19-15-04.jpg
The general operation is: download the sample program, after decompression, rename the c folder under the Raspberry folder to SIM7600X, and then copy the entire SIM7600X folder to the Raspberry Pi /home/pi directory, Enter the command line into the /home/pi/SIM7600X directory, and then execute the chmod 777 sim7600_4G_hat_init command.

  • Execute autoreconf -vfi, and then recompile, see the figure below:



Generally, the flight mode is entered. You can use a DuPont cable to connect D13 and GND to turn off the flight mode, as shown in the figure:
SIM7600 nano flight.png


Can be used on NX, you need to use the USB cable access to use; accessing through pin headers, the USB connector is not completely on, can not use the adapter.


RNDIS dial-up (9011) sometimes does not appear after the Jeson Nano's Ubuntu system dial-up; you can use ECM dial-up (9018) to get the usb1 NIC, ECM specific dial-up method is as follows:



Close the ModemManager process to prevent minicom from displaying useless data when debugging the AT serial port.

sudo su
killall ModemManager



Restart after sending the following command:




Close the ModemManager process to prevent minicom from displaying useless data when debugging the AT serial port.

killall ModemManager



1) Please provide a stable power supply to Jetson Nano. It is recommended to use the original adapter or 5V 5A power supply.
2) Please use the more stable ECM dialing mode. You can refer to the following steps:



Yes, it can be used on NX, but you need to use a USB cable to access it; after accessing it through the row of pins, the USB ports are not fully aligned, so you can't use the adapter.



Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)