#include <WiFi.h>
#include "ThingSpeak.h"
// WiFi credentials for Wokwi
const char* ssid = "Wokwi-GUEST";
const char* password = "";
// ThingSpeak settings
unsigned long channelID = week5; // replace
const char * writeAPIKey = "R2B28JEPMTE6XNKT"; // replace
WiFiClient client;
// LED pin
int ledPin = 2;
// Variables for simulated AI output
String label;
float confidence;
void setup() {
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
// Connect WiFi
WiFi.begin(ssid, password);
Serial.print("Connecting to WiFi");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println();
Serial.println("WiFi connected!");
ThingSpeak.begin(client);
}
void loop() {
// Simulated AI predictions
int randomCommand = random(0,3);
if(randomCommand == 0){
label = "on";
confidence = 0.95;
digitalWrite(ledPin, HIGH);
}
else if(randomCommand == 1){
label = "off";
confidence = 0.92;
digitalWrite(ledPin, LOW);
}
else{
label = "background";
confidence = 0.80;
}
Serial.println("Voice Prediction:");
Serial.println(label);
Serial.println(confidence);
// Send data to ThingSpeak
ThingSpeak.setField(1, label);
ThingSpeak.setField(2, confidence);
int x = ThingSpeak.writeFields(channelID, writeAPIKey);
if(x == 200){
Serial.println("Data sent to ThingSpeak successfully");
}
else{
Serial.println("Problem sending data");
}
Serial.println("-----------------------");
delay(15000); // ThingSpeak requires 15 sec delay
}