#include <SoftwareSerial.h>
#define DEBUG true
int v1 = 0;
int v2 = 0;
int v3 = 0;
int v4 = 0;
SoftwareSerial esp8266(2,3); // make RX Arduino line is pin 3, make TX Arduino line is pin 2.
void setup() {
esp8266.begin(115200);
sendData("AT+RST\r\n",2000,DEBUG); // reset module
sendData("AT\r\n",2000,DEBUG); // reset module
sendData("AT+CWMODE=1\r\n",2000,DEBUG); // configure as Wireless Station mode
sendData("AT+CWJAP=\"Wokwi-GUEST\",\"\"\r\n", 6000, DEBUG); //Put Your SSID and password if activate as Station mode else comment down the line
}
void loop() {
char payload[500];
v1 = analogRead(A0);
v2 = analogRead(A1);
v3 = analogRead(A2);
v4 = analogRead(A3);
sprintf(payload,"AT+HTTPCLIENT=2,0,\"http://dweet.io/dweet/for/nome_dispositivo?A0=%d&A1=%d&A2=%d&A3=%d\",\"api.thingspeak.com\",\"/update?api_key=9Y72RW98SUEQXB1G&field1=%d&field2=%d&field3=%d&field4=%d\",1\r\n",v1,v2,v3,v4);
sendData(payload,2000,DEBUG);
delay(5000);
}
void sendData(String command, const int timeout, boolean debug) {
esp8266.print(command); // send the read character to the esp8266
long int time = millis();
while( (time+timeout) > millis()) {
while(esp8266.available()) {
Serial.write(esp8266.read());
}
}
}