Checking browser support…
直接從瀏覽器燒錄 ESP32/ESP8266 韌體 —— 辨識晶片、寫入 .bin、備份 flash。不必裝 IDE 或 esptool。
Talks to your board locally over Web Serial — firmware never leaves your browser.
Checking browser support…
這個 ESP 韌體燒錄工具用 Web Serial API 直接從瀏覽器和 ESP32 或 ESP8266 對話,所以什麼都不用裝 —— 不用 Python、不用 esptool、不用 Arduino IDE。它建構在 esptool-js 之上,也就是 Espressif 官方自己的燒錄函式庫(Apache-2.0),底層協定和命令列的 esptool.py 完全相同。接上開發板,工具就會自動辨識晶片系列(ESP32、S2、S3、C3、C6、H2 以及 ESP8266)、flash 容量,並替你協商出較快的鮑率。
一份完整的 ESP 韌體通常是三個檔案,寫進 flash 的三個不同位移:bootloader、分割表與應用程式。工具會依偵測到的晶片預先填好標準位移 —— 原始 ESP32/S2 的 bootloader 在 0x1000(較新的 USB-Serial-JTAG 晶片則是 0x0)、分割表在 0x8000、應用程式在 0x10000 —— 並在旁邊逐項說明,讓你不必猜。如果你下載到的是 ESP-Web-Tools 風格的單一合併 binary,切到合併模式、丟進那一個檔案就好:它會整份寫在 0x0,不用設定任何位址。
燒錄會覆蓋晶片上原本的內容。在寫入任何東西之前,先用讀回工具把目前的 flash 匯出成一份 .bin 留著 —— 如果新韌體不合用,你可以把那份備份原封不動寫回去。你也可以讀取晶片的 flash ID 與 MAC 位址,或執行整顆抹除(這是破壞性操作,必須連按兩次確認才會動作)。
esptool-js 只燒錄已經存在的映像檔,它不編譯也不轉換。它沒辦法把 ELF 變成 .bin(那要用 ESP-IDF 工具鏈),也不包含 espefuse 或 espsecure —— 這裡刻意沒有燒 eFuse,也沒有 secure boot/flash 加密金鑰的處理。那些操作不可逆,屬於受控的桌面環境,不該放在網頁上。
寫錯映像檔,或把正確的映像檔寫到錯誤的位址,都可能讓開發板無法開機。這幾乎總是救得回來:連線時按住 BOOT/IO0 按鈕(或把它拉低)強制進入 ROM 下載模式,再燒回一份確定可用的韌體或你的備份。只有在 eFuse 被破壞時,板子才算真正變磚 —— 而這個工具刻意做不到那件事。
工具直接倚賴 esptool-js 自己的晶片自動辨識,涵蓋 ESP32、ESP32-S2、ESP32-S3、ESP32-C2、ESP32-C3、ESP32-C6、ESP32-H2 以及 ESP8266。連線之後,晶片系列、flash 容量與 MAC 都是從晶片本身讀出來的,所以你不會選錯目標。尚未在實機驗證過的晶片會誠實列在支援說明裡,而不是宣稱測過。
任何支援 Web Serial 的 Chromium 瀏覽器:桌面版的 Chrome、Edge、Opera,以及 Android 版 Chrome 148 以上。Safari 與 Firefox 並未實作 Web Serial,也沒有公布任何計畫,所以它們根本無法開啟序列埠 —— 請改用 Chrome 或 Edge 開這個頁面。
標準的三檔建置是這樣:bootloader 在原始 ESP32 與 ESP32-S2 上放 0x1000,在有 USB-Serial-JTAG 的新晶片(S3、C3、C6、H2)上放 0x0;分割表放 0x8000;應用程式放 0x10000。工具會依偵測到的晶片預先填好,並逐項說明。真的不確定的話,就用單一合併 binary,那完全不需要位址。
合併(或稱組合)binary 是單一個 .bin,裡面已經把 bootloader、分割表與應用程式依正確位移拼在一起。WLED、Tasmota 這類專案都會提供,方便一鍵安裝。在合併模式下你只要丟進那一個檔案,它就會整份寫在 0x0 —— 不必逐檔設定位址。
燒錯映像檔或寫到錯誤的位址,都可能讓板子開不起來,但幾乎總是救得回來:強制進入 ROM 下載模式(連線時按住 BOOT/IO0 拉低),再重新燒一份確定可用的韌體,或你先前做的備份。燒錄前先完整讀回一份備份,你就永遠留著一條回頭路。真正永久變磚必須破壞 eFuse,而這個工具做不到。
不支援 —— 而且是刻意如此。esptool-js 沒有內含 espefuse 或 espsecure,所以這裡沒有寫入 eFuse、啟用 secure boot 或處理 flash 加密金鑰的功能。那些操作不可逆,應該在受控的桌面工具鏈裡完成,而不是在瀏覽器裡。
可以。讀回工具會把一段 flash(或整顆晶片)匯出成 .bin 讓你下載保存。在燒錄任何新東西之前,這是最該做的一件事 —— 萬一更新出問題,你可以把那份一模一樣的映像檔直接寫回去。
After flashing, open the monitor to watch your board boot →
Want one-click WLED / Tasmota / ESPHome instead? Use the installer →