Senin, 19 Desember 2016

IOT Tutorial: Begining WeMos D1 Mini Pro (ESP-8266EX, NodeMCU, Lua)

Setelah menunggu hampir 21 hari, akhirnya IoT board WeMos D1 mini yang saya pesan dari Aliexpress sampai juga. Berdasarkan informasi dari wemos.cc, perbedaan utama antara WeMos D1 mini dengan WeMos D1 mini pro adalah pada ukuran flash dari 4MB menjadi 16MB. Perbedaan berikutnya adalah pada USB driver yang digunakan, jika yang biasa adalah menggunakan driver CH340G, maka yang pro adalah menggunakan CP2104.

 Gambar 0. WeMos D1 mini pro

Langkah-langkah flash firmware nodemcu:
1. Install driver CP2104.
2. Koneksikan board WeMos dengan komputer anda.
3. Catat nomor port hasil koneksi.
4. Download nodemcu-Flasher (baca)
5. Kustomisasi firmware nodemcu

Untuk melakukan kustomisasi, anda dapat menggunjungi https://nodemcu-build.com/
1. Isikan alamat email anda untuk mendapatkan konfirmasi proses builds dan hasil builds yang dapat didownload
2. Pilih module-module yang ingin anda ikut sertakan pada firmware, pilihlah module yang yang butuhkan saja, karena semakin banyak module yang dimasukan, maka binary firmware akan semakin besar. Beberapa module default yang dimasukan adalah file, GPIO, net, node, timer, UART, dan wifi, anda dapat menambahkan module seperti cjson, crypto, DHT, HTTP, I2C, RTC time, SNTP, dan websocket, masukan juga SSL support TLS. (untuk lingkungan produksi, anda dapat menkustomisasi firmware anda dengan modul-modul yang anda gunakan saja dalam implementasi, sehingga ukuran firmware menjadi compact). Kemudian klik pada Start your build.
Catatan: This project uses two main branches, master and dev. dev is actively worked on and it's also where PRs should be created against. master thus can be considered "stable" even though there are no automated regression tests.

Anda akan menerima email yang memberitahukan bahwa nodemcu custom build started, silakan menunggu untuk mendapatkan hasil build (berkisar 2 menit), anda akan menerima email nodemcu custom build finished disertai dengan link untuk mendownload hasil build.

http://nodemcu-build.com/builds/nodemcu-master-15-modules-2016-12-20-01-43-07-float.bin
http://nodemcu-build.com/builds/nodemcu-master-15-modules-2016-12-20-01-43-07-integer.bin

Catatan: There are two versions for each firmware version: the integer version which supports only integer operations and the float version which contains support for floating point calculations. From a performance point of view, the integer version should be better. It’s also smaller and most of the time, you will not need to work with floating point numbers.
Dalam hal ini ukuran binary saya yang float adalah 495412 bytes

6. Lakukan flash-firmware anda dengan menggunakan nodemcu-Flasher

6a. Aktifkan software nodemcu-Flasher

Gambar 1. NodeMCU Flasher
6b. Klik pada tab config, dan pilih firmware anda (hasil download langkah sebelumnya)
Gambar 2. Select Custom Firmware
Pilihlah file custom firmware yang didownload sebelumnya.

6c. Klik pada tab advanced, dan ubah parameter flash size menjadi 16M sesuai dengan ukuran flash D1 mini pro.

Gambar 3. Ubah Flash size 16MB (sesuai ukuran flash-size D1 mini pro)
6d. Kembali kehalaman operation, dan klik pada flash untuk memulai, jika berhasil akan mendapatkan tampilan sebagai berikut ini:

Gambar 4. Hasil Flash

7.Download software Esplor untuk sebagai lingkungan pengembangan nodemcu pada alamat https://esp8266.ru/esplorer/

8. Tutup Sofware nodemcu-flasher, dan lakukan koneksi dengan software esplor

8a. Dalam hal ini saya menggunakan port 8 dan kecepatan 115200 baud dengan hasil:
PORT OPEN 115200
Communication with MCU..
8b. Tekan tombol reset pada board
NodeMCU custom build by frightanic.com
    branch: master
    commit: 81ec3665cb5fe68eb8596612485cc206b65659c9
    SSL: true
    modules: cjson,crypto,dht,file,gpio,http,i2c,net,node,rtctime,sntp,tmr,uart,websocket,wifi
 build     built on: 2016-12-20 03:33
 powered by Lua 5.1.4 on SDK 1.5.4.1(39cb9a32)
lua: cannot open init.lua
Troubleshooting:
1. Blue led keep fast flashing and board trapped in forever loop reset condition

Connect to your board on 74880 baud , shown something like this
load 0x40100000, len 25952, room 16
tail 0
chksum 0xd7
load 0x3ffe8000, len 2260, room 8
tail 12
chksum 0xd9
ho 0 tail 12 room 4
load 0x3ffe88d4, len 8, room 12
tail 8
chksum 0xc5
csum 0xc5
rf_cal[0] !=0x05,is 0xFF

 ets Jan  8 2013,rst cause:2, boot mode:(3,7)
Solution 1: Must make sure that when flashing has set flash-size to 16MB

Gambar 5. Make sure to use 16MB

Solution 2: Check your firmware size firmware, noted that size cannot over 491 KB (the space before the system data)


Tidak ada komentar:

Posting Komentar