Converting Nintendo 3DS Battery Voltage for Developers

  • Thread starter Thread starter Joel16
  • Start date Start date
  • Tags Tags
    Battery Voltage
Click For Summary

Discussion Overview

The discussion revolves around the conversion of battery voltage readings from a Nintendo 3DS for use in a program. Participants explore the format of the voltage values returned by the device and the necessary mathematical transformations to interpret these readings in standard voltage units.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant notes that the voltage function returns values in an unknown format and suggests a potential conversion formula of 5.0 * (batteryVolt / 256.0), although they express uncertainty about this approach.
  • Another participant emphasizes the role of the analog-to-digital converter (a/d) and questions how the voltage is scaled prior to measurement, suggesting that the maximum reading might be 255 instead of 256.
  • Additional resources are shared by participants, including links to articles about lithium-ion battery charging and battery gas gauges, indicating a search for more information on the topic.

Areas of Agreement / Disagreement

Participants express differing views on the scaling of the voltage readings and the correct conversion method. There is no consensus on the exact formula or the scaling process used before the a/d conversion.

Contextual Notes

The discussion lacks clarity on the assumptions made regarding the scaling of voltage readings and the specific characteristics of the a/d converter used in the 3DS.

Joel16
Hello I need a bit of some help here. I have a Nintendo 3DS and I'm trying to get my program to display its battery voltage. The thing is the voltage function that Nintendo uses returns values in an unknown format, and I don't have access to a multi-meter to get the correct readings right now, so I'm wondering if there's just some math required to convert these units to standard units. (V / mV)

The current information I have is this:


When the charger is plugged into a fully charged 3DS unit, this value will be maximum 0xD1 (209)

Unplugging the charger will make the value go down to 0xCE (206)

The voltage at 5% battery percentage just after the LEDs start flashing is 0xAF (175)

Plugging in the charger at this point will make the voltage go up to 0xB9 (185)Additional information:
The adapter has a voltage of 5.0V
The battery (LiON) has a voltage of 3.7V

Edit:
From what me and a few other developers have gathered is that this magic number may be 5.0. That is, 5.0 * (batteryVolt / 256.0), but we aren't too sure about this.
 
Last edited by a moderator:
Engineering news on Phys.org
It has more to do with the a/d convertor and how the voltage is scaled ahead of it. While it is entirely possible that 255 (not 256) is the max it will read, how was what is being measured scaled down ahead of the a/d? I could measure 10000 volts with the appropriate voltage divider ahead of the a/d with poorer resolution of course than feeding the a/d directly with a 0-5 volt signal. Or, they may have scaled down lower than this for some unknown reason.
 
  • Like
Likes   Reactions: Joel16

Similar threads

  • · Replies 2 ·
Replies
2
Views
2K
Replies
7
Views
6K
  • · Replies 7 ·
Replies
7
Views
6K
  • · Replies 3 ·
Replies
3
Views
12K