Im using sim800l to esp32 for my project but it appears it just echoes the command, it doesnt receives text
#include <HardwareSerial.h>
HardwareSerial sim800(1);
void setup() {
Serial.begin(115200);
sim800.begin(9600, SERIAL_8N1, 32, 33);
Serial.println("Initializing...");
delay(1000);
sendATCommand("ATE0\r");
delay(100);
sendATCommand("AT+CMGF=1\r");
delay(100);
sendATCommand("AT+CNMI=2,2,0,0,0\r");
}
void loop() {
if (sim800.available()) {
String message = "";
while (sim800.available()) {
char c = sim800.read();
message += c;
}
Serial.println("Received Message:");
Serial.println(message);
}
}
void sendATCommand(String command) {
sim800.print(command);
delay(1000);
while (sim800.available()) {
Serial.write(sim800.read());
}
Serial.println();
}
I do have a 470u 25v capacitor and using 3.7 lipo battery that is connected to a buck converter, making it 4.1v to power my sim800l, and it does seem to be connected to the sim network, since it blinks every 3 seconds.