#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
// Potentiometer pins
const int thumbPin = A0;
const int indexPin = A1;
const int middlePin = A2;
const int ringPin = A3;
const int littlePin = A6;
void setup() {
lcd.init();
lcd.backlight();
Serial.begin(9600);
lcd.setCursor(0, 0);
lcd.print("Sign Glove");
delay(2000);
lcd.clear();
}
void loop() {
int thumb = analogRead(thumbPin);
int index = analogRead(indexPin);
int middle = analogRead(middlePin);
int ring = analogRead(ringPin);
int little = analogRead(littlePin);
// Print values on Serial Monitor
Serial.print(thumb);
Serial.print(" hi");
Serial.print(index);
Serial.print("water ");
Serial.print(middle);
Serial.print(" food");
Serial.print(ring);
Serial.print("help ");
Serial.println(little);
Serial.print("bye");
lcd.clear();
// -------- Sample Sign Detection --------
// A
if (thumb > 700 &&
index < 400 &&
middle < 400 &&
ring < 400 &&
little < 400)
{
lcd.print("SIGN : A");
}
// B
else if (thumb < 400 &&
index > 700 &&
middle > 700 &&
ring > 700 &&
little > 700)
{
lcd.print("SIGN : B");
}
// C
else if (thumb > 450 && thumb < 650 &&
index > 450 && index < 650 &&
middle > 450 && middle < 650 &&
ring > 450 && ring < 650 &&
little > 450 && little < 650)
{
lcd.print("SIGN : C");
}
// D
else if (thumb < 400 &&
index > 700 &&
middle < 400 &&
ring < 400 &&
little < 400)
{
lcd.print("SIGN : D");
}
// Unknown
else
{
lcd.print("Unknown Sign");
}
delay(300);
}