เหมาะกับใคร
เหมาะสำหรับผู้ที่ใช้อุปกรณ์รุ่น JK — ESP32 ตามที่ระบุไว้ในชื่อไฟล์
ไฟล์สำหรับ JK — ESP32 เพื่อเชื่อมต่อและติดตามข้อมูลพลังงานบน bmsgo.life โปรดตรวจสอบรุ่นอุปกรณ์กับผู้ติดตั้งก่อนดาวน์โหลด
เหมาะสำหรับผู้ที่ใช้อุปกรณ์รุ่น JK — ESP32 ตามที่ระบุไว้ในชื่อไฟล์
ตรวจชื่ออุปกรณ์ให้ตรงก่อนเริ่มติดตั้ง
แก้อาการ BLE หลุดแล้วบอร์ดค้างทั้งตัว: เดิมเมื่อ BMS หายไปจากอากาศ (ปิดแบต ออกนอกระยะ หรือปิด BLE) คำสั่งต่อ BLE จะหยุดรอนานถึง 30 วินาทีต่อช่อง รวมแล้วบอร์ดหยุดนิ่งได้ถึง 90 วินาทีต่อรอบ ช่วงนั้นหน้าเว็บเข้าไม่ได้ MQTT หลุด และไฟสถานะนิ่ง (บอร์ดไม่ได้พังและไม่ได้รีบูต แค่ติดอยู่ใน BLE stack) พอเปิด BMS กลับมาจึงดูเหมือนฟื้นเองทันที. 7.0.7 เปลี่ยนการต่อ BLE เป็นแบบไม่รอ (ตั้ง timeout 5 วินาที แล้วรับผลทีหลัง), ต่อทีละช่องเท่านั้น แพ็คที่หายไปจึงไม่กระทบแพ็คที่ยังดี, ลองใหม่แบบถอยห่าง 2-10 วินาที และกลับมาต่อทันทีที่ BMS กลับมา. เพิ่มตัวคุมเวลา: ถ้าไม่มีผลตอบกลับใน 9 วินาทีจะยกเลิกแล้วลองใหม่ และถ้าต่ออยู่แต่ไม่มีข้อมูลเกิน 30 วินาทีจะตัดแล้วต่อใหม่เอง. หน้าแหล่งข้อมูลแสดงสถานะ กำลังเชื่อมต่อ และ กำลังลองใหม่อีก N วินาที แทนการขึ้น offline เฉย ๆ. แก้ pointer ของ characteristic ที่ค้างอยู่หลังหลุด ซึ่งเป็นการเขียนลงหน่วยความจำที่คืนไปแล้ว
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
ตั้งชื่อ mDNS เองได้แล้ว: หน้า WiFi/Network มีช่อง Local name (a-z 0-9 - ไม่เกิน 24 ตัว) เปลี่ยนแล้วมีผลทันทีโดยไม่รีสตาร์ตและไม่ตัดการเชื่อมต่อ MQTT ที่ใช้อยู่ — รุ่นก่อนหน้าล็อกชื่อ bmsgo.local ไว้ตายตัว ถ้ามีหลายบอร์ดในวงเดียวกันบอร์ดที่สองจะเข้าไม่ได้. เพิ่มเงื่อนไขแจ้งเตือน SOC สูงกว่า/เท่ากับ (%) คู่กับ SOC ต่ำที่มีอยู่เดิม จึงเตือนตอนแบตเต็ม/ชาร์จเกินได้ (เงื่อนไขที่ตั้งไว้เดิมในบอร์ดยังทำงานเหมือนเดิม ไม่ต้องตั้งใหม่). ออกแบบหน้าแหล่งข้อมูล (Settings > BMS Source) ใหม่: เลือก RS485 หรือ BLE เป็นการ์ดที่บอกเพดานจำนวนแพ็คของตัวเอง, ช่อง BLE แต่ละช่องเป็นการ์ดมีเลขกำกับพร้อมไฟสถานะสด (ออนไลน์/ต่อไม่ติด/ช่องว่าง) และปุ่มล้างรายช่อง, ผลการสแกนบอกความแรงสัญญาณและมีปุ่มเพิ่มลงช่องว่างช่องแรกให้เอง กันใส่ MAC ซ้ำ, เลือก RS485 แล้วซ่อนส่วน BLE ทั้งหมด. สถานะช่อง BLE อ่านจากข้อมูลที่บอร์ดโพลอยู่แล้ว ไม่แตะวิทยุ เปิดหน้านี้ค้างไว้จึงไม่รบกวนการเชื่อมต่อ BMS. รุ่น ESP32 คลาสสิกยังรองรับ BLE 3 แพ็คเท่าเดิม (ตัวชิปจำกัดไว้ที่ 3) ส่วนรุ่น S3 เพิ่มเป็น 5 แพ็ค
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
หน้าแรก (/) เปลี่ยนการ์ดตัวเลขเป็นวงแหวนเกจ 7 ตัว แบ่ง 3 ชั้นตามความสำคัญ (ขนาดและสีฐานต่างกัน ทุกชั้นเปลี่ยนเป็นเหลือง/แดงเองตามเกณฑ์ของค่านั้น): ชั้นวิกฤต = Heap ว่าง (มีขีดแดงบอกจุดต่ำสุดที่เคยเจอตั้งแต่บูต) และ WiFi RSSI · ชั้นสำคัญ = สุขภาพลูปหลัก และบล็อกหน่วยความจำใหญ่สุด (บอกอาการ heap แตกกระจาย) · ชั้นทั่วไป = พื้นที่แอป, PSRAM (เฉพาะบอร์ดที่มี) และ BLE RSSI รายสล็อต. วาดด้วย SVG ในหน้าเว็บล้วน ไม่มีไลบรารีภายนอก และยังใช้ /info ตัวเดิมที่โพลอยู่แล้ว จึงไม่เพิ่มภาระให้ BMS/MQTT. เพิ่มตัวนับสุขภาพลูปที่ทำงานในบิลด์จริง (ของเดิมถูกคอมไพล์ทิ้งไปกับโหมดเงียบ) รายงานจำนวนรอบต่อวินาทีและรอบที่ช้าที่สุด
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
แจ้งเตือน Telegram ฉลาดขึ้น: กันแจ้งซ้ำด้วย cooldown 60 นาทีที่เก็บใน RTC memory (รอดจากการรีบูตทุกแบบ ทั้งแครช/OTA/reboot รายวัน แก้ปัญหาแจ้งข้อความเดิมซ้ำตอนบอร์ดเพิ่งรีบูต) + ทุกข้อความมีลิงก์เข้าเว็บดูสดต่อท้าย. เพิ่ม auto-reboot บำรุงรักษาวันละ 1 ครั้ง สุ่มเวลาช่วง 00:00-05:00 (เวลาไทย) ปิด MQTT อย่างสุภาพก่อนรีบูตเหมือน OTA. UX ใหม่: ย้าย dashboard BMS จาก / ไป /bms (ป้าย "BMS Status") แล้วสร้างหน้า / ใหม่แสดงสถานะบอร์ด (heap, uptime, reset reason, WiFi RSSI, ชิป/CPU/flash, MQTT, BLE RSSI ต่อสล็อต) โพลทุก 7 วิผ่าน /info เดิมที่ขยายฟิลด์ ไม่เพิ่มโหลดระบบหลัก + ปุ่ม BMS Status ใหญ่ชัดเจน
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
เพิ่ม auto-OTA: ตรวจ manifest เองทุก 1 ชั่วโมงจาก loop() และอีกครั้งตอนบูตทันทีหลัง WiFi ต่อติด (ก่อนเริ่ม poll BMS หรือต่อ MQTT) — เจอเวอร์ชันใหม่ก็ดาวน์โหลด+แฟลช+รีบูตเองไม่ต้องกดปุ่ม. ก่อนเริ่มดาวน์โหลด (ซึ่งบล็อก loop()/mqttLoop() ทั้งช่วง) จะ publish สถานะ "offline" แบบ retained แล้วตัด MQTT ทิ้งก่อน กันไม่ให้ broker เจอ last-will ชนกับตอนรีบูต. ปุ่ม Check/Install บนหน้าเว็บยังทำงานเหมือนเดิมทุกอย่าง
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
MQTT family baseline ร่วมกับ ESP32-S3: Home ใช้ /data แบบเบาและโหลด Cells เฉพาะ /data?cells=1, ใช้ bmsgo.local พร้อมกู้ mDNS เมื่อ WiFi/IP เปลี่ยน, Main loop ลำดับ A WiFi+mDNS → B BMS/config/Pack → C MQTT/Web/OTA, รักษา Gen2 Settings และ Telegram alerts ของ ESP32, OTA manual-only
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
แก้หน้า Home ไม่ให้คิว request ทับจน MQTT หลุด: /data ทุก 3 วินาที และ /info ทุก 5 วินาทีแบบ single-flight; WiFi/MQTT ทำงานก่อน WebServer; OTA ตรวจเฉพาะเมื่อผู้ใช้กด Check หรือ Install; ทุกหน้า Local ใช้ header สีเขียวและเมนูเดียวกัน
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
MQTT realtime + auto-enrollment + เขียนค่า BMS ครบ (สายหลัก)
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
MQTT realtime + auto-enrollment + full config BMS
โปรดเลือกไฟล์ให้ตรงกับรุ่นอุปกรณ์ และอย่าปิดอุปกรณ์ระหว่างติดตั้ง
ใช้ปุ่มดาวน์โหลดหลักเมื่อติดตั้งอุปกรณ์ใหม่ และใช้ไฟล์อัปเดตเมื่อได้รับคำแนะนำจากผู้ดูแลระบบ