BBB battery charging

Has anybody been using the battery backup on the BBB ?

I am noticing that if you remove power that the BBB keeps running just fine.

If you have apci enabled the BBB will shutdown as expected.

The BBB will continue to draw full power from the battery. Ok i can deal
with this and have designed around that in hardware.

But if the battery discharges way down the PMIC cannot seem to revive
the battery when DC power is reapplied.

Does anybody know where the code is that sets the PMIC charging current ?

Is it even enabled ?

Thanks in advance.

Page 41 of the datasheet, looks like registers 3-6. Although I have not read in details what the function of those registers are. This should be fixable through custom software, but I’d have to read in greater detail to understand what must be done, and what should be checked for before manually setting the charger bits. Or even if it is even a good idea to do so.

I’m a bit leery about writing to the actual registers of the PMIC, but only because I have no hands on with that.

So I did some searching on this because I am interested in this as well. I figured that the PMIC driver in the kernel would or should be responsible for this if such support existed. So I read through the source file here: , and came to the conclusion that battery charging was not “supported”. Afterwards I found this: which seems to confirm my belief that battery charging is not supported in the kernel driver.

Anyway, it seems as though that if someone wants battery charging to work “flawlessly” they either have to rewrite the kernel module to support this feature. OR I do believe it should be possible to write a userspace application, or script that communicates with the tps65217c directly via the i2c bus, where it is connected. To manually “twiddle” the register bits.

I would have to experiment with this myself to confirm that anything I think may be possible. Actually is possible.


william@beaglebone:~$ cat /sys/bus/i2c/drivers/tps65217/0-0024/tps65217-charger/power/runtime_enabled

So is it possible to change this to “enabled” ? If so what are the consequences ?

cant hurt to try enabling it

I see nobody uses the battery on the BBx boards ?

I am not an expert on this but it looks like you have looked at the
wrong driver.

You may have a look here:
The low-level driver you have looked at is used by this.


Thats the regulator driver.