What's New
- Battery charger support (SY6974B) on reTerminal E1002 (V1.2+) and E1004. The device now reports real charging status and detects USB / charger / power-bank power over I²C. As a result these boards stay awake automatically whenever they're externally powered — the manual "disable deep sleep" workaround is no longer needed on them.
Improvements
- Much more accurate battery voltage & percentage on reTerminal E1002/E1004 and XIAO EE02/EE04. Readings now use the ESP32-S3's eFuse ADC calibration plus multi-sample averaging instead of a raw estimate that could be off by hundreds of mV. (Example: a full battery that previously read ~3.9 V / 78% now reads correctly at ~4.19 V / 100%.)
- External-power detection on E1002/E1004 uses the charger's power-good status, so "stay awake while powered" now works with any wall charger or power bank — not just a PC's USB data connection.
Fixes
- reTerminal E1002/E1004 no longer shows "not charging" or an incorrect battery percentage caused by the uncalibrated ADC under-reading the battery voltage.
Notes & Compatibility
- The deep-sleep + USB-power workaround is now only required on XIAO EE02/EE04 and E1002 boards older than V1.2 (which ship the non-I²C ETA6003 charger). Older E1002 units fall back gracefully — charger features are simply skipped.
- After flashing an E1002, the boot log shows
SY6974B charger initialized(V1.2+) orSY6974B not present(older ETA6003 board). - Battery percentage remains ADC-estimated (no fuel-gauge IC on these boards); the calibration above makes that estimate accurate.
Internal
- Extracted a shared
battery_adchelper to de-duplicate the calibrated ADC read across four boards.
Installation
Web Flasher (Easiest)
Flash directly from your browser (Chrome/Edge/Opera):
https://aitjcize.github.io/esp32-photoframe/#flash