Close Menu
  • Articles
    • Learn Electronics
    • Product Review
    • Tech Articles
  • Electronics Circuits
    • 555 Timer Projects
    • Op-Amp Circuits
    • Power Electronics
  • Microcontrollers
    • Arduino Projects
    • STM32 Projects
    • AMB82-Mini IoT AI Camera
    • BLE Projects
  • IoT Projects
    • ESP8266 Projects
    • ESP32 Projects
    • ESP32 MicroPython
    • ESP32-CAM Projects
    • LoRa/LoRaWAN Projects
  • Raspberry Pi
    • Raspberry Pi Projects
    • Raspberry Pi Pico Projects
    • Raspberry Pi Pico W Projects
  • Electronics Calculator
Facebook X (Twitter) Instagram
  • About Us
  • Disclaimer
  • Privacy Policy
  • Contact Us
  • Advertise With Us
Facebook X (Twitter) Instagram Pinterest YouTube LinkedIn
How To Electronics
  • Articles
    • Learn Electronics
    • Product Review
    • Tech Articles
  • Electronics Circuits
    • 555 Timer Projects
    • Op-Amp Circuits
    • Power Electronics
  • Microcontrollers
    • Arduino Projects
    • STM32 Projects
    • AMB82-Mini IoT AI Camera
    • BLE Projects
  • IoT Projects
    • ESP8266 Projects
    • ESP32 Projects
    • ESP32 MicroPython
    • ESP32-CAM Projects
    • LoRa/LoRaWAN Projects
  • Raspberry Pi
    • Raspberry Pi Projects
    • Raspberry Pi Pico Projects
    • Raspberry Pi Pico W Projects
  • Electronics Calculator
How To Electronics
Home » HTTP Post with SIM7600 & Arduino | Send Data to Server
Arduino Projects IoT Projects

HTTP Post with SIM7600 & Arduino | Send Data to Server

Mamtaz AlamBy Mamtaz AlamUpdated:August 20, 20224 Comments5 Mins Read
Share Facebook Twitter LinkedIn Telegram Reddit WhatsApp
SIM7600 HTTP Post Arduino
Share
Facebook Twitter LinkedIn Pinterest Email Reddit Telegram WhatsApp

Overview

In this article, we will learn how we can make HTTP Post with SIM7600 GSM 4G LTE & Arduino. We will use SIM7600 4G LTE commands with Arduino and send the DHT11 Sensor data to Thingspeak Server.

Earlier we made an HTTP post request using SIM800/900 2G GSM Module. But 2G GSM/GPRS service is closed in most countries & regions, such as Australia or Canada. But there are indeed some projects that need remotely wireless communication, or access to the Internet. Considering the wireless communication, for most cases, LTE 4G is still a proper solution.

Therefore SIM7600 4G LTE Module is a solution for all those 2G Modems. The 4G GSM LTE Module allows you to add location-tracking, voice, text, SMS, and data to your application. The big advantage of 4G LTE Modem Connectivity is, it covers a wide area and signal/connectivity is available almost everywhere.

In this project, we will learn about the Internet of Things using 4G LTE Module also called as Cellular IoT. Using the SIM7600 LTE AT Commands with HTTP Post method, the humidity & temperature data will be sent to Thingspeak server.


Bill of Materials

S.N.ComponentsQuantityPurchase Links
1SIM7600 Board1Makerfabs
3DHT11 Sensor1Amazon | AliExpress
2Connecting Wires1Amazon | AliExpress



SIM7600 4G LTE Arduino Cutomized Board

The SIM7600A-H/SIM7600E-H is a complete multi-band LTE-FDD/LTE-TDD/HSPA+ /UMTS/EDGE/GPRS/GSM module solution in LCC type. It supports LTE CAT4 up to 150Mbps for downlink and 50Mbps for uplink data transfer, much faster and popular than 2G/3G.

Maduino Zero 4G LTE(SIM7600X) Board

You can purchase this board from Maduino Zero 4G LTE(SIM7600X) as it is manufactured by Makerfabs.

Makerfabs Maduino Zero 4G LTE module is based on ATSAMD21G18A microcontroller, which is Arduino compatible. Hence you can use Arduino IDE to operate and program the SIM7600 Module or make HTTP Post. The front and back side of the board looks something like this.

SIM7600 Board Interfaces

On the front side you can connect a 3.7V Lithium-Ion Battery to the battery connector. The switch can be used to turn ON/OFF the module. There are two USB TypeC ports, one for microcontrollers and the other for LTE. There are two pushbuttons used for MCU & LTE reset. The stat LED indicates the network connectivity status. You can connect 3 antennas to the board which are the main antenna, auxiliary antenna, and a GPS antenna. A 3.5mm Jack can be used to connect mic or earphones and an audio jack can be used for connecting speakers.

On the backside, there is a micro-sim slot for inserting a 4G SIM Card. There is a pair of SD Card slots, one for Microcontroller and the other for SIM7600.

Note: Don’t plug or unplug the Antenna, SIM Cars, SD Card when the device is powered on. It may result in short-circuiting that may burn the IC down.


HTTP Post with SIM7600 & Arduino

Now let use use the SIM7600 & Arduino to send the DHT11 Sensor data to Thingpspeak Server. For this we will use HTTP Post method and with SIM7600 AT Commands. We already tested the AT commands for checking HTTP Data in previous post. You can refere to Testing SIM7600 AT Commands from SIM7600 basics.




Hardware Connections

We will use DHT11 Humidity and Temperature Sensor for this purpose. The DHT11 is a basic, ultra low-cost digital temperature and humidity sensor. It uses a capacitive humidity sensor and a thermistor to measure the surrounding air and spits out a digital signal on the data pin.

SIM7600 HTTP Post Arduino DHT11

Connect the VCC & GND Pin of DHT11 to the Board 3.3V & GND Pin. Similarly, connect the output pin of the sensor to the board D3 Pin which is a digital pin of Arduino.


Setting up Arduino IDE

The ATSAMD21G18A board isn’t pre-installed in the Arduino IDE. So, we need to install “Arduino Zero Board” from the Board Manager.

Open the Boards Manager From the top Arduino IDE menu, select Tools-> Board-> Boards Manager… to open the Boards Manager dialog box. Then install Arduino SAMD Boards(32-bits ARM Cortex-M0+).

Once, installation is completed, you can now select the Arduino Zero board as shown in the image below. To program this Board you need to connect USB TypeC Data Cable.


Setting up Thingspeak

ThingSpeak provides very good tool for IoT based projects. By using the ThingSpeak site, we can monitor our data and control our system over the Internet, using the Channels and web pages provided by ThingSpeak. So first you need to sign up for ThingSpeak. So visit https://thingspeak.com and create an account.

Thingspeak Setup

Then create a new channel and set up a widget for DHT11 Humidity and Temperature Value.

Then create the API keys. This key is required for programming modifications and setting your data.




Source Code/Program to make SIM7600 HTTP Post

The following Arduino code is used for making SIM7600 HTTP Post request. Copy the following code and make some changes as indicated.

Change the Apikey with the API Key of your Thingspeak Server.

1
String Apikey = "***************";

In the following line, change the APN with the APN of your SIM Card cellular Network Provider.

1
sendData("AT+CGDCONT=1,\"IP\",\"apn\"", 1000, DEBUG);

Here is the complete code. You can upload it to the ATSAMD Controller with a native USB port.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <stdio.h>
#include <string.h>
#include <DHT.h>
 
//Change the API key to yours
String Apikey = "***************";
 
#define DEBUG true
#define LTE_RESET_PIN 6
#define LTE_PWRKEY_PIN 5
#define LTE_FLIGHT_PIN 7
#define Sensor_PIN 3  //D3-DHT11
 
DHT  dht(Sensor_PIN,DHT11);
 
void setup()
{
    SerialUSB.begin(115200);
    //while (!SerialUSB)
    {
      ; // wait for Arduino serial Monitor port to connect
    }
    Serial1.begin(115200);
  
    //Serial1.begin(UART_BAUD, SERIAL_8N1, MODEM_RXD, MODEM_TXD);
  
    pinMode(LTE_RESET_PIN, OUTPUT);
    digitalWrite(LTE_RESET_PIN, LOW);
  
    pinMode(LTE_PWRKEY_PIN, OUTPUT);
    digitalWrite(LTE_RESET_PIN, LOW);
    delay(100);
    digitalWrite(LTE_PWRKEY_PIN, HIGH);
    delay(2000);
    digitalWrite(LTE_PWRKEY_PIN, LOW);
    
    pinMode(LTE_FLIGHT_PIN, OUTPUT);
    digitalWrite(LTE_FLIGHT_PIN, LOW);//Normal Mode
    
    delay(5000);
 
    
    /*ModuleState = moduleStateCheck();
    if (ModuleState == false) //if it's off, turn on it.
    {
        digitalWrite(PWR_KEY, LOW);
        delay(3000);
        digitalWrite(PWR_KEY, HIGH);
        delay(10000);
        SerialUSB.println("Now turnning the SIM7600 on.");
    }*/
    
 
    sendData("AT+CCID", 3000, DEBUG);
    sendData("AT+CREG?", 3000, DEBUG);
    sendData("AT+CGATT=1", 1000, DEBUG);
    sendData("AT+CGACT=1,1", 1000, DEBUG);
    sendData("AT+CGDCONT=1,\"IP\",\"apn\"", 1000, DEBUG);
 
    //sendData("AT+CIPSTART=\"TCP\",\"www.mirocast.com\",80", 2000, DEBUG);
    SerialUSB.println("4G HTTP Test Begin!");
 
    dht.begin();
    delay(1000);
}
 
void loop()
{
    //--------Get temperature and humidity-------------
    float h = dht.readHumidity();
    float t = dht.readTemperature();
     SerialUSB.print("Humidity: ");
     SerialUSB.print(h);
     SerialUSB.println("%");
     SerialUSB.print("Temperature: ");
     SerialUSB.print(t);
     SerialUSB.println("*C");
     delay(1000);
 
    //-----------HTTP---------------------
    String http_str = "AT+HTTPPARA=\"URL\",\"https://api.thingspeak.com/update?api_key=" + Apikey + "&field1=" + (String)t + "&field2=" + (String)h + "\"\r\n";
    SerialUSB.println(http_str);
 
    sendData("AT+HTTPINIT\r\n", 2000, DEBUG);
    sendData(http_str, 2000, DEBUG);
    sendData("AT+HTTPACTION=0\r\n", 3000, DEBUG);
    sendData("AT+HTTPTERM\r\n", 3000, DEBUG);
 
    delay(5000);  
}
 
bool moduleStateCheck()
{
    int i = 0;
    bool moduleState = false;
    for (i = 0; i < 5; i++)
    {
        String msg = String("");
        msg = sendData("AT", 1000, DEBUG);
        if (msg.indexOf("OK") >= 0)
        {
            SerialUSB.println("SIM7600 Module had turned on.");
            moduleState = true;
            return moduleState;
        }
        delay(1000);
    }
    return moduleState;
}
 
String sendData(String command, const int timeout, boolean debug)
{
  String response = "";
  Serial1.println(command);
  
  long int time = millis();
  while ( (time + timeout) > millis())
  {
    while (Serial1.available())
    {
      char c = Serial1.read();
      response += c;
    }
  }
  if (debug)
  {
    SerialUSB.print(response);
  }
  return response;
}


Testing & Results

After uploading the code, wait for the blue light to blink on the board.

SIM7600 HTTP Post Arduino

Then open your Serial Monitor. The Serial Monitor should show the following output.

HTTP Post with SIM7600

This means your 4G modem is working fine. Sometimes it shows a 204. The number 204 is not an error code; it means that the server has successfully fulfilled your request, but has nothing to send in response. It is basically (and very loosely) an ACK without further comment.


Now go to the private view of Thingspeak Server. The Thingspeak Server will show the following data of Humidity and Temperature plotted on the Thingspeak private view.

This is how you can make HTTP Post using SIM7600 4G LET Modem & Arduino and send DHT11 sensor data to Thingspeak Server.


Video Tutorial & Guide

Cellular IoT with 4G LTE SIM7600 Modem | Send Data to Server with HTTP Post using SIM7600 & Arduino
Watch this video on YouTube.

Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Reddit Telegram WhatsApp
Previous ArticleUsing SIM7600 4G GSM with Arduino | AT Commands, Call, SMS
Next Article DIY SmartPhone Oscilloscope using Raspberry Pi Pico

Related Posts

ESP32 Fingerprint Attendance System with Live Web Dashboard

ESP32 Fingerprint Attendance System with Live Web Dashboard

Updated:June 21, 2026
IoT Based PM & Air Quality Monitoring System using ESP32

IoT Based PM & Air Quality Monitoring System using ESP32

Updated:June 14, 2026
DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

Updated:May 10, 20262K
IoT Activity Tracker with ESP32 & Accelerometer Gyroscope

IoT Activity Tracker with ESP32 & Accelerometer/Gyroscope

Updated:May 2, 2026

ESP32 IoT Vehicle Motion Analyzer with MPU6050 & LIS3MDL

Updated:April 27, 20261K
High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

Updated:April 27, 20262K
View 4 Comments

4 Comments

  1. Hansie Hertzog on April 11, 2022 5:50 PM

    Please make a video with the TTGO esp32 SiM7600E bord
    It would really help as there is no toutorials on the internet

    Reply
  2. Danny Pham on September 26, 2022 5:47 AM

    I had an error saying: “SerialUSB was not declared in this scope” for the last SerialUSB line when uploading it to Ardruino IDE. How can I fix this.

    Reply
  3. Priyadarshan S on January 19, 2023 5:00 AM

    I am using sim7600EI with arduino uno to use this HTTP. But I am unable to upload it to thingspeak. Can you please tell me what pins are important for this to be implemented or what should I do to make this working. I followed everything same as your code. However I am unable to see the At command response i get from the sim7600ei module. I have triple checked the txrx pins and everthing seems to be fine.

    Reply
  4. Boubout on February 22, 2023 5:50 AM

    I have the same issue

    Reply

CommentsCancel reply

Latest Posts
ESP32 Fingerprint Attendance System with Live Web Dashboard

ESP32 Fingerprint Attendance System with Live Web Dashboard

June 21, 2026
IoT Based PM & Air Quality Monitoring System using ESP32

IoT Based PM & Air Quality Monitoring System using ESP32

June 14, 2026
DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

DIY ESP32 MLX90640 IR Thermal Camera with Live Web Display

May 10, 2026
IoT Activity Tracker with ESP32 & Accelerometer Gyroscope

IoT Activity Tracker with ESP32 & Accelerometer/Gyroscope

May 2, 2026
A Guide to Sourcing Obsolete ICs for Vintage Projects

Beyond AliExpress: A Guide to Sourcing Obsolete ICs for Vintage Projects

April 21, 2026

ESP32 IoT Vehicle Motion Analyzer with MPU6050 & LIS3MDL

April 27, 2026
Building a Smart Sensor Node with a BLE Microcontroller

Building a Smart Sensor Node with a BLE Microcontroller

February 26, 2026
High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

High-Accuracy Pitch, Roll, Yaw with ESP32 & BNO08x IMU

April 27, 2026
Top Posts & Pages
  • ESP32 Fingerprint Attendance System with Live Web Dashboard
    ESP32 Fingerprint Attendance System with Live Web Dashboard
  • Buck Converter: Basics, Working, Design & Application
    Buck Converter: Basics, Working, Design & Application
  • ESP32 CAN Bus Tutorial | Interfacing MCP2515 CAN Module with ESP32
    ESP32 CAN Bus Tutorial | Interfacing MCP2515 CAN Module with ESP32
  • 12V DC to 220V AC Inverter Circuit & PCB
    12V DC to 220V AC Inverter Circuit & PCB
  • IoT AC Energy Meter with PZEM-004T & ESP32 WebServer
    IoT AC Energy Meter with PZEM-004T & ESP32 WebServer
  • LD2410 Sensor with ESP32 - Human Presence Detection
    LD2410 Sensor with ESP32 - Human Presence Detection
  • DIY IoT Water pH Meter using pH Sensor & ESP32
    DIY IoT Water pH Meter using pH Sensor & ESP32
  • How to use Modbus RTU with ESP32 to read Sensor Data
    How to use Modbus RTU with ESP32 to read Sensor Data
Categories
  • Arduino Projects (197)
  • Articles (60)
    • Learn Electronics (19)
    • Product Review (15)
    • Tech Articles (28)
  • Electronics Circuits (46)
    • 555 Timer Projects (21)
    • Op-Amp Circuits (7)
    • Power Electronics (13)
  • IoT Projects (205)
    • ESP32 MicroPython (7)
    • ESP32 Projects (82)
    • ESP32-CAM Projects (15)
    • ESP8266 Projects (76)
    • LoRa/LoRaWAN Projects (22)
  • Microcontrollers (38)
    • AMB82-Mini IoT AI Camera (4)
    • BLE Projects (18)
    • STM32 Projects (19)
  • Raspberry Pi (93)
    • Raspberry Pi Pico Projects (57)
    • Raspberry Pi Pico W Projects (12)
    • Raspberry Pi Projects (24)
Follow Us
  • Facebook
  • Twitter
  • Pinterest
  • Instagram
  • YouTube
About Us

“‘How to Electronics’ is a vibrant community for electronics enthusiasts and professionals. We deliver latest insights in areas such as Embedded Systems, Power Electronics, AI, IoT, and Robotics. Our goal is to stimulate innovation and provide practical solutions for students, organizations, and industries. Join us to transform learning into a joyful journey of discovery and innovation.

Copyright © How To Electronics. All rights reserved.
  • About Us
  • Disclaimer
  • Privacy Policy
  • Contact Us
  • Advertise With Us

Type above and press Enter to search. Press Esc to cancel.

Ad Blocker Enabled!
Ad Blocker Enabled!
Looks like you're using an ad blocker. Please allow ads on our site. We rely on advertising to help fund our site.