How to check Battery Charging Status

To make a more accurate battery energy gauge, you need to fully charge and fully discharge the battery one time at least.
This full charge-discharge cycle will automatically calibrate the energy flow calculation coefficient values.

  1. How to check battery charging (1) - Auto Test Mode
  2. How to check battery charging (2) - Probe components when booting fails
  3. Charging Animation

You need Recovery Image V1.4 (2020/12/07) or later version to diagnose Battery & Charging Logic correctly.

Please refer to this wiki page to check the version of recovery image.

You can enter ODROID Auto Test Mode when you turn on board power while holding down Trigger Left 1 and Trigger Right 1 buttons at the same time.
And then Battery & Charging Test Mode runs firstly and the following display shows on LCD screen.

  • Charging Online Case With DC Jack Connected

  • Charging Offline Case Without DC Jack

(1) Battery Connection

When BATTERY of OGA/OGS is connected normally,

  • BATTERY : Connected

or if a normal battery is not connected,

  • BATTERY : Disconnected

(2) DC Jack / USB-C type Power Jack Connection

When DC Jack or USB-C type Power Jack is connected & charging power is supplied,

  • DC JACK : Connected

or no connection,

  • DC JACK : Disconnected

(3) Charging Online

If charging is currently in progress,


or not,

  • CHARGING STATE : Offline

(4) Battery Voltage

This shows battery voltage value in mV unit.

  • e.g) BATTERY VOLTAGE : 4100 (mV)

(5) Charging Current

This shows charging current value in mA unit.
If DC Jack is connected & charging is in progress, it's expressed as a POSITIVE value.

  • e.g) CHARGING CURRENT : 700 (mA)

Or, if charging is not in progress, a NEGATIVE value (system current consumption) will be shows,
and it's normal operation.

  • e.g) CHARGING CURRENT : -420 (mA)

If there is no HW issue of DC Jack, OGS/OGA board runs booting automatically from power off status once DC Jack is attached to the board,
and then, PWR LED turns ON.

If PWR LED keeps off and you don't see anything on LCD screen,
please make sure to insert the charge cable enough until you feel clicking and check your power source.

(1) Check Power Source


The ODROID-GO Advance can charge the battery with a 5 volt PSU (Power Supply Unit) only.

If the PSU output voltage is 9V and 5V dual-type something like this QuickCharge stuff, it will not charge the OGA at all since the negotiation protocol doesn't work.
There will be no light from the LEDs on the board if the voltage is higher than 6Volt.

(2) Normal Booting Scenario with DC Jack Connected

  • Remove SD Card to boot from recovery image in SPI Flash.
  • Connect DC Jack to your board.
  • If there is no HW problem, board boots automatically and you can see charging animation on LCD screen.
  • PWR LED (red) and ALIVE LED (blue) turn on.
  • CHR LED (red) blinks, on ↔ off, periodically.
  • In 5 seconds, CHG LED keeps ON and then, LCD goes OFF after system enters suspend mode.

(3) Normal Booting Scenario without DC Jack Connected

  • Remove SD Card to boot from SPI Flash (recovery image).
  • Press Power Button to boot system.
  • PWR LED (red) and ALIVE LED (blue) turn on.
  • CHR LED (red) keeps OFF in this case.
  • Once booting is done, you will see NO SD CARD error message on LCD screen.
  • In 5 seconds, system turns OFF automatically, and all LEDs & LCD go OFF.

(1) How to check battery HW faulty

If there is no HW issue of Battery and related HW logic, you must have the result as described in the previous section, DC Jack Issue - Normal Booting Scenarios.

This section describes how system goes when battery is not connected to the board.

  • Remove SD Card to boot from recovery image of SPI Flash.
  • Assume that battery is not connected.
  • Connect DC Jack to your board.
  • Then, Board boots automatically.
  • PWR LED (red) and ALIVE LED (blue) turn on.
  • CHR LED (red) keeps OFF in this case and No charge animation shows.
  • Once booting is done, you will see NO SD CARD error message on LCD screen.
  • In 5 seconds, system turns OFF automatically, and all LEDs & LCD go OFF.

If you get this result even though both of DC Jack and Battery are connected to the board,
please check the battery is inserted fully into the connector.

(2) Battery indicator

Check battery indicator bar on top right side of display.

  • 3.4V (the lowest value) : Empty
  • 4.2 : Full charged

When you get all empty bars, please keep DC jack connected for over 30 minutes,
then it should be updated.
To make sure, push buttons to refresh display.

(3) Debug messages

You can check current battery voltage level from this sysfs node using ssh connection.

$ su
# cat /sys/class/power_supply/battery/voltage_now

This setup will show mandatory battery parameters periodically.

# echo 1 > /sys/module/rk817_battery/parameters/dbg_level
# tail -f /var/log/syslog &

To turn off the log, please change dbg_level.

# echo 0 > /sys/module/rk817_battery/parameters/dbg_level

We recommend OS Image v1.2 or higher version and Recovery Image V1.4 (2020/12/07) or higher version to run the charging animation functions fully.


  1. Off State
  2. DC Jack/USB-C Power Jack is connected, then system boots automatically.
  3. If both of battery and power jack are connected, u-boot enters charging animation logic.
  4. If battery voltage is less than 3.4V, extreme low voltage logic starts. (refer to next section.)
  5. With battery voltage 3.4V or higher value, you will have repeated animation display of battery bars.
  6. Current battery voltage level and charging current values are shown on LCD screen, too.
  7. PWR (red) and ALIVE (blue) LEDs are default on
  8. CHG (red) LED blinks periodically.
  9. In 10 seconds, backlight and display will be off and all LEDs keep on.
  10. Then, systems enters suspend mode. At this stage, the charging operation continues.
  11. By short click of power button, display and backlight is on and animation is shown.
  12. By long click of power button (1~2 seconds), charging logic checks if battery voltage is available to boot.
  13. If the SoC (State-of-Charge) is higher than 5%, u-boot proceeds to kernel boot.
  14. If not, booting will be stopped and u-boot keeps charging logic.

If battery voltage level is less than 3.4V, charging animation logic stays in extreme low voltage logic for charging efficiency.

  1. Start extreme low voltage logic
  2. Show battery fail image and battery/charging current values for 5 seconds.
  3. CHG LED blinks periodically and PWR/ALIVE LEDs are on.
  4. After 5 seconds, LCD goes off and system enters suspend mode.
  5. CHG LED goes off. PWR/ALIVE LEDs keep on.
  6. After 5 seconds, system wakes up and check updated battery voltage level.
  7. When system wakes up, CHG LED blinks again, but LCD keeps off.
  8. If voltage level is higher than 3.4V, extreme low voltage logic exits and normal charging animation starts.
  9. If not, it repeats step 4~7.

  • odroid_go_advance/application_note/battery_charge.txt
  • Last modified: 2023/07/13 11:06
  • by justin