#include <WiFi.h>
#include <ThingSpeak.h>
#define SECRET_SSID "Wokwi-GUEST"
#define SECRET_PASS ""
#define SECRET_CH_ID 1949296
#define SECRET_WRITE_APIKEY "KQI7RW9FLNGY1CPJ"
char ssid[] = SECRET_SSID;
char pass[] = SECRET_PASS;
const int ANLOG_PIN = 34;
WiFiClient client;
unsigned long myChannelNumber = SECRET_CH_ID;
const char * myWriteAPIKey = SECRET_WRITE_APIKEY;
void setup()
{
Serial.begin(115200);
while (!Serial)
{;}
WiFi.mode(WIFI_STA);
ThingSpeak.begin(client);
}
void loop()
{
if (WiFi.status() != WL_CONNECTED)
{
Serial.print("Attempting to connect to SSID: ");
Serial.println(SECRET_SSID);
while(WiFi.status() != WL_CONNECTED)
{
WiFi.begin(ssid,pass);
Serial.print(".");
delay(5000);
}
Serial.println("\nConnected.");
}
int AnalogValue = analogRead(ANLOG_PIN);
float ADCvalue = (3.3/4096);
float Voltage = (AnalogValue*ADCvalue);
float Lux = (250/Voltage)-50;
String adc = String(AnalogValue);
String lux = String(Lux,2);
Serial.println("Analog Value: " + adc );
Serial.println("LUX: " + lux );
Serial.println("---");
ThingSpeak.setField(3,adc);
ThingSpeak.setField(4,Lux);
int x = ThingSpeak.writeFields(myChannelNumber, myWriteAPIKey);
if(x == 200)
{
Serial.println("Channel update successful.");
}
else
{
Serial.println("Problem updating channel. HTTP error code" + String(x));
}
delay(15000);
}