Pada kesempatan kali ini saya akan menuliskan artikel tentangĀ ESP8266, Tutorial Arduino Uno dan ESP-01 Kontrol Relay Telegram Bot.
ESP8266 untuk tipe ESP-01 hanya memiliki dua buah GPIO, namun meskipun begitu esp-01 sendiri sudah bisa di isi program langsung. untuk itu tutorial kali ini kita akan mengisi program untuk ESP-01 sendiri dan juga untuk Arduino Uno sendiri.
Baiklah berikut adalah langkah ESP8266,Tutorial Arduino Uno + ESP-01, Kontrol Relay Telegram Bot
- Upload Program Kosong pada Arduino Uno, seperti gambar berikut :
- Kemudian buatlah rangkain untuk ESP8266 ESP-01 dengan Arduino Uno seperti pada gambar berikut :
- kemudian rubah pilihan board pada tool Arduino menjadi Generic ESP8266, jika belum ada coba ikuti tutorial Cara Install Board ESP8266 pada Arduino IDE
- Download library UniversalTelegram bot pada link Berikut
https://github.com/witnessmenow/Universal-Arduino-Telegram-Bot
pasang kedua library tersebut pada arduino IDE.
- Kemudian buatlah program seperti berikut :
Kode ESP-01 dengan Arduino IDE
#include <ESP8266WiFi.h> #include <WiFiClientSecure.h> #include <UniversalTelegramBot.h> // Initialize Wifi connection to the router char ssid[] = "KOST_RAMA"; // your network SSID (name) char password[] = "bayardulu500"; // your network key // Initialize Telegram BOT #define BOTtoken "518247654:AAGnJ3bwQoixeX4nDDLb-JdmA1vPsD85gRo" // your Bot Token (Get from Botfather) WiFiClientSecure client; UniversalTelegramBot bot(BOTtoken, client); int Bot_mtbs = 1000; //mean time between scan messages long Bot_lasttime; //last time messages' scan has been done bool Start = false; const int ledPin = 13; int ledStatus = 0; void handleNewMessages(int numNewMessages) { for (int i=0; i<numNewMessages; i++) { String chat_id = String(bot.messages[i].chat_id); String text = bot.messages[i].text; String from_name = bot.messages[i].from_name; if (from_name == "") from_name = "Guest"; Serial.print(text); } } void setup() { Serial.begin(9600); // Set WiFi to station mode and disconnect from an AP if it was Previously // connected WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); // attempt to connect to Wifi network: 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()); } void loop() { if (millis() > Bot_lasttime + Bot_mtbs) { int numNewMessages = bot.getUpdates(bot.last_message_received + 1); while(numNewMessages) { handleNewMessages(numNewMessages); numNewMessages = bot.getUpdates(bot.last_message_received + 1); } Bot_lasttime = millis(); } }
Jika berhasil di upload silahkan cek terlebih dahulu dengan mengirimkan kata atau kalimat dari telegram melalui Bot yang sudah di buat, jika belum bisa membuat bot nya, coba baca artikel berikut Tutorial Telegram Bot dengan Nodemcu + Cara Membuat Bot Telegram
karena tujuan kita akan mengontrol sesuatu pada Arduino Uno, maka selanjutnya kita akan membuat program untuk Arduino itu sendiri. kita lanjutkan tutorialnya
- Rubahlah rangkaianya menjadi seperti pada gambar berikut :
- Rubahlah pilihan Board pada tool Arduino menjadi Arduino Uno kembali.
- Uploadlah program berikut ini untuk mengontrol LED pada pin13 Arduino Uno melalui Telegram
Kode Arduino IDE untuk Arduino Uno
#include <SoftwareSerial.h> SoftwareSerial serial(2,3); String data; char c; void setup() { // put your setup code here, to run once: Serial.begin(9600); serial.begin(9600); pinMode(13, OUTPUT); } void loop() { // put your main code here, to run repeatedly: while (serial.available()>0){ delay(10); c =serial.read(); data+=c; } if (data.length()>0){ Serial.println(data); if (data=="13 on"){ digitalWrite(13, 1); } else if (data=="13 off"){ digitalWrite(13, 0); } data=""; } }
Download Project Program diatas : Download
berikut adalah gambar hasilnya :
mungkin cukup sekian tutorial kali ini semoga bermanfaat, dan jika ada yang ingin di tanyakan silahakn berkomentar di bawah atau kita berdiskusi di WA, klik Icon WA untuk terhubung langsung dengan Saya.
tambahan :
– Hubungkan GND ke GPIO0 ESP
-Sebelum board di set ke GENERIC ESP8266 pastikan Board Arduino Uno tidak menyimpan program (Upload program kosong terlebih dahulu)
-saat upload program kosong untuk Arduino Uno, jangan hubungkan TX RX ESP ke TX RX Arduino
– setelah Arduino Uno tidak menyimpan Program lagi, lepas Kabel USB kemudian pasang kembali.
– baru pilih Board untuk Generic ESP8266 Module
Keyword
ESP-01 Arduino Uno Telegram,
Cara Mengakses Arduino Uno dengan Telegram,
Cara Kontrol Relay dengan Telegram menggunakan Arduino Uno,
Kontrol Relay Telegram Arduino Uno + ESP8266 ESP-01,
ESP-01 Telegram Bot,
Tutorial ESP-01 Telegram Bot,
Tutorial Arduino Uno Telegram
Gan kok untuk program ke ModulESP8266 eror terus ya, saya make arudino mega coba dengan arduino nano ttp status exit, board kebaca yang arduino terus.
Gan kok untuk program ke ModulESP8266 eror terus ya, saya make arudino mega coba dengan arduino nano ttp status exit, board kebaca yang arduino terus. Terimakasih
bang code yang ke esp nya eror bang bagian yg ini –>>for (int i=0; i<numNewMessages; i++)
“lt” was not declared in thi sc0pe ada solusi nga bang?
mkasih bang
tambahkan deklarasi varibalenya bang
bg, apakah ini bisa juga untuk notifikasi ke telegram spt jika ada kebakaran maka akan ada notif ke telegram. dan apakah pembacaan sensor yg di arduino tidak akan berubah jika di serialkan dengan modul wifi esp-01 ini?
terimakasih sebelumnya
bisa