SIM7600G-H 4G 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.
|UMTS/HSDPA/HSPA+ B1/B2/B4/B5/B6/B8/B19||GSM/GPRS/EDGE 850/900/1800/1900MH|
|Emitting power||0.25W||[email protected]
|Data Speed||LTE CAT 4
|SIM Card||Normal SIM (Not Included)|
|Application Region||Global 4G/3G/2G|
- Receiver type
- C/A code
- 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
- Position: <2.5m CEP
SMS and Audio
- 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
- 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.
- 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/ https://www.waveshare.com/w/upload/6/64/SIM7600X_4G_for_JETSON_NANO.tar.gz 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.
- 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 AT.py
- 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 GPS.py
- PhoneCall examples
- Modify the PhoneCall.py 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 PhoneCall.py #modify the phone number sudo python3 PhoneCall.py
- SMS example
- Run the following commands
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/SMS/ sudo python3 SMS.py
- TCP example
- Run the following commands
cd ~/Documents/SIM7600X_4G_for_JETSON_NANO/TCP/ sudo python3 TCP.py
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.
AT+CNMP=38 AT+CSQ AT+CREG? AT+COPS? AT+CPSI?
- Download driver
cd wget https://www.waveshare.com/w/upload/4/46/Simcom_wwan.zip unzip Simcom_wwan.zip cd simcom_wwan sudo su make
- Use root permission to install the driver.
insmod simcom_wwan.ko lsmod dmesg
- Check if the wwan0 interface is recognized.
- Enable the wwan0 interface.
ifconfig wwan0 up
- Dailing by Minicom.
minicom -D /dev/ttyUSB2 AT$QCRMCALL=1,1
- 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 0.0.0.0 wwan0
- SIM7600X 4G for Jetson Nano Schematic
- Demo codes
- SIM7600 Driver
- driver for wwan0
- SIM7600G-H 4G for Jetson Nano 3D Drawing
- Raspberry Pi networked via RNDIS
- SIM868 PPP Dail-up Networking
- Setup wwan0 interface for 4G network
- SIM7X00 Series_GPIO_Application Note
- SIM7X00 Series_SAT_Application Note
- SIM7X00 Series_SMS_Application Note
- SMS Application notes
- SIM7X00 Series_TCPIP_Application Note
- SIM7600 Series_HTTP_AT Command Manual
- SIM7600 Series_SSL_AT Command Manual
- SIM7X00 Series_UART_Application Note
- SIM7X00 Series_GPS_Application Note
- SIM7600 Series_MQTT_ATC
- SIM7600_Sleep Mode_Application Note
- SIM7600 Series_LBS_Application Note
- SIM7600 Series_USB AUDIO_Application Note
- SIM7600 Series_UIM HOT SWAP_Application Note
- SIM7600M22 Series_TTS_Application Note
- SIM7600 Series_HSIC_LAN_Application_Note
- SIM7600 Series Hardware Design
- SIM7600G-H Hardware Design
Question:It can be used normally when connected to a computer, etc., but the light does not flash when connected to a Jetson Nano NET, what should I do if I cannot access the network?
Question:The NET light does not flash after the SIM7600X is turned on, what should I do if the network is abnormal?
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 well connected;
- Whether the connected SIM card can call and surf the Internet normally on mobile phones and other devices:
- It is recommended to replace the SIM card of different operators. Under the comparison test, the network frequency bands and base station layouts supported by different operators are different. Changing the SIM card can also eliminate problems such as card arrears
2. After confirming that there is no problem with the hardware, the software can use these instructions:
- Check whether the sim card is in good contact: AT+CPIN?
- Check whether RF is turned on (flight mode is turned off): AT+CFUN?
- Check if the network mode setting is correct: AT+CNMP?
- Check the signal quality of the current environment: AT+CSQ
- Check the operator's access situation: AT+COPS?
- Check the connection status: AT+CPSI?
- Check the operator's access situation: AT+CGDCONT?
- Check the connection status: AT+SIMCOMATI
- Check whether it is successfully registered to the network: AT+CGREG?
Question:After the GPS is turned on, why does the NMEA port not print the corresponding GPS information?
Restart SIM7600E-H after sending the following commands:
AT+CGPSNMEAPORTCFG=3 AT+CGPSNMEA=197119 AT+CGPSINFOCFG=10,31
This problem is generally caused by poor contact between the SIM card and the SIM card socket of the module.
Question:Why can't I use UART to control the module on the Raspberry Pi, I can't open the ttyS0 through minicom, and it prompts that there is no ttyS0?
Since the Raspberry Pi serial port is used for terminal debugging by default, if you need to use the serial port, you need to modify the Raspberry Pi settings. Execute the following command to enter the Raspberry Pi configuration:
Select Interfacing Options ->Serial ->NO ->YES to disable serial debugging
Open the /boot/config.txt file, find the following configuration statement to enable the serial port, if not, add it at the end of the file:
enable_uart=1Restart to take effect
Question:What should you do if you are registered to the network, dial up successfully and get an IP, but you cannot access the Internet and cannot ping through?
It may be that the APN has not been obtained. Generally, the APN can be obtained automatically. In some areas (IoT card), it needs to be obtained manually. For example, it can be set by the following instructions:
AT+CGDCONT=1,"IP","APN" //The APN of different operators is different, here the APN is changed to the corresponding operator, for example: China Mobile APN: CMNET; China Unicom APN: 3GNET; China Telecom APN: CTNET
It can be set by the following commands:
AT+CGDCONT=1,"IPV6","APN" //Switch to IPV6, the APN of different operators is different, pay attention to distinguish the settings AT+CGDCONT=1,"IP","APN" //Switch back to IPV4
Question:Why can I use an ordinary mobile phone SIM card that can make calls to access the Internet, but I cannot access the Internet using an IoT card (traffic card)?
- No APN is set, configure APN as described above.
- After being banned, high-traffic (real-name IoT) cards are bound by chance cards and can only be used on one device (Ministry of Industry and Information Technology, Ministry of Public Security, must be issued to operators); The operator checks the status of the card and unlocks it.
Question:Some SIM card operators require the VOLTE function to make calls, how do I turn the VOLTE function on or off?
The VOLTE function can be turned on with the following command:
The VOLTE function can be turned off with the following command:
Question:How to set the SMS center number? (SMS center number is a kind of short message server. The SMS sent by the mobile phone needs to be sent to the SMS center number first, and then forwarded to the other party's mobile phone by the SMS center number, which is equivalent to a short message transfer station.)
Command to add + 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 the customer service of China Mobile Unicom. This SMS center is Shenzhen (0755) ;
- Confirm that SIM7600X is registered to the network, and confirm that the SIM card can send and receive text messages normally on mobile phones and other devices;
- Set the correct SMS center number;
- Initialize SMS settings with the following commands:
The AUX antenna can increase the downlink rate: The AUX antenna is also a diversity antenna, which plays the role of receiving signals, improves the signal reception capability, and works with the MAIN antenna to increase the downlink rate.
- Under normal circumstances, SIM7600X has been automatically dialed after receiving the Windows system, and there is no need to repeat dialing. Repeated dialing will return NO CARRIER
- If you still can't dial-up Internet access, please use the following command to change to Windows default dial-up Internet access mode
- The display is turned off, the mobile network is not enabled, you can ignore it and go online directly;
- You can also install the driver SIM7600X dial-up Driver to update the network card
- The network card display is enabled after installing the driver
- 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
- If 4G has been fixed, the speed is still not ideal, it may be a frequency band problem;
AT+CNBP? //Back up the current frequency band (the returned frequency band information can be copied to notepad, etc.)
AT+CNBP=0x0002000000400183,0x000001E000000000,0x0000000000000021 //After returning OK, measure the speed
AT+CNBP=0x0002000004400180,0x000001E000000000,0x000000000000003F //If the speed does not improve, try this
Question:SIM7600 firmware upgrade failed, and the prompt is as shown in the figure below, what should I do?
1. Pay attention to check the device manager, the new device will be prompted during the upgrade process, and there will be no device driver during the first upgrade;
2. Pay attention to the USB cable. The speed of the USB cable is higher during the upgrade process. You need to choose a better quality USB cable to avoid poor contact.
3. You need to run the upgrade tool with administrator privileges (SIM7500_SIM7600_QDL V1.41 only for Update)
4. Uninstall and reinstall the upgrade tool (SIM7500_SIM7600_QDL V1.41 only for Update)
5. For more operation details, please refer to this video: https://www.waveshare.net/wiki/SIM7600-Firmware-upgrade-Video
If the short message is stored in the SIM card, usually 50 is the upper limit. You can use the command: AT+CPMS? Make a query
- Gain: 9dbi ± 0.7dbi
Question:What should I do if the SIM7600X module NDIS dialing fails and the driver cannot be installed?
- It is recommended to use the more convenient RNDIS dial
- Can burn the latest Raspberry Pi Raspbian system, reconfigure NDIS dial-up
- Or use the image that has been configured with the driver NDIS dial-up and start the raspbian system image (the driver has been installed)
- Currently there is the driver source code of Android4-Android11, that is, the system version is Android4-Android11 only supported;
- Get the source code and SDK of the Android system of the target device (requires official image support), then add SIMCOM's Android system driver source code to the Android source code, and recompile (the compilation time varies from 1-10 hours, it is recommended to use a high-configuration PC operate);
- If the USB can be recognized, it means that the Android driver has been installed successfully. Set the module to 9011 mode or 9018 mode, and you can dial up to access the Internet;
- The steps to install the Android driver are cumbersome, and the operator is required to have certain Android system development experience and R&D capabilities.
The IP obtained by different dialing methods is different and has different characteristics. Please refer to the following table for details:
Below is a detailed description of the various dials:
- NDIS driver for Internet access (9001 mode)
This method must depend on the Linux system, and is suitable for application scenarios that need to be developed using Linux network socket programming. After loading the driver into the kernel, connect the SIM7600 to the motherboard with a USB cable. After the SIM7600 is turned on, the wwan0 network can be recognized. port, you can access the Internet through this network port. The bottom layer of this method depends on the USB virtual serial port of SIM7600. This dial-up method can obtain the IP provided by the public operator, and the network speed is faster.
- RNDIS (9011 mode)
RNDIS refers to Remote NDIS. The implementation of RNDIS based on USB is actually TCP/IP over USB, which is to run TCP/IP on the USB device, making the USB device look like a network card. This method only needs simple configuration, the motherboard will recognize the usb0 network card, and quickly obtain the usb0 network card and module or the operator's IP network access; RNDIS network speed is relatively fast, which is one of the most commonly used dial-up methods.
- ECM (9018 mode)
These two are the "NDIS" standard under Linux. ECM is the abbreviation of Ethernet Networking Control Model. ECM meets the requirements of CDC on USB. The data call established through standard CDC-ECM is routed through the router, and the obtained IP address is a private IP such as 192.168; if the kernel supports this way, no additional driver is required. All data interacting with the module through the USB bus is constrained by relevant protocols and standards, and the module reaches the module through the USB hardware to complete the interaction with the Linux motherboard.
- PPP dial-up
This method must depend on the Linux system, and is suitable for application scenarios that need to be developed using Linux network socket programming. After configuring and running the relevant scripts, connect the SIM7600 with a USB cable. After the SIM7600 is powered on, dial up the pppd script to identify it. To the ppp0 network port, you can access the Internet through this network port and obtain the operator's IP. The bottom layer of this method depends on the USB virtual serial port of SIM7600.
- AT command uses encapsulated TCP, MQTT, HTTP(S)
This method is suitable for microprocessors with limited resources, such as MCU, or for application scenarios with a relatively small amount of data, such as uploading sensor data to servers, cloud platforms, etc. through http(s), MQTT. If the network application is not complicated and the amount of data is relatively small (such as transmitting sensor data to the server and receiving control commands from the server), the function can be quickly used by using AT commands.
Question:When executing the chmod 777 sim7600_4G_hat_init command, an error is reported: "chmod: cannot access 'sim7600_4G_hat_init': No such file or directory"
The general operation is: download the sample program, after decompression, rename the c folder under the Raspberry folder to SIM7600X, then copy the entire SIM7600X folder to the Raspberry Pi /home/pi directory, and enter the command line to /home/pi /SIM7600X directory, and then execute the chmod 777 sim7600_4G_hat_init command.