问题
I have a stupid idea. With android is simple to get battery state (volt, charge, temperature, ecc).
BatteryManager.EXTRA_TEMPERATURE
I think that the sensor is located inside lithium battery pack, in fact there are 3 pins over it connecting to the phone. Maybe that one of them is the battery sensor temperature. How it works? It's possible, but i know that damage may be relevant, isolate that pin and connect the phone pin to an external sensor?
So we can catch outside temperature using battery manager....without using Google IOIO or Arduino just for reading a temperature.
THAT'S ONLY FOR STUDY INFORMATION! PLEASE DON'T TALK ABOUT DANGER OF LITHIUM BATTERIES...
Thanx a lot!
回答1:
In theory, yes, but the battery temperature is critical in the charge/discharge cycle of the phone. Phone batteries charge by applying a constant current to the battery. When the phone is charging the battery temp will rise (a byproduct of mixing electricity with chemicals). If it rises too far, the battery will fail (and could [in theory at least] explode).
Thus the phone's charging circuitry needs to monitor the battery temp so if it rises beyond a given threshold it backs the charging current off until the temperature stablises, ensuring the battery remains within safe limits.
In other words -- if you do override it, do so at your own risk.
回答2:
Yes, the temperature sensor is located inside the battery pack. The standard setup is a 103 NTC (negative temperature coefficient) thermistor to ground. The 103 means that is has a 10K resistance at 25C.
Yes, you can measure ambient temperature using this. It may read higher if the battery is either charging or discharging (as the battery will get warm). It will respond fairly slowly to environmental changes due to the isolation and thermal mass of the battery.
来源:https://stackoverflow.com/questions/7713415/android-hardware-battery-temperature-where-is-the-sensor