SENSOR CAHAYA (MODUL LDR)
Program Arduino IDE
#include <WiFi.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
#define ldr 36
FirebaseData firebaseData;
String path = "/Node1";
int oldAdcLdr;
int newAdcLdr;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(ldr,INPUT);
initWifi();
oldAdcLdr = analogRead(ldr);
}
void loop() {
// put your main code here, to run repeatedly:
delay(500);
//ambil nilai dari sensor LDR dan kirim ke firebase
newAdcLdr = analogRead(ldr);
Serial.println(newAdcLdr);
if(newAdcLdr != oldAdcLdr){
Firebase.setDouble(firebaseData, path + "/ldr", newAdcLdr);
oldAdcLdr = newAdcLdr;
}
}
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
SENSOR ULTRASONIK
Program Arduino IDE
#include <WiFi.h>
#include <HCSR04.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
UltraSonicDistanceSensor distanceSensor(17,5);//initialisation class
FirebaseData firebaseData;
String path = "/Node1";
int oldDistance;
int newDistance;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
initWifi();
oldDistance = distanceSensor.measureDistanceCm();
}
void loop() {
// put your main code here, to run repeatedly:
delay(500);
//ambil nilai dari sensor ultarsonic dan kirim ke firebase
newDistance = distanceSensor.measureDistanceCm();
Serial.println(newDistance);
if(newDistance != oldDistance){
Firebase.setInt(firebaseData, path + "/distance", newDistance);
oldDistance = newDistance;
}
}
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
SENSOR PIR
Program Arduino IDE
#include <WiFi.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
#define pir 18
FirebaseData firebaseData;
String path = "/Node1";
int stateMotion = LOW; // default tidak ada gerakan
int valMotion = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(pir,INPUT);
initWifi();
void loop() {
// put your main code here, to run repeatedly:
delay(500);
valMotion = digitalRead(pir); // read sensor value
if (valMotion == HIGH) { // check if the sensor is HIGH
if (stateMotion == LOW) {
Firebase.setInt(firebaseData, path + "/pir", 1);
stateMotion = HIGH; // update variable state to HIGH
}
}
else {
if (stateMotion == HIGH){
Firebase.setInt(firebaseData, path + "/pir", 0);
stateMotion = LOW; // update variable state to LOW
}
}
}
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MODUL RGB LED
Program Arduino IDE
#include <WiFi.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
#define led1 19
#define led2 21
#define led3 3
FirebaseData firebaseData;
String path = "/Node1";
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
initWifi();
}
void loop() {
// put your main code here, to run repeatedly:
delay(500);
//get value /Node1/lampu1
if(Firebase.getInt(firebaseData, path + "/lampu1")){
if(firebaseData.intData() == 0)
digitalWrite(led1,0);
else
digitalWrite(led1,1);
}
//get value /Node1/lampu2
if(Firebase.getInt(firebaseData, path + "/lampu2")){
if(firebaseData.intData() == 0)
digitalWrite(led2,0);
else
digitalWrite(led2,1);
}
//get value /Node1/lampu3
if(Firebase.getInt(firebaseData, path + "/lampu3")){
if(firebaseData.intData() == 0)
digitalWrite(led3,0);
else
digitalWrite(led3,1);
}
}
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MODUL RELAY 2 CHANNEL
Program Arduino IDE
#include <WiFi.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
#define rly1 22
#define rly2 23
FirebaseData firebaseData;
String path = "/Node1";
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(rly1,OUTPUT);
pinMode(rly2,OUTPUT);
initWifi();
}
void loop() {
// put your main code here, to run repeatedly:
delay(500);
//get value /Node1/relay1
if(Firebase.getInt(firebaseData, path + "/relay1")){
if(firebaseData.intData() == 0)
digitalWrite(rly1,LOW);
else
digitalWrite(rly1,HIGH);
}
//get value /Node1/relay2
if(Firebase.getInt(firebaseData, path + "/relay2")){
if(firebaseData.intData() == 0)
digitalWrite(rly2,LOW);
else
digitalWrite(rly2,HIGH);
}
}
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}
MOTOR SERVO
Program Arduino IDE
#include <WiFi.h>
#include <Servo.h>
#include "FirebaseESP32.h"
#define FIREBASE_HOST "coba-esp-dcd5c.firebaseio.com"
#define FIREBASE_AUTH "axtOcEXQqU9IhXjwlisaRiJkTwxUy9Yrcpt5PvnK"
#define WIFI_SSID "StayBisnis"
#define WIFI_PASSWORD "cobalagi"
Servo servoMotor;
#define srv 4
FirebaseData firebaseData;
String path = "/Node1";
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
initWifi();
servoMotor.attach(4);
}
void loop() {
// put your main code here, to run repeatedly:
delay(500);
Firebase.getInt(firebaseData, path + "/servomotor");
int val_srv=firebaseData.intData();
servoMotor.write(val_srv);
Serial.println(val_srv);
void initWifi(){
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
Serial.print("Connecting to Wi-Fi");
while (WiFi.status() != WL_CONNECTED)
{
Serial.print(".");
delay(300);
}
Serial.println();
Serial.print("Connected with IP: ");
Serial.println(WiFi.localIP());
Serial.println();
Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
Firebase.reconnectWiFi(true);
//Set database read timeout to 1 minute (max 15 minutes)
Firebase.setReadTimeout(firebaseData, 1000 * 60);
//tiny, small, medium, large and unlimited.
//Size and its write timeout e.g. tiny (1s), small (10s), medium
(30s) and large (60s).
Firebase.setwriteSizeLimit(firebaseData, "tiny");
}