Apa itu NodeMCU?

NodeMCU ESP8266  merupakan modul turunan pengembangan dari modul platform IoT (Internet of Things) keluarga ESP8266 tipe ESP-12. Secara fungsi modul ini hampir menyerupai dengan platform modul arduino, tetapi yang membedakan yaitu dikhususkan untuk “Connected to Internet“.

Ya NodeMCU, modul ini merupakan salah satu bagian dari keluarga ESP8266 yang sudah dibekali persenjataan dengan lengkap. Berbeda dengan modul sebelumnya ESP-01 yang hanya chip saja tanpa dilengkapi usb uart, modul ini sudah dilengkapi dengan minimum system serta usb uart yang memudahkan kita untuk menggunakan dan memasukan program pada modul tersebut.

Dengan beragam kelebihan tersebut membuat modul ini sangat cocok untuk kalian pilih sebagai mikrokontroler system IoT (Internet of Thing) tanpa ribet memasangkan usb uart ke perang modul ESP8266 tersebut.

Sampai saat ini, setidaknya terdapat tiga versi dari NodeMCU yang diantaranya sebagai berikut :

NodeMCU adalah sebuah platform IoT yang bersifat opensource. Terdiri dari perangkat keras berupa System On Chip ESP8266 dari ESP8266 buatan Espressif System, juga firmware yang digunakan, yang menggunakan bahasa pemrograman scripting Lua. Istilah NodeMCU secara default sebenarnya mengacu pada firmware yang digunakan daripada perangkat keras development kit.

NodeMCU bisa dianalogikan sebagai board arduino-nya ESP8266. Dalam seri tutorial ESP8266 pernah membahas bagaimana memprogram ESP8266 sedikit merepotkan karena diperlukan beberapa teknik wiring serta tambahan modul USB to serial untuk mengunduh program. Namun 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.

Sejarah NodeMCU

Sejarah lahirnya NodeMCU berdekatan dengan rilis ESP8266 pada 30 Desember 2013, Espressif Systems selaku pembuat ESP8266 memulai produksi ESP8266 yang merupakan SoC Wi-Fi yang terintegrasi dengan prosesor Tensilica Xtensa LX106. Sedangkan NodeMCU dimulai pada 13 Oktober 2014 saat Hong me-commit file pertama nodemcu-firmware ke Github. Dua bulan kemudian project tersebut dikembangkan ke platform perangkat keras ketika Huang R meng-commit file dari board  ESP8266 , yang diberi nama devkit v.0.9.

Berikutnya, di bulan yang sama. Tuan PM memporting pustaka client  MQTT dari Contiki ke platform SOC ESP8266 dan di-c0mmit ke project NodeMCU yang membuatnya mendukung protokol IOT MQTT  melalui Lua. Pemutakhiran penting berikutnya terjadi pada 30 Januari 2015 ketika Devsaurus memporting u8glib ke project NodeMCU yang memungkinkan NodeMCU bisa mendrive display LCD, OLED, hingga VGA. Demikianlah, project NodeMCU terus berkebang hingga kini berkat komunitas open source dibaliknya, pada musim panas 2016 NodeMCU sudah terdiri memiliki 40 modul fungsionalitas yang bisa digunakan sesuai kebutuhan developer.

Ulasan secara detail mengenai spesifikasi chip ESP-12E diluar lingkup tulisan ini. Pembaca dapat mencari informasi detail mengenai ESP-12E dengan mengunduh datasheet di link berikut.

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.

Versi NodeMCU

Beberapa pengguna awal masih cukup bingung dengan beberapa kehadiran board NodeMCU. Karena sifatnya yang open source tentu akan banyak produsen yang memproduksinya dan mengembangkannya. Secara umum ada tiga produsen NodeMCU yang produknya kini beredar di pasaran:  Amica, DOIT, dan Lolin/WeMos. Dengan beberapa varian board yang diproduksi yakni V1, V2 dan V3.

1. Generasi pertama / board v.0.9 (Biasa disebut V1)

Gambar 1. NodeMCU Devkit v0.9 dari https://github.com/nodemcu/nodemcu-devkit

Board versi 0.9 sering disebut di pasar sebagai V.1 adalah versi asli yang berdimensi 47mm x 31mm. Memiliki inti ESP-12 dengan flash memory berukuran 4MB. Berikut adalah pinout dari board v.0.9

Gambar 2. Skematik posisi pin nodemcu devkit v1

Namun beberapa produk juga ada yang menggunakan chip ESP-12E sebagai inti dari board v.0.9 dengan tampilan board berubah menjadi hitam.

Gambar 3.

2. Generasi kedua / board v 1.0 (biasa disebut V2)

Gambar 4. NodeMCU Devkit v1,0 dari https://github.com/nodemcu/nodemcu-devkit-v1.0

Pengenalan Arduino Board ESP8266 (NodeMCU)
Table of Content 1. Pendahuluan (file Terpisah) 2. Step 1: Installing Arduino IDE Software 3. Step 3: Opening Arduino IDE 4. Step 4: Preferences 5. Step 5: Adding ESP8266 Board Manager 6. Step 6: Selecting Board 7. ESP8266 Board Package 8. Selecting ESP8266 Arduino Board 9. Conn…

Generasi kedua adalah pengembangan dari versi sebelumnya, dengan chip yang ditingkatkan dari sebelumnya ESP12 menjadi ESP12E. Dan IC Serial diubah dari CHG340 menjadi  CP2102

Gambar 5. Skematik posisi pin nodemcu devkit v2

3. Generasi ketiga / board v 1.0 ( biasa disebut V3 Lolin)

Gambar 6.

Sedangkan untuk V3 sebenarnya bukanlah versi resmi yang dirilis oleh NodeMCU. Setidaknya sampai posting ini dibuat, belum ada versi resmi untuk V3 NodeMCU. V3 hanyalah versi yang diciptakan oleh produsen LoLin dengan perbaikan minor terhadap V2. Diklaim memiliki antarmuka USB yang lebih cepat.

Gambar 7. Skematik posisi Pin NodeMcu Dev Kit v3

Berikut tabel perbandingan dari ketiga versi diatas :

Spesifikasi

NodeMCU

0.9

1.0 (Official board)

1.0 (Unofficial board)

Vendor Pembuat

Amica

Amica

LoLin

Tipe ESP8266

ESP12

ESP-12E

ESP-12E

USB port

Micro Usb

GPIO Pin

11

13

13

ADC

1 pin (10 bit)

Usb to Serial Converter

CH340G

CP2102

CH340G

Power Input

5 Vdc

Ukuran Module

47 x 31 mm

 47 x 24 mm

57 x 30 mm

* Note : saran saya untuk belajar lebih baik menggunakan NodeMCU Versi 1.0 dari Amica. Dikarenakan performa dan kualitasnya lebih bagus dibanding lainnya.

Jika anda bandingkan dengan versi sebelumnya, dimensi dari board V3. akan lebih besar dibanding V2. Lolin menggunakan 2 pin cadangan untuk daya USB dan yang lain untuk GND tambahan.

Tentu  3  jenis versi ini akan berkembang dan bertambah seiring dengan waktu karena sifatnya yang opensource. Mungkin beberapa bulan atau beberapa tahun setelah tulisan ini dibuat akan muncul versi- versi lain yang beredar. Selanjutnya kita akan mulai hands-on dengan devkit nodemcu. dimulai dengan melakukan mengatur environment dan flashing firmware ke board nodemcu

Perangkat NodeMCU generasi ketiga ini sebenarnya bukan official dari ESP8266, ini hanya versi modifikasi yang di kembangkan oleh produsen LoLin dengan beberapa perbaikan yang membuat perangkat ini di claim lebih cepat dari versi sebelumnya. Modul generasi ketiga ini juga merupakan modul yang banyak digunakan saat ini, mengingat versi-versi sebelumnya yang sudah jarang sekali digunakan.

Modul NodeMCU sendiri memiliki default pemrogaman yaitu pemrograman Lua, tapi jangan khawatir untuk kawan kawan yang belum terbiasa menggunakan bahasa tersebut kalian dapat menggunakan bahasa c dari arduino menggunakan Arduino IDE seperti biasa.

Pin Out V.1 dengan ESP-12E yang menggunakan usb driver tipe CP212

Spesifikasi dari nodemcu ESP-12E :
· Tegangan antarmuka komunikasi: 3.3V.
· Jenis antena: Tersedia antena PCB internal.
· Standar nirkabel 802.11 b / g / n
· WiFi di 2.4GHz, mendukung mode keamanan WPA / WPA2
· Mendukung tiga mode operasi STA / AP / STA + AP
· Tumpukan protokol TCP / IP bawaan untuk mendukung beberapa koneksi Klien TCP (5 MAX)
· D0 ~ D8, SD1 ~ SD3: digunakan sebagai GPIO, PWM, IIC, dll., Kemampuan driver port 15mA
· AD0: 1 saluran ADC
· Input daya: 4.5V ~ 9V (10VMAX), bertenaga USB
· Saat ini: transmisi kontinu: 70mA (200mA MAX), Siaga: 200uA
· Kecepatan transfer: 110-460800bps
· Mendukung antarmuka komunikasi data UART / GPIO
· Pembaruan firmware jarak jauh (OTA)
· Mendukung Smart Link Smart Networking
· Suhu kerja: -40 Deg ~ + 125 Deg
· Tipe Drive: Driver H-bridge ganda berdaya tinggi
· ESP8266 memiliki IO Pin
· Tidak perlu mengunduh pengaturan ulang
· Seperangkat alat yang bagus untuk mengembangkan ESP8266
· Ukuran flash: 4MByte

Video Pemasangan Pompa Otomatis

Video Arduino Android