BAB 4
Simple Internet of Thing (IoT) Menggunakan NodeMCU ESP8266 – Instalasi
NodeMCU
A. Tujuan
1. Mahasiswa memahani cara kerja sederhana dari Internet of Thing (IoT).
2. Mahasiswa bias menjelaskan apa saja bahan kebutuhan untuk membuat simple IoT.
B. Dasar Teori
Internet of Thing (IoT) mulai dikenalkan sejak tahun 2009. Beberapa perangkat pendukung mulai
dikembangkan dengan paket yang kecil dan simple, seperti Arduino dan NodeMCU. NodeMCU
adalah platform IoT yang bersifat opensource. Terdiri dari perangkat keras berupa System On
Chip ESP8266 dari ESP8266 buatan Espressif System. NodeMCU telah me-package ESP8266 ke
dalam sebuah board yang kompak dengan berbagai fitur layaknya mikrokontroler + kapabilitas
akses terhadap Wifi juga chip komunikasi USB to serial. Sehingga untuk memprogramnya hanya
diperlukan ekstensi kabel data USB persis yang digunakan sebagai kabel data dan
kabel charging smartphone Android.
NodeMCU V3 ESP8266 ini sejatinya juga sebuah mikrokontroler seperti Arduino, yang ditambahi
dengan modul WiFi ESP8266. Selain terdapat memori untuk menyimpan program, juga tersedia
port digital Input – Output, sebuah port analog input serta port dengan fungsi khusus seperti
serial UART, SPI, I2C dll.
ESP-12E
Karena jantung dari NodeMCU adalah ESP8266 (khususnya seri ESP-12, termasuk ESP-12E) maka
fitur – fitur yang dimiliki NodeMCU akan kurang lebih sama ESP-12 (juga ESP-12E untuk
NodeMCU v.2 dan v.3) kecuali NodeMCU telah dibungkus oleh API sendiri yang dibangun
berdasarkan bahasa pemrograman eLua, yang kurang lebih cukup mirip dengan javascript.
Beberapa fitur tersebut antara lain :
1. 10 Port GPIO dari D0 – D10
2. Fungsionalitas PWM
3. Antarmuka I2C dan SPI
4. Antarmuka 1 Wire
5. ADC
Gambar berikut menjelaskan posisi pin -pin dari ESP-12E :
1. RST : berfungsi mereset modul
2. ADC: Analog Digital Converter. Rentang tegangan masukan 0-1v, dengan skup nilai digital
0-1024
3. EN: Chip Enable, Active High
4. IO16 :GPIO16, dapat digunakan untuk membangunkan chipset dari mode deep sleep
5. IO14 : GPIO14; HSPI_CLK
6. IO12 : GPIO12: HSPI_MISO
7. IO13: GPIO13; HSPI_MOSI; UART0_CTS
8. VCC: Catu daya 3.3V (VDD)
9. CS0 :Chip selection
10. MISO : Slave output, Main input
11. IO9 : GPIO9
12. IO10 GBIO10
13. MOSI: Main output slave input
14. SCLK: Clock
15. GND: Ground
16. IO15: GPIO15; MTDO; HSPICS; UART0_RTS
17. IO2 : GPIO2;UART1_TXD
18. IO0 : GPIO0
19. IO4 : GPIO4
20. IO5 : GPIO5
21. RXD : UART0_RXD; GPIO3
22. TXD : UART0_TXD; GPIO1
Gambar 1. Posisi pin NodeMCU
Tegangan Kerja
ESP8266 menggunakan standar tegangan JEDEC (tegangan 3.3V) untuk bisa berfungsi. Tidak
seperti mikrokontroler AVR dan sebagian besar board Arduino yang memiliki tegangan TTL 5 volt.
Meskipun begitu, node mcu masih bisa terhubung dengan 5V namun melalui port micro USB atau
pin Vin yang disediakan oleh board-nya. Namun karena semua pin pada ESP8266 tidak toleran
terhadap masukan 5V. Maka jangan sekali – kali langsung mencatunya dengan tegangan TTL jika
tidak ingin merusak board anda. Anda bisa menggunakan Level Logic Converter untuk mengubah
tegangan ke nilai aman 3.3v.
Gambar 2. NodeMCU generasi versi 1.0 (V2)
C. Alat dan Bahan
1. Software Arduino IDE yang sudah diinstall (Jika belum install, silahkan download Arduino IDE
dan install)
2. Driver CH340 (Download di https://sparks.gogo.co.nz/ch340.html dan install)
3. Board NodeMCU atau Wemos (Board yang berbasis ESP8266)
D. Percobaan
1. Buka Arduino IDE :
2. Lalu klik File> Preferences
3. Setelah tab Preference terbuka masukan link berikut ini
(“http://arduino.esp8266.com/stable/package_esp8266com_index.json” ) ke bagian
“Addtional Board Manager URLs”
4. Lalu klik OK
5. Masuk ke Board Manager ( Tools> Board > Boards Manager ) *pastikan ada koneksi internet
6. Masukan “ESP8266” pada searchbox lalu klik install, sampai pada tahap ini pastikan laptop
terhubung dengan internet, karena pada proses ini Arduino IDE akan mendownload
library ESP8266 board sebesar 150MB
7. Setelah proses download selesai maka kita bisa mendapati board bernama NodeMCU atau
Wemos di submenu Board
8. Pastikan upload speednya 115200 dan pilih tipe Board juga nomor Port nya sesuai dengan
yang kalian gunakan, NodeMCU atau Wemos
Memilih baudrate speed
Memilih board
Memilih COM Port
9. Untuk memastikan bahwa kita berhasil menambahkan board NodeMCU di Arduino IDE, kita
bisa mencoba meng upload koding berikut ini ke NodeMCU atau Wemos yang kita miliki :
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
10. Klik Upload (Gambar tanda panah)
11. Jika berhasil di upload dan LED pada board NodeMCU atau Wemos berkedip maka kita
sukses installasi Board Berbasis ESP8266 pada Arduino IDE
E. Tugas
1. Install Arduino IDE di PC anda!
2. Install library NodeMCU dalam Arduino IDE anda!
3. Jelaskan yang dimaksud IoT !
4. Jelaskan yang dimaksud dengan Embedded System!
F. Analisa dan Kesimpulan
1. Buatlah laporan berisi step by step cara anda dalam mengerjakan praktikum ini!
2. Berikan tambahan penjelasan di setiap langkah-langkah praktikum yang anda lakukan!
G. Referensi
1. https://www.kodingindonesia.com/belajar-iot-cara-install-nodemcu-dan-wemos/
2. https://embeddednesia.com/v1/tutorial-nodemcu-pertemuan-pertama/

Installasi NodeMCU

  • 1.
    BAB 4 Simple Internetof Thing (IoT) Menggunakan NodeMCU ESP8266 – Instalasi NodeMCU A. Tujuan 1. Mahasiswa memahani cara kerja sederhana dari Internet of Thing (IoT). 2. Mahasiswa bias menjelaskan apa saja bahan kebutuhan untuk membuat simple IoT. B. Dasar Teori Internet of Thing (IoT) mulai dikenalkan sejak tahun 2009. Beberapa perangkat pendukung mulai dikembangkan dengan paket yang kecil dan simple, seperti Arduino dan NodeMCU. NodeMCU adalah platform IoT yang bersifat opensource. Terdiri dari perangkat keras berupa System On Chip ESP8266 dari ESP8266 buatan Espressif System. NodeMCU telah me-package ESP8266 ke dalam sebuah board yang kompak dengan berbagai fitur layaknya mikrokontroler + kapabilitas akses terhadap Wifi juga chip komunikasi USB to serial. Sehingga untuk memprogramnya hanya diperlukan ekstensi kabel data USB persis yang digunakan sebagai kabel data dan kabel charging smartphone Android. NodeMCU V3 ESP8266 ini sejatinya juga sebuah mikrokontroler seperti Arduino, yang ditambahi dengan modul WiFi ESP8266. Selain terdapat memori untuk menyimpan program, juga tersedia port digital Input – Output, sebuah port analog input serta port dengan fungsi khusus seperti serial UART, SPI, I2C dll. ESP-12E Karena jantung dari NodeMCU adalah ESP8266 (khususnya seri ESP-12, termasuk ESP-12E) maka fitur – fitur yang dimiliki NodeMCU akan kurang lebih sama ESP-12 (juga ESP-12E untuk NodeMCU v.2 dan v.3) kecuali NodeMCU telah dibungkus oleh API sendiri yang dibangun berdasarkan bahasa pemrograman eLua, yang kurang lebih cukup mirip dengan javascript. Beberapa fitur tersebut antara lain : 1. 10 Port GPIO dari D0 – D10 2. Fungsionalitas PWM 3. Antarmuka I2C dan SPI 4. Antarmuka 1 Wire 5. ADC Gambar berikut menjelaskan posisi pin -pin dari ESP-12E : 1. RST : berfungsi mereset modul 2. ADC: Analog Digital Converter. Rentang tegangan masukan 0-1v, dengan skup nilai digital 0-1024 3. EN: Chip Enable, Active High 4. IO16 :GPIO16, dapat digunakan untuk membangunkan chipset dari mode deep sleep 5. IO14 : GPIO14; HSPI_CLK 6. IO12 : GPIO12: HSPI_MISO
  • 2.
    7. IO13: GPIO13;HSPI_MOSI; UART0_CTS 8. VCC: Catu daya 3.3V (VDD) 9. CS0 :Chip selection 10. MISO : Slave output, Main input 11. IO9 : GPIO9 12. IO10 GBIO10 13. MOSI: Main output slave input 14. SCLK: Clock 15. GND: Ground 16. IO15: GPIO15; MTDO; HSPICS; UART0_RTS 17. IO2 : GPIO2;UART1_TXD 18. IO0 : GPIO0 19. IO4 : GPIO4 20. IO5 : GPIO5 21. RXD : UART0_RXD; GPIO3 22. TXD : UART0_TXD; GPIO1 Gambar 1. Posisi pin NodeMCU Tegangan Kerja
  • 3.
    ESP8266 menggunakan standartegangan JEDEC (tegangan 3.3V) untuk bisa berfungsi. Tidak seperti mikrokontroler AVR dan sebagian besar board Arduino yang memiliki tegangan TTL 5 volt. Meskipun begitu, node mcu masih bisa terhubung dengan 5V namun melalui port micro USB atau pin Vin yang disediakan oleh board-nya. Namun karena semua pin pada ESP8266 tidak toleran terhadap masukan 5V. Maka jangan sekali – kali langsung mencatunya dengan tegangan TTL jika tidak ingin merusak board anda. Anda bisa menggunakan Level Logic Converter untuk mengubah tegangan ke nilai aman 3.3v. Gambar 2. NodeMCU generasi versi 1.0 (V2) C. Alat dan Bahan 1. Software Arduino IDE yang sudah diinstall (Jika belum install, silahkan download Arduino IDE dan install) 2. Driver CH340 (Download di https://sparks.gogo.co.nz/ch340.html dan install) 3. Board NodeMCU atau Wemos (Board yang berbasis ESP8266) D. Percobaan 1. Buka Arduino IDE :
  • 4.
    2. Lalu klikFile> Preferences 3. Setelah tab Preference terbuka masukan link berikut ini (“http://arduino.esp8266.com/stable/package_esp8266com_index.json” ) ke bagian “Addtional Board Manager URLs”
  • 5.
    4. Lalu klikOK 5. Masuk ke Board Manager ( Tools> Board > Boards Manager ) *pastikan ada koneksi internet 6. Masukan “ESP8266” pada searchbox lalu klik install, sampai pada tahap ini pastikan laptop terhubung dengan internet, karena pada proses ini Arduino IDE akan mendownload library ESP8266 board sebesar 150MB
  • 6.
    7. Setelah prosesdownload selesai maka kita bisa mendapati board bernama NodeMCU atau Wemos di submenu Board 8. Pastikan upload speednya 115200 dan pilih tipe Board juga nomor Port nya sesuai dengan yang kalian gunakan, NodeMCU atau Wemos Memilih baudrate speed Memilih board
  • 7.
    Memilih COM Port 9.Untuk memastikan bahwa kita berhasil menambahkan board NodeMCU di Arduino IDE, kita bisa mencoba meng upload koding berikut ini ke NodeMCU atau Wemos yang kita miliki : // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } 10. Klik Upload (Gambar tanda panah)
  • 8.
    11. Jika berhasildi upload dan LED pada board NodeMCU atau Wemos berkedip maka kita sukses installasi Board Berbasis ESP8266 pada Arduino IDE E. Tugas 1. Install Arduino IDE di PC anda! 2. Install library NodeMCU dalam Arduino IDE anda! 3. Jelaskan yang dimaksud IoT ! 4. Jelaskan yang dimaksud dengan Embedded System! F. Analisa dan Kesimpulan 1. Buatlah laporan berisi step by step cara anda dalam mengerjakan praktikum ini! 2. Berikan tambahan penjelasan di setiap langkah-langkah praktikum yang anda lakukan! G. Referensi 1. https://www.kodingindonesia.com/belajar-iot-cara-install-nodemcu-dan-wemos/ 2. https://embeddednesia.com/v1/tutorial-nodemcu-pertemuan-pertama/