groundFungus:
I am not sure which 2 you mean. Can you post the codes that you mean?
I read that the Serial buffer can only hold 64 bytes at a time. So when i run this code:
esp.println("AT+CWLAP");
delay(1000);
String str="";
while (esp.available()>0) {
i3+= esp.readString();
}
Serial.print(str);
I get the following output:
AT+CWLAP
+CWLAP:(4,"MBB_ZONG_25C7",-79,"78:52:62:29:25:c7",1,43)
+CWLAP:(3,"ZONG-MBB-E8372-470D",-46,"bc:75:74:a6:47:0d",7,50)
+CWLAP:(3,"rafaynet",-84,"b0:4e:26:07:28:78",2,36)
+CWLAP:(3,"citytt060",-60,"a4:2b:b0:a1:8a:ea",2,43)
+CWLAP:(3,"CharJi-8A3D",-82,"c0:5e:79:ff:8a:3d",6,147)
+CWLAP:(3,"PTCL-QADRI.",-93,"00:e0:92:00:01:40",8,25)
+CWLAP:(4,"Tenda_97B660",-70,"c8:3a:35:97:b6:60",8,46)
which is clearly greater than 64 bytes.
But when i connect to my server and send it a input string like this:
esp.println("AT+CIPSEND=3");
delay(100);
String i4="";
while (esp.available()>0) {
i4+= esp.readString(); //this is done just to flush out the serial buffer so i can get the data i want
}
esp.println("bbb"); // i need to store in a variable the response of the server the arduino receives when i give the server a stringlike this
delay(100);
String i5="";
char c;
while (esp.available()>0) {
c= esp.read();
i5+=c;
}
Serial.print(i5);
I get the following result stored in i5 :
busy s...
Recv 3 bytes
SEND OK
+IPD,19:the string i
where as it should have been +IPD,19:the string is found
This is where i am stuck, i can not get this whole string into a variable to use in my code.