CÔNG VIỆC CỦA CHÚNG TÔI

+ Đào tạo & hỗ trợ thi & Cấp chứng chỉ Ứng dụng CNTT cơ bản, nâng cao
+ Cung cấp dịch vụ Thiết kế - Lập trình web
+ Các giải pháp triển khai - quản trị hệ thống mạng doanh nghiệp
+ ĐÀO TẠO CHUYÊN NGHIỆP: LẬP TRÌNH (C, .Net, ASP.net, PHP, Thiết kế Đồ họa

Cập nhật firmware AT cho ESP8266

Có rất nhiều phiên bản firmware khác nhau cho ESP8266, tuy nhiên firmware sử dụng AT command là được sử dụng khá phổ biến hiện nay với các modul ESP8266 có trên thị trường. Nếu trong quá trình lập trình cho ESP8266 bạn có xóa hết firmware cũ sau đó lại muốn nạp lại thì mình xin hướng dẫn cho các một cách dễ dàng trong bài viết này.

Các phiên bản firmware AT command

  • Bản Offical từ Espressif, bản này chỉ sử dụng được cho các modul ESP8266 có bộ nhớ flash lớn, thường là từ v12 trở lên, được phát triển bởi Espressif.
  • Bản của ai-thinker, bản này phù hợp với mọi phiên bản ESP8266, thường được dùng với ESP8266v1 dung lượng flash nhỏ.

Chuẩn bị công cụ

  • Modul ESP8266 và mạch USB2UART PL2303 hoặc NodeMCU, ở đây mình dùng ESP8266v1 và PL2303
  • Nguồn 3v3 cho ESP8266.
  • Tool Flash ESP8266.
  • File firmware blank và firmware ai-thinker.
Tất cả đồ nghề flash có thể tải tại  ESP8266 Tool

Kết nối phần cứng

  • Với NodeMCU thì quá đơn giản, chỉ cần cắm nguồn qua cổng USB là có thể flash được rồi.
  • Với ESP8266v1 thì cần kết nối chân như sau
esp8266-pinout_top
ESP8266PL2303Nguồn 3.3VGhi chú
VCCxVCCNối VCC của ESP với nguồn 3V3
GNDGNDGNDNối chung GND của ESP,PL2303 và GND của nguồn 3V3
RSTxxKhi ESP bị treo hoặc không nạp được thì nối với GND sau đó ngắt kết nối
CH_PDxVCCNối với 3V3 cho phép kích hoạt phát wifi
TXDRXDxNối ESP với PL2303 để giao tiếp nạp firmware
RXDTXDxNối ESP với PL2303 để giao tiếp nạp firmware
GPIO0GNDGNDNối xuống GND để có thể update được firmware
GPIO2xx

Flash firmware

  • Mở phần mềm ESP8266Flasher, chọn cổng COM
flash_esp8266_com_connect
  • Cấu hình chọn mục Config, sau đó chọn đường dẫn file flash blank_1MB.bin, địa chỉ lần lượt là 0x000000, 0x100000, 0x200000 and 0x300000, trở về thẻ Operation, ấn flash để xóa sạch sẽ firmware cũ
flash_esp8266_com_earase_all
Lưu ý 1: Chân GPIO0 phải được nối với GND trước khi flash. Nếu thấy thanh trượt bắt đầu chạy nghĩa là đã flash được, còn không có thì bạn phải reset lại ESP8266 bằng cách nối chân RST với GND sau đó thả ra và ấn nút flash lại.
Lưu ý 2: nếu bạn chưa sử dụng nhiều bộ nhớ flash của ESP8266 thì có thể bỏ qua bước xóa sạch sẽ firmware.
flash_esp8266_com_begin_flashl
  • Thêm firmware mới, ở đây phần địa chỉ ta giữ nguyên là 0x000000 và có 2 firmware cho bạn lựa chọn
    • ai-thinker-0.9.5.2-9600.bin – Tốc độ baud rate mặc định là 9600
    • ai-thinker-0.9.5.2-115200.bin – T Tốc độ baud rate mặc định là 115200 (mình sử dụng bản này)
flash_esp8266_com_ai-thinker
Sau khi nạp hoàn thành thì phần mềm tự ngắt kết nối với ESP8266, bạn thực hiện reset lại và kiểm tra hoạt động bình thường thôi, bạn có thể xem thêm ở phần Log để biết quá trình flash đã tới đâu, có lỗi lầm gì không.
flash_esp8266_log

Tạm kết

 xong phần nạp firmware AT Command cho các loại ESP8266, việc còn lại là kiểm tra hoạt động của nó như thế nào, bạn có thể xem thêm cách kiểm tra lệnh AT của ESP8266.


EmoticonEmoticon