#include <OneWire.h>
#include <DallasTemperature.h>
#include "ThingSpeak.h"
#include <WiFi.h>
const int ONE_WIRE_BUS = 21;
const int LED_PIN = 14;
const char* WIFI_NAME = "Wokwi-GUEST";
const char* WIFI_PASSWORD = "";
const int myChannelNumber = 2510261;
const char* myApiKey = "05IAPF0JCVQS1CH4";
const char* server = "api.thingspeak.com";
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
WiFiClient client;
void setup() {
Serial.begin(115200);
pinMode(LED_PIN, OUTPUT);
WiFi.begin(WIFI_NAME, WIFI_PASSWORD);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Wifi not connected");
}
Serial.println("Wifi connected !");
Serial.println("Local IP: " + String(WiFi.localIP()));
sensors.begin();
ThingSpeak.begin(client);
}
void loop() {
sensors.requestTemperatures();
float temperature = sensors.getTempCByIndex(0);
ThingSpeak.setField(1, temperature);
if (temperature > 35 || temperature < 12) {
digitalWrite(LED_PIN, HIGH);
} else {
digitalWrite(LED_PIN, LOW);
}
int x = ThingSpeak.writeField(myChannelNumber, 1, temperature, myApiKey);
Serial.println("Temp: " + String(temperature, 2) + "°C");
if (x == 200) {
Serial.println("Data pushed successfully");
} else {
Serial.println("Push error: " + String(x));
}
Serial.println("---");
}
Loading
esp32-s2-devkitm-1
esp32-s2-devkitm-1
Loading
ds18b20
ds18b20