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.



Band LTE-TDD B34/B38/B39/B40/B41
LTE-FDD B1/B2/B3/B4/B5/B7/B8/B12/B13/B18/B19/B20/B25/B26/B28/B66
UMTS/HSDPA/HSPA+ B1/B2/B4/B5/B6/B8/B19 GSM/GPRS/EDGE 850/900/1800/1900MH
Emitting power 0.25W 0.5W@EGSM900
Data Speed LTE CAT 4
Uplink≤50 Mbps
Downlink≤150 Mbps




SIM Card Normal SIM (Not Included)
Application Region Global 4G/3G/2G


  • 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

Hardware connection

  • Attach the SIM7600G-H 4G for Jetson Nano (SIM7600 hereafter) on the 40PIN GPIO of Jetson Nano.
  • Inset the USB connector, and connect the micro USB interface of SIM7600 to Jetson Nano.
    • If you want to communicate SIM7600 via Serial port, you can also turn the DIP switcher into ON.
  • Connect the MAIN antenna and the GPS antenna.

Software setup

  • Open a terminal and install libraries by the following commands
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.


Testing with minicom

Before you test the SIM7600, you need to install it with the following commands.
echo 200 > /sys/class/gpio/export
echo out > /sys/class/gpio200/direction
echo 1 > /sys/class/gpio200/value
echo 0 > /sys/class/gpio200/value
Make sure that the NET is blinking normally.
Run minicom and type AT commands to test.
sudo minicom -D /dev/ttyTHS1 -b 115200
If you cannot get a response, please check if you have set the DIP switch to ON.

Python Examples

  • Make sure that all the hardware are connected properly. Start Jetson Nano and open a terminal.
  • AT examples.
    • 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.
    • Connect the GPS antenna and set the receiver in an open place.
    • You should run the following commands to run the codes to test GPS.
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.
    • Finally use the following command to run the code.
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/PhoneCall/
vi #modify the phone number
sudo python3
  • SMS example
    • Run the following commands
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/SMS/
sudo python3
  • TCP example
    • Run the following commands
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/TCP/
sudo python3

4G Connecting

Please connect all the hardware and start Jetson Nano.

  • Check and make sure that the module work normally by the demo codes above.
  • Open minicom by command
sudo su
killall ModemManager
minicom -D /dev/ttyUSB2
  • Type the following command to check.
  • Download driver
cd simcom_wwan
sudo su
  • Use root permission to install the driver.
insmod simcom_wwan.ko
  • Check if the wwan0 interface is recognized.
ifconfig -a
  • Enable the wwan0 interface.
ifconfig wwan0 up
  • Dailing by Minicom.
minicom -D /dev/ttyUSB2
  • Allocate IP
apt-get install udhcpc
udhcpc -i wwan0
  • Now you can use a 4G network.
  • If you get a DNS error, please fix it with this command.
route add -net wwan0


Related Instruction


SIM7600 Related


Application Note

For More...



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 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) AUX auxiliary antenna is a diversity antenna, the main antenna signal is not good 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 checking 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; through the row of pins to access, the USB interface 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



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 AM GMT+8 (Monday to Friday)