EnglishThis website is also available in English

Tasmota pada ESP8266 NodeMCU & Arduino IDE

Tasmota adalah firmware open-source alternatif untuk perangkat yang didasarkan pada chipset WiFi ESP8266. Firmware ini memberi timer, antarmuka web, pembaruan OTA, dan dukungan sensor pada perangkat. Ini juga memungkinkan kontrol di bawah HTTP, MQTT, KNX dan serial. Ini ditulis untuk Arduino IDE dan PlatformIO.

Dengan firmware Tasmota diinstal, perangkat Anda dapat membaca keadaan tombol dan sakelar, dan banyak jenis sensor untuk hal-hal seperti suhu, kelembaban, cahaya, IR, dll. Ia juga dapat mengontrol perangkat seperti relay, LED, display, pemancar IR dan masih banyak lagi.

Singkatnya, Tasmota mengubah papan berbasis ESP8266 Anda menjadi perangkat IOT serbaguna tanpa harus menulis kode Anda sendiri.

Tasmota on ESP8266 NodeMCU with Arduino IDE: Diagram
Tasmota on ESP8266 NodeMCU with Arduino IDE: Diagram

Dalam posting blog ini, kita akan menginstal Tasmota pada papan pengembangan NodeMCU ESP8266 menggunakan Arduino IDE. Kemudian, sebagai contoh, kita akan mengonfigurasi Tasmota untuk mengganti LED onboard dan satu LED eksternal. Ini akan menjadi titik awal yang baik untuk proyek otomatisasi rumah IoT dan DIY di masa mendatang.

ESP8266 NodeMcu Geekcreit ESP-12E/F Development Board
ESP8266 NodeMcu Geekcreit ESP-12E/F Development Board

Awalnya ditulis untuk perangkat Sonoff, tetapi mendukung perangkat dari banyak merek lain seperti Electrodragon, MagicHome, AriLux, Blitzwolf, dan Allterco. Tentu saja, Anda juga dapat menginstalnya di papan pengembangan seperti Wemos D1 mini dan ESP8266 NodeMCU.

Geekcreit® NodeMcu Lua ESP8266 ESP-12F WIFI Development Board
Diuji dan direkomendasikan oleh OneGuyOneBlog.com:

Geekcreit® NodeMcu Lua ESP8266 ESP-12F WIFI Development Board

Mempersiapkan IDE Arduino

Pertama-tama, Anda harus menginstal IDE Arduino. Jika Anda memerlukan bantuan dengan itu, maka Anda harus memeriksa Menginstal Arduino IDE pada Windows 10 atau Menginstal atau meningkatkan ke Arduino IDE terbaru di Linux.

Setelah IDE terpasang, Anda perlu menambahkan inti ESP8266 ke IDE. Anda dapat membaca lebih lanjut tentang itu di posting blog ESP8266 NodeMcu dan Arduino IDE di Linux. Prosedurnya sama untuk Windows.

Unduh dan instal file proyek Tasmota

Unduh file zip Tasmota dari halaman Tasmota GitHub. Ekstrak di suatu tempat di komputer Anda.

Temukan lokasi folder ‘sketsa’ Arduino Anda, lihat File> Preferensi> Pengaturan di Arduino IDE Anda.

Salin konten folder ‘lib’ Tasmota ke folder ‘perpustakaan’ sketsa.
Salin folder ‘sonoff’ Tasmota ke folder buku sketsa Anda.

Temukan lokasi folder Arduino IDE, lihat File> Preferensi> Pengaturan.

Di dalam folder Arduino IDE, temukan direktori ‘paket \ esp8266 \ hardware \ esp8266 \ 2.x.x’
Ganti ‘platform.txt’ dengan file Tasmota ‘arduino \ versi 2.x.x \ platform.txt’.

Konfigurasikan firmware Tasmota

Hubungkan papan pengembangan ESP8266 Anda ke komputer Anda. Di Arduino IDE, buka file ‘sonoff.ino’ dari folder ‘sonoff’ sketsa Anda.

Buka tab ‘my_user_config.h’ dan ubah pengaturan untuk jaringan dan WiFi:

// -- Wifi ----------------------------------------
#define WIFI_IP_ADDRESS        "0.0.0.0"          // [IpAddress1] Set to 0.0.0.0 for using DHCP or enter a static IP address
#define WIFI_GATEWAY           "192.168.10.1"     // [IpAddress2] If not using DHCP set Gateway IP address
#define WIFI_SUBNETMASK        "255.255.255.0"    // [IpAddress3] If not using DHCP set Network mask
#define WIFI_DNS               "192.168.10.1"     // [IpAddress4] If not using DHCP set DNS IP address (might be equal to WIFI_GATEWAY)

#define STA_SSID1              "yourwifinetwork"  // [Ssid1] Wifi SSID
#define STA_PASS1              "yourwifipassword" // [Password1] Wifi password
#define STA_SSID2              ""                 // [Ssid2] Optional alternate AP Wifi SSID
#define STA_PASS2              ""                 // [Password2] Optional alternate AP Wifi password
#define WIFI_CONFIG_TOOL       WIFI_MANAGER       // [WifiConfig] Default tool if wifi fails to connect
                                                  //   (WIFI_RESTART, WIFI_SMARTCONFIG, WIFI_MANAGER, WIFI_WPSCONFIG, WIFI_RETRY, WIFI_WAIT, WIFI_SERIAL)
#define WIFI_CONFIG_NO_SSID    WIFI_MANAGER       // Default tool if wifi fails to connect and no SSID is configured

Enter the IP address or set it to “0.0.0.0” if you’re using DHCP.

You can give your device a unique project name, so it will be easier to recognize between the other devices in your network:

// -- Project -------------------------------------
#define PROJECT                "Sonoff"          // PROJECT is used as the default topic delimiter

Masukkan alamat IP atau setel ke “0.0.0.0” jika Anda menggunakan DHCP.

Anda dapat memberi perangkat Anda nama proyek yang unik, sehingga akan lebih mudah untuk mengenali antara perangkat lain di jaringan Anda:

// -- Master parameter control --------------------
#define CFG_HOLDER             234              // [Reset 1] Change this value (max 32000) to load SECTION1 configuration parameters to flash

Jika Anda tidak mengubah parameter, pengaturan baru tidak akan berlaku. ‘CFG_HOLDER’ dapat ditemukan di bawah ‘Kontrol parameter master’.

Pengaturan papan ESP8266 NodeMCU

Sebelum Anda mengkompilasi dan mengunggah firmware. pertama periksa pengaturan papan berikut di bawah menu “Tools” di Arduino IDE:

  • Board: “Generic ESP8266 Module”
  • Flash Size: 1M (no SPIFFS)
  • Flash Mode: “DOUT”
  • lwIP Variant: “v2 Higher Bandwidth (no features)”
  • VTables: “Flash”
  • Exceptions: “Disabled”
  • Erase Flash: “Only Sketch”

Jangan lupa untuk memilih USB / COM-port yang tepat.

Arduino IDE: Board settings for Tasmota on ESP8266-NodeMCU
Arduino IDE: Board settings for Tasmota on ESP8266-NodeMCU

Kompilasi dan unggah sketsa ke papan pengembangan Anda.

Mengkonfigurasi Tasmota pada ESP8266 NodeMCU

Setelah ESP8266 Anda di-flash dan restart, cari alamat IP-nya di jaringan Anda. Jika Anda tidak tahu di mana menemukannya, Anda mungkin harus memeriksa router Anda terlebih dahulu.

Masukkan alamat IP ESP8266 di browser Anda. Menu utama Tasmota akan muncul.

.

Tasmota on ESP8266-NodeMCU with Arduino IDE: Tasmota main menu
Tasmota on ESP8266-NodeMCU with Arduino IDE: Tasmota main menu

Setelah antarmuka web Tasmota muncul, kita perlu mengubah jenis modul dari default “Sonoff Basic” menjadi “Generic”. Pergi ke “Konfigurasi” dan pilih “Konfigurasi Modul”. Pilih “Generik” untuk Jenis Modul dan Simpan.

Tasmota on ESP8266-NodeMCU with Arduino IDE: Module selection
Tasmota on ESP8266-NodeMCU with Arduino IDE: Module selection

Modul akan restart. Selanjutnya, kita akan mengonfigurasi GPIO dari papan ESP8266.

Mengatur opsi ESP8266 GPIO

Untuk menguji Tasmota pada ESP8266, pertama-tama kita akan mengkonfigurasi LED bawaan pada papan NodeMCU untuk dihidupkan dan dimatikan dengan menggunakan antarmuka web. Pada versi board ini, LED menyala pada GPIO16 (D0).

Di antarmuka Tasmota, pergi ke Konfigurasi dan kemudian Konfigurasi Modul. Pastikan semua GPIO diatur ke “Tidak Ada”. Kemudian atur GPIO16 ke “Relay1i”. Tekan “Simpan” dan kembali ke Menu Utama.

Tasmota on ESP8266-NodeMCU with Arduino IDE: GPIO configuration
Tasmota on ESP8266-NodeMCU with Arduino IDE: GPIO configuration

Di bagian atas Menu Utama, Anda akan melihat tombol berlabel “Toggle”. Menekan tombol sekarang akan mengaktifkan LED internal pada papan NodeMCU. Ini mengkonfirmasi bahwa Tasmota diinstal dengan benar dan berfungsi sebagaimana mestinya.

Tasmota on ESP8266 NodeMCU with Arduino IDE: Toggle on/off
Tasmota on ESP8266 NodeMCU with Arduino IDE: Toggle on/off

Lebih banyak LED, lebih menyenangkan

Sementara kita melakukannya, mari kita tambahkan beberapa kontrol untuk LED. Papan NodeMCU sebenarnya memiliki 2 LED bawaan: yang kedua adalah pada modul ESP-12 itu sendiri. LED ini ditugaskan untuk GPIO2 (D4). Jadi dalam konfigurasi Tasmota, atur GPIO2 ke “Relay2i”.

Setelah itu, kami akan menambahkan LED eksternal pada GPIO4 (D2). Anoda (positif, kaki panjang) terhubung ke pin D2 melalui resistor 470-ohm. Katoda (negatif, kaki pendek) terhubung ke pin GND melalui kabel jumper. Lihat gambar di bawah ini.

ESP8266 NodeMCU on Breadboard
ESP8266 NodeMCU on Breadboard

Selanjutnya, dalam Konfigurasi Modul, kami mengatur GPIO4 ke ‘Relay3’. Konfigurasi akan terlihat seperti gambar di bawah ini.

Tasmota on ESP8266 NodeMCU with Arduino IDE: GPIO configuration for 3 LEDs
GPIO configuration for 3 LEDs

Di halaman utama, tiga tombol sekarang memungkinkan Anda untuk mengaktifkan dua built-in serta LED eksternal.

Tasmota on ESP8266 NodeMCU with Arduino IDE: Multiple toggle switches
Multiple toggle switches

Juga, perhatikan bahwa dalam dua gambar di atas saya mengubah nama perangkat dari “Sonoff” menjadi “ESP8266” (Configuration > Configure other > Friendly Name 1).

Sekarang, dengan menggunakan tombol sakelar di menu utama Tasmota, Anda dapat menghidupkan atau mematikan tiga LED.

ESP8266 NodeMCU with Three LEDs
ESP8266 NodeMCU with Three LEDs

Langkah selanjutnya

Sekarang Anda tahu cara beralih GPIO, Anda dapat menggunakan Tasmota untuk beralih relais di NodeMCU, atau menggunakan GPIO untuk membaca nilai dari tombol atau sensor. Dengan sendirinya, ini sudah merupakan aplikasi firmware yang sangat berguna.

Dalam posting blog berikutnya, kita akan melihat bagaimana kita dapat menggunakan fungsionalitas MQTT dari Tasmota. Ini akan membuat ESP8288 berkomunikasi dengan aplikasi seperti Node-Red atau Home Assistant, dan akan mengubah NodeMCU menjadi perangkat DIY yang sangat serbaguna untuk proyek otomatisasi rumah.

Geekcreit® NodeMcu Lua ESP8266 ESP-12F WIFI Development Board
Diuji dan direkomendasikan oleh OneGuyOneBlog.com:

Geekcreit® NodeMcu Lua ESP8266 ESP-12F WIFI Development Board

Add a Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *