From Waveshare Wiki
Jump to: navigation, search
SIM7670G LTE Cat-1.jpg

Raspberry Pi Cat-1/GSM/GPRS Expansion





  • Standard Raspberry Pi 40PIN GPIO headers, suitable for Raspberry Pi series boards.
  • Support network communication protocols such as TCP/IP, HTTP(s), MQTT(s), FTP(s) and SSL.
  • Support GNSS positioning, and obtain position information by satellite signal.
  • Onboard USB interface can be used for testing AT commands, networking communication, etc.
  • 3x onboard USB expansion ports, facilitate the connection of USB expansion devices.
  • Onboard SIM card slot, support 1.8V and 3V SIM card.
  • Onboard 2x module LED indicators, 4x USB LED indicators, easy to view module running status.
  • Provide online resources and tutorials (such as Raspberry/JetsonNano/Arduino/ESP32 sample demos).

Hardware Description

Onboard Resources

1. USB1 connector supports external USB device connection.

2. The main USB interface and power port are provided, enabling connection to Windows, Raspberry Pi and Jetson Nano for expanded USB connection.

3. USB2 connector supports external USB device connection.

4. USB3 connector supports external USB device connection.

5. Type-C, its function is the same as the USB connector function.

6. GNSS antenna, supports IPEX1 and SMA package.

7. LTE antenna, supports IPEX1 and SMA package.

8. 4Pin DIP switch, control SIM7670G module's UART interface to connect to the Raspberry Pi, use the pin to control the module ON/OFF, and enter programming mode.

9. Raspberry Pi GPIO 40Pin header.

10. SIM Card slot (This SIM card slot does not support hot swapping. Please power off before replacing the SIM card.)

11. Reserve test points for external MCU to use module resources.

SIM7670G-LTE-Cat-1-GNSS-HAT Onboard back.png

SIM7670G-LTE-Cat-1-GNSS-HAT Onboard face.png


  • Before using the module, you need to prepare the following things except Type C USB cable, GNSS antenna and LTE antenna:
a 4G SIM card (GPRS is available)
  • In case of power failure, insert the activated 4G SIM card, and connect the USB cable to the computer.
  • Connect one end of the Type C USB cable to the PC's USB port and the other end to the USB port of the SIM7670G LTE Cat-1/GNSS HAT. The PWR light will illuminate, and wait approximately 0 to 1 second for the module to start. The NET light will remain steady, indicating successful module startup. Wait for the module to automatically search for the network; the NET light will begin to flash.
  • Open the device manager; for first-time use, install the Windows driver. Refer to the following image for installation instructions:
  • After the driver is successfully installed, you can see more COM ports as shown below:
    SIM7670G Driver-5.png

Dial-up Internet access using LTE Cat-1 network on Windows

After connecting the module to Windows using the Type-C to USB-A cable, use the serial port debugging assistant to open AT COM and send the following command to enable RNDIS internet access:

  • To test the internet speed, open the speed testing website: Click on the mouse to start the speed test. The following image is an actual screenshot of the speed test:

SIM7670G LTE Cat-1-09.png
Theoretically, the SIM7670G module uses Cat-1 different networks with upstream and downstream rates as shown in the table below.
However, the actual speed measurement is affected by factors such as network coverage, network congestion, and base station conditions, so the data from different periods and different locations may vary.

Network Format Uplink Downlink
LTE Cat-1 5Mbps 10Mbps

Serial Port Assistant Debugging

Common AT Commands

Command Description Return Value
AT AT Test Command OK
ATE ATE1 enables echo
ATE0 disable echo
AT+SIMCOMATI Query module information OK
AT+IPREX Set module hardware serial port baudrate +IPREX:
AT+CRESET Reset module OK
AT+CSQ Query network signal quality, return signal value +CSQ: 25,99
AT+CPIN? Query SIM card status, returning 'READY,' indicating the SIM card is recognized and functioning properly +CPIN: READY
AT+COPS? Query the current network operator; upon successful connection, it will return information about the network operator +COPS:
AT+CREG? Query network registration status +CREG:
AT+CPSI? Query UE (User Equipment) system information
AT+CNMP Network mode selection command:
2: Automatic
13: GSM only
14: WCDMA only
38: LTE only
  • For more detailed AT commands, please refer to:


HTTP Request

The common commands of the HTTP function as shown below:

AT+HTTPPARA="URL", // Set target URL information
AT+HTTPACTION=0 // HTTP Get request
AT+HTTPREAD=0,500 // Output HTTP return value
AT+HTTPDATA=5,1000 // Set HTTP parameter

A7670E-Cat-1 TCP04.png

MQTT Request

The common commands for GNSS (Global Navigation Satellite System) satellite positioning are as follows:

AT+CMQTTACCQ=0,"Waveshare-7670X",0 // Set up ClientID
AT+CMQTTCONNECT=0,"tcp://",20,1 // Connect to MQTT server
AT+CMQTTTOPIC=0,8 // Set up publishing topic.
AT+CMQTTPAYLOAD=0,9 // Set message content
AT+CMQTTPUB=0,0,60 // Post a message
AT+CMQTTSUB=0,8,1 //Subscribe to topics

A7670E-Cat-1 TCP05.png

GNSS Satellite Positioning

The common commands for GNSS satellite positioning functionality are as follows:

AT+CGNSSPWR=1 // Activate GNSS
AT+CGNSSTST=1 // Enable information output
AT+CGNSSPORTSWITCH=0,1 // Switch NMEA data output port
AT+CGPSINFO // Retrieve satellite latitude and longitude data

A7670E-Cat-1 TCP06.png

Raspberry Pi User Guide

Hardware Preparation & Connection

  • A Raspberry Pi 4B/Raspberry Pi 5
  • A SIM7670G LTE Cat-1/GNSS HAT
  • A USB-A plug
  • A 4G communication card
  • A LTE antenna
  • A GPS ceramic antenna

Connect the above hardware as shown below:
SIM7670G Cat-1-GNSS-P9.png
40-Pin UART communication requires the TXD and RXD of the 4-pin dip switches on the board to be turned on.

UART Configuration

Since the Raspberry Pi's serial port is by default used for terminal debugging, modifying the Raspberry Pi settings is necessary to use the serial port.

  • Execute the following command to access the Raspberry Pi configuration:
sudo raspi-config
  • Select Interfacing Options -> Serial -> no -> yes to disable the serial port debugging feature.

L76X GPS Module rpi serial.png

Sample Demo

RPI sample demo

Open the Raspberry Pi terminal and execute:

mkdir SIM7670G_Raspberry&&cd SIM7670G_Raspberry
python -m venv env
source env/bin/activate
pip install pynmea2 pyserial paho-mqtt


This demo uses the Pynmea library to parse NMEA 0183 formatted satellite data into latitude and longitude.


After execution, there is a wait for GPS information retrieval, which can be slower due to reasons like hardware boot-up, weather conditions or weak satellite signals.
A7670E Cat-1-GNSS-p1.png
A7670E Cat-1-GNSS-p2.png


This demo is for testing the HTTP interface:


A7670E Cat-1-GNSS-p3.png


This demo combines Waveshare Cloud platform and uploads the Raspberry Pi running status to the cloud through MQTT.
1. Register and log in to Waveshare Cloud, through the Devices|Attributes interface, select the Raspberry Pi device and enter the device name through One-Click Add.
A7670E Cat-1-GNSS-p7.png
2. Obtain MQTT-related parameters of this device from the device list.
A7670E Cat-1-GNSS-p8.png
3. Fill parameter data into the code.
A7670E Cat-1-GNSS-p9.png
4. Execute the code on the cloud device.


5. View specific device dashboard information through the dashboard.
A7670E Cat-1-GNSS-p10.png
A7670E Cat-1-GNSS-p11.png




Tools & Drivers


Related Example



Taking the connection of SIM7670G LTE Cat-1/GNSS HAT to Raspberry Pi as an example, after parsing the latitude and longitude information of satellite signals through the code, you can simply input the latitude and longitude data into a map that supports the NMEA 0183 coordinate system.
Here, we will demonstrate using the map service provided by Waveshare Cloud:
1. Create any type of device on the device attribute page and obtain the MQTT connection data.
A7670E Cat-1-GNSS-HAT faq.png
2. Input the parameters to the "Raspberry/GPSMaps/" demo:
A7670E Cat-1-GNSS-HAT faq02.png
3. Connect the SIM7670G LTE Cat-1/GNSS HAT to the Raspberry Pi and run the example demo located at Raspberry/GPSMaps/ Wait for the satellite signal to be parsed successfully, and you can then view the location information on the map.
A7670E Cat-1-GNSS-HAT faq03.png



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)