#include <WiFi.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// #include <ESP32Servo.h>
LiquidCrystal_I2C LCD = LiquidCrystal_I2C(0x27, 16, 2);
#define METER_PIN 13
#define RELAY_PIN 12
void spinner() {
static int8_t counter = 0;
const char* glyphs = "\xa1\xa5\xdb";
LCD.setCursor(15, 1);
LCD.print(glyphs[counter++]);
if (counter == strlen(glyphs)) {
counter = 0;
}
}
void readKnob() {
// struct tm timeinfo;
// if (!getLocalTime(&timeinfo)) {
// LCD.setCursor(0, 1);
// LCD.println("Connection Err");
// return;
// }
int val = analogRead(METER_PIN);
Serial.println(val);
LCD.setCursor(0, 0);
LCD.println(val);
if (val > 500) {
digitalWrite(RELAY_PIN, HIGH);
} else {
digitalWrite(RELAY_PIN, LOW);
}
// LCD.setCursor(0, 1);
// LCD.println(&timeinfo, "%d/%m/%Y %Z");
}
void setup() {
Serial.begin(115200);
pinMode(METER_PIN, INPUT);
pinMode(RELAY_PIN, OUTPUT);
LCD.init();
LCD.backlight();
LCD.setCursor(0, 0);
LCD.clear();
}
// TODO: 1. LCD work
// TODO: 2. wiring
// TODO: 3. arduino mapping.
void loop() {
readKnob();
delay(50);
}