I am using the sim800l gsm module
with nodemcu esp8266
and comunicating with it using AT+ commands. The module is working correctly but I am trying to use the command AT+CLCC
to get all the current calls' state but it responds with only the first call information and a part of the second call.
This is the response while there are two active calls
15:37:19.156 -> AT+CLCC
15:37:19.156 -> +CLCC: 1,0,1,0,0,"+0123456789",145,"name"
15:37:19.156 ->
15:37:19.156 -> +CLCC: 2,
I think it is the Serial buffer's problem because the size of the serial buffer is 64 bytes and the response is more than that but I don't know how to handle that
I hope someone can help.
EDIT: this is the code i am using
#include <SoftwareSerial.h>
#include <cstring>
#include <Arduino.h>
#define simTX D3
#define simRX D4
SoftwareSerial sim800l(simRX, simTX); //RX, TX
void setup() {
Serial.begin(115200); //Begin serial communication with Arduino and Arduino IDE (Serial Monitor)
sim800l.begin(115200); //Begin serial communication with Arduino and SIM800L
}
void loop() {
updateSerial();
}
//Start
// this method takes input from the serial monitor the pass it to sim800l via serial communication
void updateSerial() {
delay(500);
while (Serial.available()) {
sim800l.write(Serial.read()); //Forward what Serial received to Software Serial Port
}
while (sim800l.available()) {
Serial.write(sim800l.read()); //Forward what Software Serial received to Serial Port
}
}
//End
while
toif
... see what happens22:54:55.552 -> AT+CLCC 22:54:55.552 -> +CLCC: 1,0,0,0,1,"+0123456789",145,"name" 22:54:55.552 -> 22:54:55.552 -> +CLCC:
still the same problem