I am not sure if this a bug or a feature by design.
If I boot first without plug in the USB-C power, I cannot charge if I plug the power later.
Meanwhile, if I plug in the power before power-on and booting the system, the system is being charged.
There is some information about this issue here:
I have tried 2 USB-C power adapters. One is Anker and will only start charging when the Pocket is off (and remains charging after power on). Another is a Lenovo/Thinkpad adapter that will charge the Pocket even when plugged after the computer is on.
Do you have the model for the Lenovo charger on hand? My charger block from crowd supply definitely does not charge the pocket while it’s turned on – I have to power the device off first to get a charge.
I’ll acquire a Lenovo x1 usbc charger then and see if i get any behavior differences
I can throw another charger in the ring that works really well and will charge whether the Pocket is on or off. It is the Purism Librem 5 adapter. Don’t buy it from them, because the current one they sell is not the same one I have, and I don’t really trust Purism anymore these days. What I am kind of getting at is, if you can find a cheaper no name USB C power adapter it has a high chance of working.
I have a Framework 65w power adapter as well, that will only charge when the Pocket is off. I’m sure improvements to the BMS firmware will resolve this though.
I have a working solution by recommendation from another thread in the form of the UGREEN 65W USBC charger.
Still going to try the x1 charger if for no reason but to build a confirmed working list.
Cable is a 100W Anker braided usbc cable.
Doing some debugging of the pd communication and reading the fusb302b datasheet I think the problem is now known - the fusb302b chip is not detecting the connection of a charger when the pocket is turned on because the USB VBUS on the pocket side is powered by default.
Why this blocks some chargers and not others is not clear to me - maybe the charger and pocket are then fighting over the voltage of the line, or some chargers automatically send a packet on cable connect. /shrug The fusb302b depends on a change in the vbus state (among other signals) to trigger PD communication with the charger.
The end result is if you disable the Pocket’s charging port VBUS power in firmware it will charge while the pocket is powered on. At the expense of it no longer being a host port that can power devices. (I tested this and my anker and other brand chargers now charge the pocket while powered on)
The datasheet for the fusb302b documents the behavior for detecting and switching between source/sink mode. The Pocket LPC firmware does not implement this currently, but hopefully someone will implement that (I will try if I have some time).
Thanks to @nanocodebug a fix is brewing (not ready yet, we still have to test it): refactor sysctl firmware and automatic usb/pd toggle (!8) · Merge requests · Reform / Pocket Reform · GitLab