#include <Adafruit_SSD1306.h>
#include <SoftwareSerial.h>
#define oledreset 4
Adafruit_SSD1306 display(oledreset);
const int button = 4;
const int pir = 3;
const int buzzer = 2;
SoftwareSerial MyBlue(2, 3);
int count = 0;
int Read=0;
void setup() {
Serial.begin(9600);
MyBlue.begin(9600);
display.begin(SSD1306_SWITCHCAPVCC<0x3C);
display.clearDisplay();
display.setTextSize(1);
display.setTextColor(WHITE);
pinMode(buzzer, OUTPUT);
pinMode(pir, INPUT);
pinMode(button, INPUT);
}
void loop() {
delay(100);
if (digitalRead(pir) == HIGH && digitalRead(button)==HIGH) {
count++;
delay(250);
}
Read=digitalRead(button);
if (Read==1) {
display.setCursor(0,0);
digitalWrite(buzzer, HIGH);
display.clearDisplay();
display.println("Welcome!");
display.display();
delay(700);
display.clearDisplay();
display.setCursor(0,0);
display.print(count);
display.println(" people are waiting.");
display.display();
Read=0;
delay(1000);
display.clearDisplay();
count = 0;
Read=0;
} else {
display.setCursor(0,0);
display.println("Ready to connect");
display.display();
display.println("Password 1234");
display.display();
delay(1000);
display.clearDisplay();
}
display.display();
delay(1000);
display.clearDisplay();
digitalWrite(buzzer, LOW);
Read=0;
}