Daftar Isi:
- Perlengkapan
- Langkah 1: Koneksi Kawat
- Langkah 2: Periksa Versi Firmware
- Langkah 3: Mempersiapkan Pengaturan: Sebelum Flashing Firmware
- Langkah 4: Unduh Alat dan Firmware Flashing
- Langkah 5: Prosedur Flashing
- Langkah 6: Ubah Baud Rate Secara Permanen
- Langkah 7: Pemecahan Masalah
Video: Restore atau Upgrade Firmware pada Modul ESP8266 (ESP-01) Menggunakan Arduino UNO: 7 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Modul ESP-01 yang saya gunakan awalnya datang dengan firmware AI Thinker yang lebih lama, yang membatasi kemampuannya karena banyak perintah AT yang berguna tidak didukung.
Secara umum merupakan ide yang baik untuk mengupgrade firmware Anda untuk perbaikan bug dan juga tergantung pada fungsionalitas yang diperlukan dari modul ESP, mungkin diperlukan serangkaian perintah AT yang didukung yang lebih lengkap. Tutorial ini juga menjelaskan cara mengembalikan atau mem-flash firmware Espressif asli jika Anda mengacaukan firmware ESP Anda, misalnya melalui beberapa perintah AT yang salah. Inilah yang terjadi ketika saya mencoba mengubah baud rate default dari 115200 menjadi 9600. Saya menggunakan perintah berikut (berdasarkan pencarian cepat Google):
AT+IPR=9600
Ini merusak modul ESP-01. Tidak ada perintah AT yang berfungsi lagi, yang mendorong saya untuk melakukan penelitian lebih lanjut dan setelah berjam-jam, saya akhirnya menemukan cara untuk memulihkan ESP-01 saya dan menginstal firmware terbaru yang kompatibel. Jadi, saya memutuskan itu layak untuk berbagi seluruh proses.
Perhatian: Berdasarkan pengalaman saya, saya sangat menyarankan untuk tidak menggunakan perintah AT+IPR untuk mengubah baud rate Anda karena kemungkinan besar akan mengharuskan Anda untuk mem-flash ulang firmware Anda. Namun, ada banyak varian modul ESP-01 yang berbeda dengan ukuran flash dan versi firmware pabrik yang berbeda, sehingga pengalaman Anda mungkin berbeda.
Modul ESP-01 tidak sesuai dengan 5 V dan membutuhkan 3,3 V untuk memberi daya, tetapi juga berfungsi dengan baik pada tingkat logika. Untuk berkomunikasi dengan komputer, modul juga memerlukan konverter USB ke serial. Jadi, daripada menggunakan konverter tegangan dan adaptor USB ke serial, saya memutuskan untuk memilih solusi yang lebih sederhana. Karena saya sudah memiliki Arduino UNO, saya menggunakan yang terakhir untuk memberi daya pada modul ESP-01 dan membangun komunikasi antara ESP-01 dan komputer, yang secara efektif beroperasi sebagai jembatan serial.
Perlengkapan
- Modul ESP-01
- Arduino UNO (dengan kabel USB)
- Kabel jumper DuPont
- Papan tempat memotong roti
Langkah 1: Koneksi Kawat
Sambungan kabel dengan modul Arduino UNO dan ESP-01 dapat dibuat dengan mudah menggunakan kabel jumper dan papan tempat memotong roti. Koneksi antara papan pengembangan Arduino dan modul ESP dijelaskan dalam tabel. Koneksi RX dan TX tidak dibalik dalam hal ini, karena komunikasi tidak terjadi antara modul Arduino dan ESP tetapi antara ESP dan komputer. Jadi, dalam hal ini, board Arduino UNO digunakan sebagai jembatan serial melalui konverter USB ke serial yang terpasang di dalamnya.
Sambungan pin RX antara board Arduino dan modul ESP harus dilakukan melalui pembagi tegangan, karena ESP-01 beroperasi pada level logika 3,3 V dan menerima level logika 5 V dari Arduino UNO dapat merusak modul ESP. Anda dapat membuat pembagi tegangan 3,3 V sederhana hanya dengan menggunakan 2 resistor seperti yang ditunjukkan pada gambar. Secara opsional, Anda dapat menggunakan konverter level logika.
Perhatian: Untuk pengaturan saya, saya hanya menghubungkan pin RX secara langsung (tidak disarankan!) dan semuanya bekerja, tetapi jika Anda memutuskan untuk mengabaikan konversi level logika, lanjutkan dengan risiko Anda sendiri!
Untuk membuat koneksi Ground yang sama, pin Ground Arduino UNO terhubung ke pin Ground modul ESP.
Arduino UNO digunakan untuk memberikan daya 3,3 V langsung ke pin VCC modul ESP. Hubungkan pin 3,3 V ke breadboard menggunakan kabel jumper, karena 3,3 V akan digunakan tidak hanya untuk pin VCC ESP tetapi juga pin CH_PD ESP untuk mengaktifkan chip ESP.
Pin RESET pada Arduino UNO terhubung ke Ground untuk mem-bypass kode apa pun yang diunggah melalui Arduino sehingga kode tersebut malah dikirim dari komputer ke ESP-01.
Gambar tabel menunjukkan set lengkap koneksi untuk flashing firmware tetapi pada tahap ini, jangan sambungkan pin Reset dan GPIO_0 ESP karena kami hanya akan membaca informasi firmware pada langkah berikutnya.
Langkah 2: Periksa Versi Firmware
Untuk menemukan versi firmware ESP-01 Anda, di Arduino IDE Serial Monitor, ketik:
AT+GMR
Catatan: Semua perintah AT harus diketik dalam huruf besar tanpa spasi.
Berikut adalah output serial untuk ESP-01 saya (modul ESP Anda mungkin tidak menampilkan informasi yang persis sama karena bergantung pada model dan tanggal rilis tertentu):
AT+GMR
Masuk versi:0.25.0.0(5 Juni 2015 16:27:16) Versi SDK:1.1.1 Ai-Thinker Technology Co. Ltd. 23 Jun 2015 23:23:50 Oke
Sekarang, untuk meningkatkan ke firmware Espressif ESP8266EX resmi terbaru, buka bagian sumber daya situs webnya:
Catatan: Daftar firmware yang tersedia mungkin tidak semuanya kompatibel dengan model ESP-01 Anda. Periksa bagian Pemecahan Masalah di akhir tutorial ini untuk informasi lebih lanjut.
Langkah 3: Mempersiapkan Pengaturan: Sebelum Flashing Firmware
Sekarang, kita akan menyiapkan Arduino UNO untuk prosedur flashing firmware ESP-01.
Pastikan kabel RESET Arduino terputus dari Ground. Juga, kabel TX dan RX dari Arduino UNO harus diputuskan dari modul ESP-01.
Buka Arduino IDE dan dari menu atas, buka File > Contoh > 01. Basics > BareMinimum. Unggah sketsa ke Arduino UNO. Sketsa kosong ini akan memastikan bahwa tidak ada gangguan komunikasi yang terjadi dengan modul ESP.
Sambungkan kembali kabel RX dan TX antara UNO dan ESP-01. Juga, sambungkan pin RESET UNO ke Ground.
Pin CH_PD atau CH_EN adalah singkatan dari 'Chip Power-Down' atau 'Chip Enable' dan perlu ditarik TINGGI atau terhubung ke 3,3 V untuk mengaktifkan chip ESP.
Dua kabel jumper tambahan diperlukan untuk pin ESP berikut: GPIO_0 dan RESET.
GPIO_2 tidak digunakan dan dibiarkan terputus.
ESP-01 perlu diatur dalam mode pemrograman sehingga kode dapat diunggah ke dalamnya. Tetapi ESP-01 tidak memiliki perangkat keras tambahan on-board yang diperlukan untuk mencapai ini secara langsung, jadi semuanya harus dihubungkan secara terpisah. Untuk penggunaan saya sendiri, saya tidak repot menggunakan sakelar, tetapi cukup menggunakan dua kabel jumper male-female yang terhubung ke pin GPIO_0 dan RESET modul ESP-01 dan dicolokkan ke pin ground umum breadboard dari Ground Arduino UNO.
Sebelum memulai prosedur flashing, GPIO_0 terhubung ke Ground untuk seluruh prosedur flashing untuk mengaktifkan mode pemrograman.
Pin RESET terhubung ke Ground selama satu detik dan kemudian dilepas. Ini memungkinkan firmware baru untuk diunggah.
Langkah 4: Unduh Alat dan Firmware Flashing
Firmware yang digunakan adalah dari Espressif yang merupakan produsen asli dari chip ESP8266.
Buka: https://www.espressif.com/en/products/hardware/esp8266ex/resources untuk mengakses alat resmi dan file firmware AT.
Di bawah tab 'Tools', unduh Flash Download Tools (ESP8266 & ESP32), saat ini yang terbaru adalah V3.6.8.
Di bawah tab 'AT', unduh firmware AT terbaru yang kompatibel, yaitu ESP8266 AT Bin V1.6.2 untuk model ESP-01 saya. Itu tergantung pada model ESP-01 karena dapat memiliki ukuran memori flash yang berbeda. Anda akan menemukan informasi lebih lanjut tentang ini di bagian INFO TERDETEKSI dari program Alat Unduhan Flash setelah mengklik MULAI untuk memulai prosedur flashing. Jadi, jika Anda tidak yakin tentang ukuran flash atau file firmware mana yang harus dipilih, jalankan saja program untuk mendapatkan informasi yang benar tentang modul ESP Anda.
Setelah flashing, Anda dapat menggunakan perintah AT untuk menguji dan bekerja dengan ESP-01. Unduh set instruksi ESP8266 AT resmi:
Langkah 5: Prosedur Flashing
Ekstrak file zip Flash Download Tools dan buka file exe. Pastikan untuk menjalankannya sebagai administrator jika Anda menggunakan Windows. Jendela DOS pertama akan terbuka, diikuti oleh jendela pop-up. Pilih Alat Unduhan ESP8266. Ini akan membuka jendela dengan beberapa opsi yang dapat dikonfigurasi.
Pada tahap ini, lihat tangkapan layar untuk melihat dengan tepat opsi apa yang harus dipilih dan apa yang harus diketik di kotak kode hex di sebelah masing-masing file firmware yang dipilih.
Catatan: Pilih file firmware dalam urutan yang sama karena prosedur flash dilakukan secara berurutan. File blank.bin perlu dipilih tiga kali seperti yang ditunjukkan pada tangkapan layar set instruksi AT.
Untuk menemukan kode atau alamat hex yang benar, periksa dokumen set instruksi AT resmi. Saya telah melampirkan tangkapan layar tabel yang saya gunakan untuk mem-flash modul ESP saya.
Kemudian, cukup tekan tombol START dan saksikan keajaiban terjadi. Teks tombol akan menampilkan SYNC dan bagian DETECTED INFO akan menampilkan spesifikasi modul ESP Anda. Kemudian, teks akan menampilkan UNDUH dan bilah kemajuan akan aktif saat file firmware diunggah ke memori flash ESP. Setelah prosedur flashing firmware selesai, Anda akan melihat: SELESAI.
Tutup program Alat Unduhan Flash. Ini diperlukan untuk membebaskan port serial untuk memungkinkan Serial Monitor Arduino IDE mengambil alih.
Lepaskan pin ESP GPIO_0 dari koneksi Ground. Ini akan menonaktifkan mode pemrograman.
Hubungkan RESET ke Ground selama 1 detik dan kemudian lepaskan. Ini akan mengatur ulang modul.
Buka ArduinoIDE. Dari menu atas, pilih Alat > Port > pilih port COM yang benar. Buka Serial Monitor dan pilih "Both NL & CR" dan pilih baud rate 115200 yang merupakan default.
Jenis:
PADA
Jika prosedur flashing berjalan dengan benar, responsnya adalah:
oke
Untuk memverifikasi firmware baru Anda, ketik:
AT+GMR
Ini adalah output Serial Monitor untuk ESP-01 saya:
AT+GMR
Masuk versi:1.6.2.0(13 April 2018 11:10:59) Versi SDK:2.2.1(6ab97e9) waktu kompilasi:7 Juni 2018 19:34:26 Versi bin (Wroom 02)::1.6.2 OK
Langkah 6: Ubah Baud Rate Secara Permanen
Bagian ini opsional. Baud rate default adalah 115200 tetapi jika Anda ingin mengubahnya ke kecepatan baud lain, maka Anda cukup mengetikkan perintah berikut di Arduino Serial Monitor.
Misalnya, jika Anda ingin mengubah ke 9600 baud rate/8 bit data/1 stop bit/no parity bit/no flow control.
Ketik:
AT+UART_DEF=9600, 8, 1, 0, 0
Respon harus:
oke
Perintah di atas mengubah baud rate secara permanen ke 9600 tetapi Anda dapat memilih salah satu dari kecepatan baud standar.
Langkah 7: Pemecahan Masalah
Jika ada anomali setelah berhasil mem-flash firmware, misalnya di Serial Monitor, setelah Anda memilih baud rate default 115200 dan ketik: AT tetapi tidak melihat respons apa pun atau jika Anda mengetik AT+GMR dan menerima beberapa jenis informasi selain informasi versi firmware, maka Anda mungkin telah menginstal firmware yang salah. Dalam hal ini, dalam program Flash Download Tools, setelah Anda menekan tombol START untuk memulai prosedur flashing firmware, tombol hijau status membaca SYNC dan itulah tahap di mana informasi modul ESP diekstraksi dan tersedia di bawah DETECTED INFO. Informasi ini sangat penting untuk menentukan firmware yang tepat dan file yang benar untuk di-flash.
Berikut ini untuk modul ESP-01 saya:
penjual kilat:
E0h: N/A flash devID:4014h QUAD;8Mbit crystal:26 Mhz
INFO TERDETEKSI Anda akan bergantung pada model ESP-01. Tapi ini akan memungkinkan Anda untuk menyimpulkan ukuran flash yang benar. Di ESP saya, itu adalah 8Mbit yang setara dengan 1 MB. Jadi, ini berarti saya harus memilih 512 KB + 512 KB dari file firmware. Dan ini juga berarti bahwa firmware 1.7.0 atau 1.7.1 tidak akan berfungsi dengan baik untuk modul ESP saya, yang juga saya konfirmasi dengan mem-flash firmware dan pengujian ini. Juga, dalam deskripsi firmware 1.7.0 dan 1.7.1 di situs web sumber daya Espressif resmi, informasi berikut tercantum: "Dibatasi oleh ukuran file bin AT, hanya `1024+1024 flash map` yang didukung oleh bawaan." 1024+1024 artinya untuk modul ESP dengan total ukuran flash 2048 KB atau 2 MB.
Catatan: Jika Anda bertanya-tanya, Anda dapat menurunkan atau meningkatkan versi di antara versi firmware yang berbeda tanpa batasan apa pun. Jika ada yang tidak beres, Anda dapat mem-flash lagi dengan parameter yang berbeda atau mencoba firmware yang berbeda.
Direkomendasikan:
Cara Flash atau Program Firmware ESP8266 AT Dengan Menggunakan Flasher dan Programmer ESP8266, Modul Wifi IOT: 6 Langkah
Cara Flashing atau Program Firmware ESP8266 AT Dengan Menggunakan Flasher dan Programmer ESP8266, Modul Wifi IOT : Keterangan :Modul ini merupakan USB adapter/programmer untuk modul ESP8266 tipe ESP-01 atau ESP-01S. Ini dilengkapi dengan header perempuan 2x4P 2.54mm untuk menyambungkan ESP01. Ini juga mematahkan semua pin ESP-01 melalui h
Cara Menggunakan Neopixel Ws2812 LED atau LED STRIP atau Led Ring Dengan Arduino: 4 Langkah
Cara Menggunakan Neopixel Ws2812 LED atau LED STRIP atau Led Ring Dengan Arduino: Hai guys sejak Neopixel led Strip sangat populer dan juga disebut sebagai ws2812 led strip juga. Mereka sangat populer karena dalam strip yang dipimpin ini kita dapat mengatasi masing-masing dan setiap led secara terpisah yang berarti jika Anda ingin beberapa led menyala dalam satu warna
Memutar Lagu (MP3) Dengan Arduino Menggunakan PWM pada Speaker atau Flyback Transformer: 6 Langkah (dengan Gambar)
Memutar Lagu (MP3) Dengan Arduino Menggunakan PWM di Speaker atau Flyback Transformer: Halo Guys, Ini adalah instruksi pertama saya, saya harap Anda menyukainya!! Pada dasarnya, Dalam Proyek ini saya telah menggunakan Komunikasi Serial antara Arduino dan Laptop saya, untuk mengirimkan data musik dari laptop saya ke Arduino. Dan menggunakan TIMER Arduino untuk
Cara Meng-upgrade Firmware pada PCB Universal: 4 Langkah
Cara Meningkatkan Firmware pada PCB Universal: Proyek Universal PCB (disingkat UPCB) dimulai untuk memungkinkan pengontrol permainan tunggal, terutama tongkat perang, pada sebanyak mungkin konsol yang berbeda. Informasi tentang proyek ini dapat ditemukan di utas berikut di Shoryuken.com
MENGGUNAKAN SYSTEM RESTORE: 3 Langkah
MENGGUNAKAN PEMULIHAN SISTEM: Pemulihan sistem pertama kali muncul di windows saya, dan ini memberi Anda kesempatan untuk mengembalikan komputer Anda ke keadaan di mana ia bekerja dengan cara yang memuaskan, Oleh karena itu, batalkan hal-hal yang mungkin menyebabkan masalah