Halo Fanbot!
Di artikel kali ini, kita akan membahas khusus terkait datasheet NodeMCU ESP8266. Buat yang belum tau, NodeMCU ESP8266 adalah salah satu mikrokontroler yang biasa digunakan untuk kepentingan Internet of Things (IoT) dikarenakan fasilitasnya yang sudah dilengkapi dengan wifi untuk terkoneksi dengan internet. Nah, ada banyak hal yang perlu diketahui fanbot semuanya, sebelum menggunakan mikrokontroler ini. Apa saja? Yuk kita simak ..
Spesifikasi NodeMCU ESP8266
Spesifikasi NodeMCU ESP8266 yang terbaru adalah sebagai berikut.
- Miktrokontroler: Tensilica 32-bit RISC CPU Xtensa LX106
- Tegangan operasi: 3.3V
- Tegangan Masukan: 7-12V
- Pin Digital I/O (DIO): 16
- Pin Analog Input (ADC): 1
- UARTs: 2
- SPIs: 1
- I2Cs: 1
- Flash Memory: 4 MB
- SRAM: 64 KB
- Clock Speed: 80 MHz
- PCB Antenna
Mau belajar IoT dari dasarnya? ? Daftar workshop IoT Indobot Academy sekarang dan dapatkan PROMO
Pin NodeMCU ESP8266
Penempatan pin untuk NodeMCU adalah sebagai berikut.
(Sumber: components101.com)
Keterangan:
Micro-USB : Pasti semuanya sudah tau bagian ini ya. Fungsinya sebagai power yang dapat terhubung dengan USB port. Selain itu, biasanya juga digunakan untuk melakukan pengiriman sketch atau memantau data serial dengan serial monitor di aplikasi Arduino IDE.
3.3V : Digunakan sebagai tegangan untuk device lainnya. ada 3 tempat untuk 3.3v. Biasanya juga dituliskan hanya 3V (Sebenarnya tetap 3,3V)
GND : Ground. Sebagai tegangan 0 atau nilai negatif untuk mengalirkan arus.
Vin : Sebagai External Power yang akan mempengaruhi Output dari seluruh pin. Cara menggunakannya yaitu dengan menghubungkannya dengan tegangan 7 hingga 12volt.
EN, RST : Pin yang digunakan untuk reset program di mikrokontroler.
A0 : Analog pin, digunakan untuk membaca input secara analog.
GPIO 1 – GPIO 16 : Pin yang dapat digunakan sebagai input dan output. Pin ini dapat melakukan pembacaan dan pengiriman data secara analog juga.
SD1,CMD, SD0,CLK : SPI Pin untuk komunikasi SPI (Serial Peripheral Interface) dimana kita akan menggunakan clock untuk sinkronisasi deteksi bit pada receiver.
TXD0, RXD0,TXD2,RXD2 : Sebagai interface UART, Pasangannya adalah TXD0 dengan RXD0 dan TXD2 dengan RXD2. TXD1 digunakan untuk upload firmware/program.
SDA, SCL (I2C Pins) : Digunakan untuk device yang membutuhkan I2C.
Dukungan Fungsi NodeMCU ESP8266
NodeMCU ESP8266 adalah sebuah board pengembangan IoT (Internet of Things) yang didasarkan pada chip Wi-Fi ESP8266. Board ini memungkinkan pengguna untuk mengembangkan dan memprogram perangkat-perangkat IoT dengan menggunakan bahasa pemrograman Lua atau Arduino IDE.
Baca juga Konsep Smart Home
NodeMCU ESP8266 memiliki berbagai macam fungsi yang dapat dijalankan, antara lain:
- Menghubungkan perangkat IoT ke jaringan Wi-Fi dan mengirim data ke cloud service seperti Firebase atau AWS IoT Core.
- Mengontrol perangkat IoT seperti lampu, kipas, dan sensor dengan menggunakan protokol MQTT atau HTTP.
- Menjalankan protokol jaringan yang umum digunakan seperti TCP, UDP, dan HTTP.
- Membaca data dari sensor seperti suhu, kelembaban, tekanan, atau deteksi gerakan dan mengirim data ke cloud atau menyimpan data di database lokal.
- Mengontrol perangkat eksternal seperti motor stepper atau servo motor untuk membuat perangkat IoT yang lebih kompleks.
- Memprogram logika atau aturan-aturan cerdas untuk perangkat IoT menggunakan platform seperti Node-RED atau IFTTT.
- Memantau perangkat IoT dan memperoleh informasi tentang status atau kinerja perangkat IoT seperti uptime, koneksi jaringan, dan penggunaan memori.
- Membangun aplikasi mobile atau web yang terhubung dengan perangkat IoT.
Dengan fitur-fitur yang di milikinya, NodeMCU ESP8266 sangat cocok untuk pengembangan dan prototyping berbagai jenis perangkat IoT yang dapat terhubung ke internet dan di kendalikan dari jarak jauh.
Baca juga Datasheet NodeMCU ESP-32 CAM
Cara akses NodeMCU ESP8266 dengan Arduino IDE
Cara mengakses NodeMCU ESP8266 di aplikasi Arduino IDE adalah sebagai berikut:
Pastikan sudah meng-install aplikasi dan USB Driver, kemudian masukkan board ESP8266 ke aplikasi Arduino IDE. Berikut cara memasukkannya:
- Buka Preferences pada Arduino IDE, kemudian klik File > preferences.
- Masukkan URL pada Additional Board Manager URLs. Berikut URL-nya http://arduino.esp8266.com/stable/package_esp8266com_index.json.
- Jika sudah, klik Tools > Board > Board Manager.
- Tuliskan ESP8266 untuk menemukan file yang harus di install.
- Setelah muncul tampilan ESP8266, klik install dan tunggu hingga instalasi selesai di lakukan.
- Jika sudah, klik close dan klik Tools > Board > ESP8266 Board, kemudian pilih NodeMCU 1.0 (ESP 12E Module).
- Ketikkan program di sketch, kemudian anda sudah dapat upload sketch ke NodeMCU ESP8266.
baca juga: Tutorial Membuat Remot Control menggunakan 2 NodeMCU ESP8266
Cara Akses NodeMCU ESP8266 dengan Arduino Uno (Komunikasi Serial)
Kita juga dapat menghubungkan NodeMCU ESP8266 dengan Arduino Uno. Tujuannya adalah untuk memanfaatkan NodeMCU sebagai device IoT yang dapat terhubung dengan Internet namun masih membutuhkan arduino, baik karena pin, tegangan atau kebutuhkan lainnya.
Komunikasi serial biasanya menjadikan salah satu sebagai penerima dan pengirim. Namun dapat komunikasi serial kali ini, kita akan membuat dua-duanya dapat saling mengirim dan saling menerima. Device yang perlu di sediakan untuk percobaan ini hanya dengan Arduino Uno dan NodeMCU ESP8266.
Baca juga Mengenal Blynk IoT
Rancang device menjadi seperti berikut.
Masukkan program berikut untuk NodeMCU ESP8266
/* Komunikasi Serial (Bagian NodeMCU) oleh Indobot Academy */ #include <SoftwareSerial.h> SoftwareSerial nodeMCU(D1,D2); //RX,TX String data; char c; String inputString = ""; bool stringComplete = false; void setup() { Serial.begin(9600); nodeMCU.begin(9600); } void loop() { while(nodeMCU.available()>0){ delay(10); c = nodeMCU.read(); data+=c; } if (data.length()>0){ Serial.println(data); data=""; } while(Serial.available()){ char inChar = Serial.read(); inputString += inChar; if(inChar == '\n'){ stringComplete = true; } if(stringComplete){ nodeMCU.print(inputString); inputString = ""; stringComplete = false; } } } |
Kemudian di Arduino Uno, Masukkan program berikut.
/* Komunikasi Serial (Bagian Arduino) oleh Indobot Academy */ #include <SoftwareSerial.h> SoftwareSerial uno(2,3); //RX,TX String data; char c; String inputString = ""; bool stringComplete = false; void setup() { Serial.begin(9600); uno.begin(9600); } void loop() { while(uno.available()>0){ delay(10); c = uno.read(); data+=c; } if (data.length()>0){ Serial.println(data); data=""; } while(Serial.available()){ char inChar = Serial.read(); inputString += inChar; if(inChar == '\n'){ stringComplete = true; } if(stringComplete){ uno.print(inputString); inputString = ""; stringComplete = false; } } } |
Jika kedua program tersebut sudah di kirimkan, maka kita dapat melakukan ujicoba dengan menggunakan serial monitor untuk saling mengirim pesan.
baca juga: Tutorial IoT : Arduino IoT CLoud Sebagai Platform monitoring Suhu Kulkas Obat dengan NodeMCU
Nah itu merupakan datasheet nodeMCU yang dapat kalian gunakan. Jika masih kurang lengkap, kalian dapat melihat datasheet ESP8266 (KLIK DI SINI)
Buat kalian yang masih belum menggunakan NodeMCU ESP8266, bisa di coba ya. Pasti nanti nagih. hehe.
Semangat belajar!
Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!