Power Supplies; Measuring Battery - Adafruit Feather M4 Express Manual

Table of Contents

Advertisement

The above shows the Micro USB jack (left), Lipoly JST jack (top left), as well as the changeover diode (just to the right
of the JST jack) and the Lipoly charging circuitry (to the right of the JST jack). There's also a CHG LED, which will light
up while the battery is charging. This LED might also flicker if the battery is not connected.

Power supplies

You have a lot of power supply options here! We bring out the BAT pin, which is tied to the lipoly JST connector, as
well as USB which is the +5V from USB if connected. We also have the 3V pin which has the output from the 3.3V
regulator. We use a 500mA peak regulator. While you can get 500mA from it, you can't do it continuously from 5V as it
will overheat the regulator. It's fine for, say, powering an ESP8266 WiFi chip or XBee radio though, since the current
draw is 'spikey' & sporadic.

Measuring Battery

If you're running off of a battery, chances are you wanna know what the voltage is at! That way you can tell when the
battery needs recharging. Lipoly batteries are 'maxed out' at 4.2V and stick around 3.7V for much of the battery life,
then slowly sink down to 3.2V or so before the protection circuitry cuts it off. By measuring the voltage you can quickly
tell when you're heading below 3.7V
To make this easy we stuck a double-100K resistor divider on the BAT pin, and connected it to A6 which is not
exposed on the feather breakout
In Arduino, you can read this pin's voltage, then double it, to get the battery voltage.
// Arduino Example Code snippet
#define VBATPIN A6
float measuredvbat = analogRead(VBATPIN);
measuredvbat *= 2;
measuredvbat *= 3.3;
measuredvbat /= 1024; // convert to voltage
Serial.print("VBat: " ); Serial.println(measuredvbat);
For CircuitPython, we've written a
function, provide the pin and print the results.
© Adafruit Industries
// we divided by 2, so multiply back
// Multiply by 3.3V, our reference voltage
helper function to do the math for you. All you have to do is call the
get_voltage()
https://learn.adafruit.com/adafruit-feather-m4-express-atsamd51
Page 26 of 183

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the Feather M4 Express and is the answer not in the manual?

Table of Contents

Save PDF