Seeed Studio XIAO 7.5" ePaper Panel - Battery Status?

I bought the XIAO 7.5" ePaper Panel and have it setup and running nicely with Home Assistant. The one thing I can’t find is how to get the battery status? I’d like to monitor it (preferably in HA) so I know when it needs to be plugged in. I’ve done a bunch of searches, but haven’t found anything yet.

Thanks for any help or pointing me in the right direction.

Hi there,

SO you are correct , Home Assistant (HA) integration with Seeed’s XIAO 7.5" ePaper Panel doesn’t expose battery info by default. But the capability is there — it depends on how the firmware running on the XIAO is configured, and how it’s reporting battery voltage back to HA (e.g. via MQTT, ESPHome, or BLE).

You can add the voltage divider externally and then Analog read say (A3) along this line, and there are some threads here also on this topic.

For an S3,

Use a Resistor Divider from VBAT to an Analog-Capable Pin

Example:

  • Connect VBAT → 100kΩ → Analog Pin (e.g., A0)
  • Connect Analog Pin → 100kΩ → GND

This gives a 2:1 division, so a 4.2V battery reads as ~2.1V at the analog pin.

#define BATTERY_PIN A0  // or GPIO number

void setup() {
  Serial.begin(115200);
  analogReadResolution(12); // 12-bit ADC: 0–4095
}

void loop() {
  int raw = analogRead(BATTERY_PIN);
  float voltage = (raw * 3.3 / 4095.0) * 2.0; // adjust 2.0 if using a different divider
  Serial.printf("Battery Voltage: %.2f V\n", voltage);
  delay(10000);
}

For ESPHome add this YamL

sensor:
  - platform: adc
    pin: GPIO1  # or wherever your voltage divider feeds
    name: "Battery Voltage"
    update_interval: 60s
    attenuation: 11db  # for full range
    filters:
      - multiply: 2.0  # scale up for divider
    unit_of_measurement: "V"

the original question’s answer is "You will not see battery voltage unless their firmware explicitly uses an external voltage divider into an analog pin. Nothing is prewired on the Xiao ESP32-S3-based ePaper board for that.

HTH
GL :slight_smile: PJ :v:

FYI :crossed_fingers:

Board Built-in VBAT Monitor? Notes
XIAO nRF52840 :white_check_mark: analogRead(P0_31) or PIN_VBAT Has onboard VBAT divider
XIAO ESP32-S3 :x: None built-in Must use external divider
XIAO SAMD21 :x: None built-in External divider needed
XIAO ESP32C3 :x: None built-in External divider required

The old BSP for the Nrf52840 Xiao was able to read the battery voltage, check out the old threads on it, I have a demo of it there also.
non-embed and certain mbed BSP’s as well :pinched_fingers:

Thanks for the response! It’s using the ESP32C3, but your point is the same. I was hoping to not have to open the case and mod it, but it sounds like that’s the only way. Maybe they’ll do it with the next release of the product. Knowing the battery status is something I’d think most people would want.

I knew this was a pre-release product when I bought it, so no big deal. It’s not a deal breaker and it will do what I need it to do (display some Home Assistant information). I’ll just have to remember to plug it in every now and then. :grin:

John

1 Like

Hi there,

Yep, You got it… funny though the Wio_terminal they have has a Battery I2C PMIC chip in it, so you can extract all sorts of SOC info like on a cell phone. Battery total capacity and life , fast and slow charge , etc. It surprises me every time these “Battery Powered” or “Wearable” terms are thrown around like one guy I suspect on here at a Ditty Party :sweat_smile: :scream:

Good battery management is almost an art form for these MCU’s along with Deep Sleep as the holly grail.

I’m betting REV 2 will have something for us…battery hawks :+1:

If Seeed is listening and does make the change for v2, I’d love to know what the change is so I can do it to my v1. I’m sure I can find and figure it out from the posts on here, but my free time is limited right now and this will be low on my list of things to research for now. :wink:

1 Like

Hi there,

Yes , So it’s the penny wise and pound foolish with this , a swing and a miss IMO. You see from the schematic :face_with_open_eyes_and_hand_over_mouth: :fist_right: they left us hanging :grin:

the Charge chip ETA9740E8A is also having a 4 LED FUEL Gauge it a LIPO 3A Switching Charger, 2.4A Boost and Fuel Gauge in One ESOP8 with Single Inductor

See , Seeed can always do better :grin: :+1:
From the Data sheet HERE
and the Included reference design 2 resistors and 4 LED’s is what’s missing IMO for the absolute Minimum for a display product like this.
Oh’ and 4 tiny holes… :pinched_fingers:

Curious to get one and crack it open See if just adding a jumper or three :sweat_smile: from the pins on the ESOP8 package to the Xiao socket pins for D6, D7 & D9 “available” …
WoW, someone missed the boat? :canoe:

If they were not , they are NOW!

In Rev 2… I would also try a nrf52840 Sense, Low Sleep power, Let the IMU get in on the action, Wake from sleep & gesture controls… NO BUTTONS :+1:
Use a Plus variety and Enable an ADD-ON Grove EXTernal Sensor capability , We can do Way better…Add an Interrupt pin for the PMIC
maybe as well.

HTH
GL :slight_smile: PJ :v:

1 Like