#include <ESP8266WiFi.
h>
#include <ESP8266HTTPClient.h>
#define echoPin 4 // D2 Nodemcu = Echo Pin
#define trigPin 5 // D1 Nodemcu = Trigger Pin
long durasi, ketinggian,TinggiBak;
HTTPClient http;
String url="https://api.telegram.org/bot<token>/sendMessage?chat_id=<id_tujuan>&text=";
int sensor;
void setup() {
WiFi.mode(WIFI_STA);
WiFi.begin("SSSID", "PASSWORD");
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
durasi = pulseIn(echoPin, HIGH);
ketinggian = TinggiBak - (durasi/58.2);
String myurl = url + String(ketinggian);
http.begin(myurl,"BB:DC:45:2A:07:E3:4A:71:33:40:32:DA:BE:81:F7:72:6F:4A:2B:6B");
http.GET();
http.end();
delay(2000);
}
//Inisialisasi Telegram Bot dan WiFI
#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
char ssid[] = "Nama WiFi temen2";
char password[] = "password wifi temen2";
// Initialize Telegram BOT
#define BOTtoken "Masukkan Bot Token milik temen2"
#define chat_id "ID Bot Telegram temen2"
WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);
//Inisialisasi sensor PIR
#define PIR_MOTION_SENSOR D2
#define LED D4
void connectwifi(){
// Attempt to connect to Wifi network:
Serial.print("Connecting Wifi: ");
Serial.println(ssid);
// Set WiFi to station mode and disconnect from an AP if it was Previously
// connected
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println("");
Serial.println("WiFi connected");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
}
void setup(){
Serial.begin(115200);
pinMode(PIR_MOTION_SENSOR, INPUT);
pinMode(LED,OUTPUT);
pinMode(button1, INPUT);
connectwifi();
}
void loop() {
//Pir Setting
if(isPeopleDetected())
turnOnLED();
else
turnOffLED();
}
void turnOnLED(){
digitalWrite(LED,HIGH);
Serial.println("Gerakan Terdeteksi");
bot.sendChatAction(chat_id, "Sedang Mengetik");
Serial.println("Mengidentifikasi Adanya Gerakan");
bot.sendMessage(chat_id, "Gerakan Terdeteksi", "");
}
void turnOffLED(){
digitalWrite(LED,LOW);
Serial.println("Tidak ada Gerakan Terdeteksi");
bot.sendChatAction(chat_id, "Sedang Mengetik");
Serial.println("Mengidentifikasi Sensor");
bot.sendMessage(chat_id, "Tidak ada Gerakan Terdeteksi", "");
}
boolean isPeopleDetected(){
int sensorValue = digitalRead(PIR_MOTION_SENSOR);
if(sensorValue == HIGH)
{
return true;
}
else
{
return false;
}
}
#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>
#include <Servo.h> //Add servo library
#include <Ultrasonic.h>
int distance,distance1;
int getFingerprintIDez();
Ultrasonic ultrasonic(5,4);
Ultrasonic ultrasonic1(11,12);
Servo servo1,servo2;
int servoMin = 0;
SoftwareSerial mySerialnodemcu(7, 8);
SoftwareSerial mySerial(2, 3);
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
void setup()
{
while (!Serial);
mySerialnodemcu.begin(115200);
Serial.begin(9600);
Serial.println("Adafruit finger detect test");
servo1.attach(9);
servo1.write(servoMin);
servo2.attach(10);
servo2.write(servoMin);
// set the data rate for the sensor serial port
finger.begin(57600);
if (finger.verifyPassword()) {
Serial.println("Found fingerprint sensor!");
} else {
Serial.println("Did not find fingerprint sensor :(");
while (1);
}
Serial.println("Waiting for valid finger...");
}
void loop() // run over and over again
{ distance = ultrasonic.distanceRead();
Serial.print("Distance in CM: ");
Serial.println(distance);
delay(100);
if(distance<=10){
servo1.write(0);
mySerialnodemcu.print('D');
}
distance1 = ultrasonic1.distanceRead();
Serial.print("Distance1 in CM: ");
Serial.println(distance1);
delay(100);
if(distance1<=10){
servo2.write(90);
mySerialnodemcu.print('A');
delay(5000);
servo2.write(0);
mySerialnodemcu.print('X');
}
getFingerprintIDez();
delay(50); //don't ned to run this at full speed.
}
uint8_t getFingerprintID() {
uint8_t p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image taken");
break;
case FINGERPRINT_NOFINGER:
Serial.println("No finger detected");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Imaging error");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK success!
p = finger.image2Tz();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image converted");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Image too messy");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_FEATUREFAIL:
Serial.println("Could not find fingerprint features");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("Could not find fingerprint features");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK converted!
p = finger.fingerFastSearch();
if (p == FINGERPRINT_OK) {
Serial.println("Found a print match!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} else if (p == FINGERPRINT_NOTFOUND) {
Serial.println("Did not find a match");
return p;
}else {
Serial.println("Unknown error");
return p;
}
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
}
// returns -1 if failed, otherwise returns ID #
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) return -1;
p = finger.image2Tz();
if (p != FINGERPRINT_OK) return -1;
p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -1;
servo1.write(90);
mySerialnodemcu.print('B');
// found a match!
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
Serial.println("Ndaru aji p");
return finger.fingerID;
}
#include <ESP8266WiFi.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>
#include <SoftwareSerial.h>
char ssid[] = "ssid";
char password[] = "password";
#define BOTtoken "BOT:token"
String chatid = "chatid";
WiFiClientSecure client;
UniversalTelegramBot bot(BOTtoken, client);
SoftwareSerial mySerialnodemcu(D2, D3);
char baca;
String notifikasi;
void setup() {
mySerialnodemcu.begin(115200);
Serial.begin(9600);
WifiStatus();
}
void loop() {
if(mySerialnodemcu.available()>0){
baca = mySerialnodemcu.read();
Serial.println(baca);
if(baca == 'B'){
notifikasi = "Pintu depan terbuka";
bot.sendMessage(chatid, notifikasi);
}
if(baca == 'D'){
notifikasi = "Pintu depan tertutup";
bot.sendMessage(chatid, notifikasi);
}
if(baca == 'A'){
notifikasi = "Pintu samping terbuka";
bot.sendMessage(chatid, notifikasi);
}
if(baca == 'X'){
notifikasi = "Pintu samping tertutup";
bot.sendMessage(chatid, notifikasi);
}
Serial.println(notifikasi);
}
}
void WifiStatus() {
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(100);
Serial.print("Connecting Wifi: ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
Serial.print(".");
delay(500);
}
Serial.println("");
Serial.println("WiFi connected");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
}