Firmware
ดาวน์โหลด & แฟลชเฟิร์มแวร์
แฟลช ESP32 ได้ 3 ทาง — แฟลชผ่านเว็บนี้โดยตรง (ไม่ต้องลงโปรแกรม),
ดาวน์โหลดไฟล์ .bin ไปแฟลชเอง, หรือ อัปเดตออนไลน์ผ่าน OTA
สำหรับเครื่องที่ติดตั้ง FW 2.0.1 ขึ้นไปแล้ว
1) แฟลชผ่านเว็บ (Web Serial)
ต้องใช้ Chrome, Edge หรือ Opera บนคอมพิวเตอร์ — Web Serial ไม่รองรับบน Safari,
Firefox และมือถือ และหน้าเว็บต้องเปิดผ่าน https://
พร้อมแฟลช — กด “เชื่อมต่อ & แฟลช” แล้วเลือกพอร์ต COM ของบอร์ด
ถ้าเชื่อมต่อไม่ติด — ต้องลงไดรเวอร์ USB-Serial ของบอร์ดก่อน
(
CP2102
หรือ
CH340)
และบางบอร์ดต้อง
กดปุ่ม BOOT ค้างไว้ ตอนเริ่มแฟลช
2) ดาวน์โหลดไฟล์ .bin ไปแฟลชเอง
มี 2 แบบต่อรุ่น — full (bootloader + partition + app รวมกัน)
แฟลชที่ 0x0 บูตได้จากบอร์ดเปล่า · app only แฟลชที่
0x10000 ใช้กับ OTA หรือบอร์ดที่มี bootloader เดิมอยู่แล้วเท่านั้น
คำสั่ง esptool (full image → บูตได้จากบอร์ดเปล่า)
esptool.py --chip esp32 --port COM3 --baud 921600 write_flash 0x0 bmsgo-esp32-2.0.2-full.bin
รุ่น S3 เปลี่ยนเป็น --chip esp32s3 และไฟล์
…-esp32s3-…-full.bin — full image ครอบทั้งชิป การแฟลชจึงรีเซ็ตค่า WiFi/ชื่อแพ็ค
(Device Code จาก eFuse ไม่เปลี่ยน) ถ้าต้องการอัปเดตแบบเก็บค่าเดิมให้ใช้ OTA ในข้อ 3
3) อัปเดตออนไลน์ (OTA) — FW 2.0.1 ขึ้นไป
เครื่องที่ลง FW 2.0.1 แล้ว ไม่ต้องต่อสาย USB อีก
ตัวเครื่องจะเช็คเวอร์ชันใหม่กับ bmsgo.life ให้เอง
เปิดหน้าเว็บของเครื่อง
เข้าที่ IP ของ ESP32 ในวง LAN เช่น http://192.168.1.50
ถ้ามีเวอร์ชันใหม่จะมีแถบเขียวขึ้นบนสุดของแดชบอร์ด
ไปที่ Settings → Firmware update
กด Check for update เพื่อถามเซิร์ฟเวอร์ แล้วกด Download & install
รอจนขึ้น “restarting”
ห้ามตัดไฟระหว่างอัปเดต ใช้เวลาประมาณ 20–60 วินาที
ถ้าดาวน์โหลดไม่สำเร็จ เครื่องจะทิ้งไฟล์และรันเฟิร์มแวร์เดิมต่อ
อัปโหลดไฟล์เองก็ได้
ในหน้าเดียวกันมีช่อง Manual update from a file
เลือกไฟล์ .bin จากเครื่องแล้วกดอัปโหลด ใช้ได้แม้ไม่มีอินเทอร์เน็ต
ข้อควรรู้เรื่อง partition — OTA ต้องใช้ partition scheme ที่มี 2 ช่องแอป
ถ้าคอมไพล์เองให้เลือก “Minimal SPIFFS (Large APPS with OTA)” ใน Arduino IDE
ไฟล์ที่แจกในหน้านี้คอมไพล์มาแบบรองรับ OTA แล้ว
คำถามที่พบบ่อย
แฟลชผ่านเว็บแล้วค่าเดิมหายไหม?
การแฟลชผ่านเว็บใช้ full image (ครอบทั้งชิป) จึงรีเซ็ตค่า WiFi / ชื่อแพ็ค / โทเคน
เหมือนลงใหม่จากศูนย์ แต่ Device Code ไม่เปลี่ยน (สร้างจาก eFuse MAC ของชิป)
ประวัติบน bmsgo.life จึงต่อเนื่อง หลังแฟลชเสร็จเครื่องจะเปิดหน้าตั้งค่า WiFi ให้เอง
ถ้าต้องการอัปเดตแบบเก็บค่าเดิม ให้ใช้ OTA (ข้อ 3) แทน
Device Code เปลี่ยนไหมหลังแฟลชใหม่?
ไม่เปลี่ยน — Device Code สร้างจาก eFuse MAC ของชิป ESP32
ซึ่งเป็นค่าฮาร์ดแวร์ ไม่ว่าจะแฟลชกี่ครั้งก็ได้รหัสเดิม
ประวัติข้อมูลบน bmsgo.life จึงต่อเนื่อง
ใช้ไฟล์ของรุ่น CYD กับบอร์ดธรรมดาได้ไหม?
ไม่ได้ รุ่น CYD คอมไพล์สำหรับจอ ESP32-2432S028R และใช้ขา RS485
คนละขา (TX=22 / RX=27) ถ้าลงผิดรุ่นจะไม่มีข้อมูลขึ้นและจออาจไม่ติด
เลือกให้ตรงกับบอร์ดที่ใช้จริง
อยากย้อนกลับไปเวอร์ชันเก่า
ดาวน์โหลด .bin ของเวอร์ชันที่ต้องการจากรายการด้านบน
แล้วแฟลชผ่านเว็บหรือ esptool ได้เลย — OTA จะอัปเดตขึ้นอย่างเดียว
แต่การแฟลชผ่านสายลงเวอร์ชันใดก็ได้