Belajar IoT, ESP8266 Cara Kontrol Lampu Via Android Internet Firebase

Tutorial ESP8266 tipe NodeMCU atau Wemos D1 Mini kontrol relay via internet dan firebase. Disini saya akan menjelaskan lengkap mulai dari cara menggunakan modul ESP8266 pada software Arduino IDE, sampai mengoperasikan modul ESP8266 untuk bisa menyalakan dan mematikan lampu dengan android. Komunikasi yang digunakan adalah internet dan tempat penyimpanan datanya adalah firebase.

Tutorial ini bisa menggunakan berbagai jenis board esp8266 seperti NodeMCU dan Wemos D1 Mini, maka saya akan tuliskan kata kunci disini juga tentang Wemos Kontrol Relay Firebase dan NodeMCu Kontrol Relay Firebase. Belajar IoT dengan Wemos atau Tutorial IoT dengan NodeMCU ESP82666.

Cara Install ESP8266 Pada Arduino IDE

  1. Download dan install software Arduino IDE pada laptop kalian
  2. Buka software Arduino IDE – File – Preference
    isi kolom Aditional Board Manager URLs dengan link berikut :
Cara Install ESP8266 Pada Arduino IDE
http://arduino.esp8266.com/stable/package_esp8266com_index.json
  1. Buka Tools – Boards Manager kemudian cari ESP8266 Comunity
Cara Install ESP8266 Pada Arduino IDE
  1. Untuk pemilihan board nya ikuti seperti pada tabel di bawah ini
Jenis Board ESP yang DigunakanPilihan Board Pada Arduino IDE
ESP8266 ESP-01Generic ESP8266 Module
NodeMCU Lolin V3NodeMCU 1.0 (ESP – 12E Module
NodeMCU LuaNodeMCU 1.0 (ESP – 12E Module
Wemos D1 MiniWemos D1 Mini Pro / Wemos D1 R2 & mini

Cara ESP8266 Kontrol Relay

  1. Buatlah rangkaian ESP8266 dengan modul relay
  2. Atau Download file desain PCB modul NodeMCU dan Relay pada tautan berikut
    Download PCB Layout Door Lock NodeMCU Relay EAGLE
  3. Buat program berikut untuk test ESP8266 dan modul relay
void setup() {
  // put your setup code here, to run once:
pinMode (2, OUTPUT);
}
void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(2, HIGH);
delay(1000);
digitalWrite(2, LOW);
delay(1000);
}
  1. Jika sudah berhasil upload program diatas dan relay sudah nyala dan mati, maka boleh melanjutkan tutorial pada artikel ini.
Baca Juga :  ESP8266, Control Relay dengan Telegram

Cara Menghubungkan ESP8266 Firebase

  1. Download Library Firebase Disini!
  2. Buka link firebase dan daftarkan akun anda atau login disana
  3. Buat projek dengan nama “Kontrol Relay”
  1. Pilih Database – Buat Database Realtime – Mulai Dalam Mode Pengujian
  1. Buka Menu Penggunaan dan Izin kemudian pilih menu akun layanan
  2. Catat url firebase dan juga token nya. kemudian paste pada program example arduino firebase
  3. Buka example Arduino Firebase dengan ESP8266 pada example arduino IDE.
//
// Copyright 2015 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// FirebaseDemo_ESP8266 is a sample that demo the different functions
// of the FirebaseArduino API.

#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>

// Set these to run example.
#define FIREBASE_HOST "kontrol-relay-45cd4.firebaseio.com"
#define FIREBASE_AUTH "bM3t6vIacd5sx0RTSZo17dBaj44TmihqL6AfruwV"
#define WIFI_SSID "anakkendali.com"
#define WIFI_PASSWORD "bayardikitlimangewu"

void setup() {
  Serial.begin(9600);

  // connect to wifi.
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  Serial.print("connecting");
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(500);
  }
  Serial.println();
  Serial.print("connected: ");
  Serial.println(WiFi.localIP());
  
  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
}

int n = 0;

void loop() {
  // set value
  Firebase.setFloat("number", 42.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());  
      return;
  }
  delay(1000);
  
  // update value
  Firebase.setFloat("number", 43.0);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /number failed:");
      Serial.println(Firebase.error());  
      return;
  }
  delay(1000);

  // get value 
  Serial.print("number: ");
  Serial.println(Firebase.getFloat("number"));
  delay(1000);

  // remove value
  Firebase.remove("number");
  delay(1000);

  // set string value
  Firebase.setString("message", "hello world");
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /message failed:");
      Serial.println(Firebase.error());  
      return;
  }
  delay(1000);
  
  // set bool value
  Firebase.setBool("truth", false);
  // handle error
  if (Firebase.failed()) {
      Serial.print("setting /truth failed:");
      Serial.println(Firebase.error());  
      return;
  }
  delay(1000);

  // append a new value to /logs
  String name = Firebase.pushInt("logs", n++);
  // handle error
  if (Firebase.failed()) {
      Serial.print("pushing /logs failed:");
      Serial.println(Firebase.error());  
      return;
  }
  Serial.print("pushed: /logs/");
  Serial.println(name);
  delay(1000);
}
  1. Jika mendapatkan error, silahkan install arduinojson.h versi 5.13.1
  2. Dan hasilnya seperti pada gambar berikut.

Cara Kontrol Relay NodemCU Aplikasi Android

  1. Buka website Kodular untuk membuat aplikasi android
    (Link Video Tutorial Membuat Aplikasi belum di buat)
    Untuk File aplikasi bisa didownload di sini Tutorial ESP8266 Wemos D1 Mini Kontrol Relay Firebase Aplikasi Android
  2. Hubungkan Aplikasi Android yang kamu buat dengan kodular dengan firebase
  3. Buat program arduino berikut untuk menghubungkan modul ESP8266 dengan Firebase
//
// Copyright 2015 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

// FirebaseDemo_ESP8266 is a sample that demo the different functions
// of the FirebaseArduino API.

#include <ESP8266WiFi.h>
#include <FirebaseArduino.h>

// Set these to run example.
#define FIREBASE_HOST "kontrol-relay-45cd4.firebaseio.com"
#define FIREBASE_AUTH "bM3t6vIacd5sx0RTSZo17dBaj44TmihqL6AfruwV"
#define WIFI_SSID "anakkendali.com"
#define WIFI_PASSWORD "bayardikitlimangewu"

void setup() {
  Serial.begin(9600);

  // connect to wifi.
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
  Serial.print("connecting");
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(500);
  }
  Serial.println();
  Serial.print("connected: ");
  Serial.println(WiFi.localIP());

  Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
  pinMode (D3, OUTPUT);
}

int n = 0;

void loop() {
  int val = Firebase.getInt("relay");
  Serial.print("Relay: ");
  Serial.println(val);
  digitalWrite(D3, val);
  delay(1000);
}

Cukup sekian apa yang bisa saya bagikan kali ini, semoga bermanfaat dan jangan lupa untuk membagikan artikel ini pada teman kalian.

Baca Juga :  ESP8266, Cara Mengirim Data Sensor Jarak ke Thingspeak

Keyword

  1. Belajar Iot ESP8266
  2. Tutorial IoT ESP8266
  3. Tutorial Firebase ESP8266
  4. Tutorial Kontrol Listrik ESP8266
  5. ESP8266 Menyalakan Lampu
  6. ESP8266 Mematikan Lampu
  7. Kontrol Lampu Jarak Jauh
  8. Sistem IoT