Nạp firmware ESP32 & ESP8266 ngay trên trình duyệt

Cắm bo nạp CH340 hoặc CP2102, mở trang này, nạp xong. Không cài phần mềm, không dòng lệnh. Dùng được cả trên điện thoại Android qua cáp OTG.

ESP32ESP32-S2ESP32-S3 ESP32-C2ESP32-C3ESP32-C6 ESP32-H2ESP32-P4ESP8266
Trình duyệt này không nạp được.

Cần Chrome hoặc Edge (máy tính), hoặc Chrome trên Android. Safari và Firefox chưa hỗ trợ Web Serial lẫn WebUSB.

Kết nối

Cắm bo nạp trước, rồi chọn cổng khi trình duyệt hỏi.

Chưa kết nối

Dòng chip

Chọn để lấy sẵn bố cục địa chỉ. Nếu đã kết nối, chip được nhận tự động.

File và địa chỉ

Kéo thả file .bin vào từng dòng. Sửa địa chỉ bằng số hex nếu bản build của bạn khác chuẩn.

Bản đồ vùng flash chưa chọn file
0x000000 4.00 MB 0x400000

Sau khi nạp

Chọn việc cần làm ngay khi ghi xong.

Tuỳ chọn ghi
Sao lưu, xoá và chẩn đoán

MD5:

Serial monitor

ESP8266 in log khởi động của ROM ở 74880 baud, không phải 115200.

Hướng dẫn đấu dây

Sơ đồ cho ESP32:

    Bo không có mạch auto-reset: giữ nút GPIO0, nhấn nhả RESET, rồi thả ra. Chip sẽ đứng ở chế độ chờ nạp.

    Nhật ký

    Bảng địa chỉ nạp theo từng dòng chip

    Sai một địa chỉ là chip không khởi động được, nên đây là bảng nên xem trước khi nạp thủ công.

    ChipBootloaderBảng phân vùngỨng dụng
    ESP320x10000x80000x10000
    ESP32-S20x10000x80000x10000
    ESP32-S30x00x80000x10000
    ESP32-C3 / C2 / C6 / H20x00x80000x10000
    ESP8266 (file gộp)0x0 — một file duy nhất

    Riêng ESP8266 dùng bố cục SDK

    Bản build theo SDK của Espressif chia thành bốn phần, trong đó hai phần cuối nằm ở cuối vùng flash nên vị trí thay đổi theo dung lượng:

    FileFlash 1MBFlash 4MB
    eagle.flash.bin0x000000x00000
    eagle.irom0text.bin0x100000x10000
    esp_init_data_default.bin0xFC0000x3FC000
    blank.bin0xFE0000x3FE000
    Thiếu esp_init_data_default.bin thì ESP8266 vẫn chạy nhưng phần vô tuyến sai hiệu chuẩn — biểu hiện thường thấy là bắt WiFi chập chờn hoặc không phát được AP.

    Lỗi hay gặp

    Failed to connect / A fatal error occurred

    Chip chưa vào chế độ nạp. Giữ nút BOOT, nhấn nhả RESET rồi thả BOOT, sau đó bấm Kết nối lại. Với ESP32-C3 trở đi thì chân BOOT là GPIO9 chứ không phải GPIO0.

    Trình duyệt không thấy cổng nào

    Máy chưa có driver cho bo nạp. Cài driver CH340 nếu bo dùng chip CH340/CH341, hoặc driver CP210x nếu là CP2102. Sau khi cài, rút ra cắm lại rồi thử tiếp.

    Nạp được nhưng chip khởi động lại liên tục

    Thường do nguồn yếu. ESP32 lúc phát WiFi rút dòng đỉnh vượt 400mA, cổng USB của một số laptop không tải nổi. Cấp nguồn ngoài 3V3 hoặc đổi cáp dày hơn.

    Tốc độ nạp rất chậm

    Hạ baud xuống 115200 để kiểm tra đường truyền có ổn không, rồi tăng dần. Cáp dài hoặc bo nạp kém sẽ không chạy nổi 921600.

    Nạp bằng điện thoại Android

    Android không có Web Serial, nên phải chọn WebUSB ở phần Kết nối. Cần cáp OTG và bo nạp cấp nguồn được cho mạch. Cách này tiện khi sửa chữa tại chỗ, không mang theo máy tính.

    Sao lưu trước khi ghi đè

    Trong phần Sao lưu, xoá và chẩn đoán, đặt địa chỉ 0x0 và kích thước bằng đúng dung lượng flash rồi bấm Đọc flash và tải về. File .bin thu được có thể ghi ngược lại y nguyên nếu firmware mới có vấn đề. Với thiết bị đang chạy được, nên làm bước này trước tiên.

    Trình duyệt hỗ trợ

    Trình duyệtWeb SerialWebUSB
    Chrome / Edge (Windows, macOS, Linux)
    Chrome trên AndroidKhông
    Safari, FirefoxKhôngKhông

    Trang phải chạy qua HTTPS hoặc localhost thì trình duyệt mới cho phép truy cập cổng.

    Chưa kết nối