Anyone can help me? why my code not success sent data, and why cannot show anything in serial monitor? i need feedback from server show in serial monitor
#include <SoftwareSerial.h>
SoftwareSerial SIM800L(19,18); //Serial SIM800L pin
String apn = "internet";
const char server[] = "marda-indra.com";//"10.31.71.8";
const char resource[] = "/smart-fisheries/api/Ukur/createData";
void setup(){
Serial.begin(115200);
SIM800L.begin(9600);
Serial.println("SIM800L GPRS Test");
delay(2000);
}
void loop(){
SetupModule();
SIM800L.println("AT+CIPSTART=\"TCP\",\"marda-indra.com\",443");
String jsonD = "{\"auth\":\"ALATPLN8BE1C54B38C60AA5F96C8C04AD907D4F75DF887\",\"key\":\"SMARTFISHERIES412131\",\"idAlat\":\"0001s\",\"tgl\":\"2021-12-23\",\"tglTime\":\"2021-12-23 12:01:00\",\"jam\":\"12:00\",\"latitude\":\"1.124208\",\"longitude\":\"104.023499\",\"ph\":\"2.01\",\"salinitas\":\"2\",\"dissolvedOxygen\":\"5\",\"suhu\":\"3\",\"ketinggianAir\":\"1.1\",\"pln\":\"true\",\"keterangan\":\"test\"}";
unsigned int l=jsonD.length();
SIM800L.print("AT+CIPSEND");
SIM800L.print(String("POST ") + resource + " HTTP/1.1\r\n");
SIM800L.print(String("Host: ") + server + "\r\n");
SIM800L.println("Content-Type: application/json");
SIM800L.print("Content-Length: ");
SIM800L.println(l);
SIM800L.println();
SIM800L.println(String(jsonD));
while(SIM800L.available()!=0){
Serial.write(SIM800L.read());
}
SIM800L.println("AT+CIPSHUT");//close the connection
delay(500);
jsonD ="";
delay(5000); //add 10s for 60s total delay looping
}
void SetupModule(){
if (SIM800L.available())Serial.write(SIM800L.read());
SIM800L.println("AT"); delay(1000);
SIM800L.println("AT+CPIN?"); delay(1000);
SIM800L.println("AT+CREG?"); delay(1000);
SIM800L.println("AT+CGATT?"); delay(1000);
SIM800L.println("AT+CIPSHUT");delay(1000);
SIM800L.println("AT+CIPSTATUS"); delay(2000);
SIM800L.println("AT+CIPMUX=0"); delay(2000);
SIM800L.println("AT+CSTT=\""+apn+"\"");delay(1000);
SIM800L.println("AT+CIICR"); delay(2000);
SIM800L.println("AT+CIFSR"); delay(2000);
SIM800L.println("AT+CIPSPRT=0");delay(2000);
}