

The SIM7600-4G-Hat-B is a 4G LTE communication module manufactured by Waveshare, designed specifically for Raspberry Pi. It provides high-speed mobile data connectivity and GPS functionality, making it an ideal solution for IoT applications, remote monitoring, and location-based services. This module supports multiple communication protocols, including LTE, GSM, and GPRS, ensuring reliable and versatile connectivity.








Below are the key technical details and pin configurations for the SIM7600-4G-Hat-B:
| Parameter | Specification |
|---|---|
| Manufacturer | Waveshare |
| Part ID | SIM7600 |
| Communication Protocols | LTE, GSM, GPRS |
| LTE Bands Supported | B1/B3/B5/B7/B8/B20/B28 |
| GPS Support | Yes (supports GPS, GLONASS, BeiDou, Galileo, and QZSS) |
| Input Voltage | 5V (via Raspberry Pi GPIO or USB) |
| Power Consumption | Idle: ~20mA, Active: ~200mA (varies with network conditions) |
| Operating Temperature | -40°C to +85°C |
| Dimensions | 65mm × 56mm |
| Interfaces | UART, USB, GPIO, SIM card slot |
| Antenna Ports | 2 (Main and GPS antennas) |
The SIM7600-4G-Hat-B connects to the Raspberry Pi via GPIO pins. Below is the pin configuration:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | 5V | Power input (5V) |
| 2 | GND | Ground connection |
| 3 | TXD | UART Transmit (connects to Raspberry Pi RXD) |
| 4 | RXD | UART Receive (connects to Raspberry Pi TXD) |
| 5 | PWRKEY | Power key (used to turn the module on/off) |
| 6 | NET_STATUS | Network status indicator (blinks to indicate network activity) |
| 7 | GPS_TXD | GPS UART Transmit (optional, for GPS data output) |
| 8 | GPS_RXD | GPS UART Receive (optional, for GPS data input) |
Hardware Setup:
Software Setup:
Example Code for Arduino UNO: If you are using the SIM7600 module with an Arduino UNO, you can use the following example code to send an SMS:
#include <SoftwareSerial.h>
// Define RX and TX pins for SoftwareSerial
SoftwareSerial sim7600(10, 11); // RX = pin 10, TX = pin 11
void setup() {
Serial.begin(9600); // Initialize Serial Monitor
sim7600.begin(9600); // Initialize SIM7600 communication
// Send AT command to check module status
sim7600.println("AT");
delay(1000);
while (sim7600.available()) {
Serial.write(sim7600.read()); // Print response to Serial Monitor
}
// Send SMS command
sim7600.println("AT+CMGF=1"); // Set SMS mode to text
delay(1000);
sim7600.println("AT+CMGS=\"+1234567890\""); // Replace with recipient's phone number
delay(1000);
sim7600.print("Hello, this is a test message from SIM7600!"); // SMS content
delay(1000);
sim7600.write(26); // Send Ctrl+Z to send the message
}
void loop() {
// No actions in loop
}
Note: Replace +1234567890 with the recipient's phone number. Ensure the Arduino is powered properly and the SIM7600 module is connected to the correct pins.
Module Not Powering On:
No Network Connection:
GPS Not Working:
No Response to AT Commands:
Q: Can I use the SIM7600-4G-Hat-B with microcontrollers other than Raspberry Pi?
A: Yes, the module can be used with other microcontrollers like Arduino, provided they support UART communication.
Q: Does the module support voice calls?
A: Yes, the SIM7600 module supports voice calls in addition to SMS and data communication.
Q: How can I update the firmware of the SIM7600 module?
A: Firmware updates can be performed via the USB interface using the manufacturer's tools and instructions.
Q: What is the maximum data speed supported by the module?
A: The SIM7600 module supports LTE Cat-4 with download speeds up to 150 Mbps and upload speeds up to 50 Mbps.