USB-DCP-5V-1.5A protocol and Librem 5

You can use any charger you want (as long as it’s compliant with USB specs), but how much power you’ll be able to get from it will vary.

To make things clear, let me describe the way maximum input current gets determined on the Librem 5.

  1. If the charger supports Power Delivery (EDIT: or it’s a non-PD USB-C source that signals 1.5A/3A capability at 5V via resistors on CC lines according to USB-C specs), Librem 5 requests voltage to be 5V and uses whatever current gets advertised for 5V by the power supply. You can check the negotiated value in /sys/class/power_supply/tps6598x-source-psy-0-003f/current_max. The charger included in the box provides 3A at 5V.
  2. If the charger doesn’t support PD, Librem 5 uses BC1.2 to detect whether it’s a dedicated charger. If it detects DCP or CDP port, 1.5A is used as input limit. Note that this is a recent feature, added around two months ago in a kernel update - older kernels would go straight to point 3.
  3. Otherwise, Librem 5 fallbacks to 500mA as input current limit, which may be enough to slowly charge when idle with screen off, but will likely make it slowly discharge while in use, since it won’t be enough to power the phone itself. No other protocols than PD and BC1.2 are being considered there.

PD negotiation can happen early in the bootloader, but BC1.2 happens only after Linux is already up and running, so if you’re trying to boot with completely depleted battery or without a battery at all, using a powerful enough PD supply is strongly advised.

When the red LED starts blinking, it means that the charging has stopped because of battery’s temperature. This is nothing to be afraid of, fast charging can produce plenty of heat and charging will automatically resume once the battery cools down. The cutoff temperature with charging already in progress is a bit higher than when you start charging, so unplugging and plugging the charger back in can make it start blinking - again, that’s nothing unusual, just let it cool down a bit. You can keep using the phone, it will just take longer for it to reach 100% (it won’t discharge).

12 Likes

@linmob, thanks a lot for this kind recommendation of yours! I found power supply you mentioned on eBay.de. It is just that my Librem 5 Wi-Fi was somehow purposely on during charging (even added some “jacket” on top :upside_down_face:), as published here, but otherwise I certainly do agree with your recommendation to turn Wi-Fi/BT HKS off during charging (when possible, especially when the battery rest capacity under 50%).

@cchelak, all above thoughts of mine as recently promised here: A Humble Librem 5 Daily User Review. And to be quite precise here in this post below “numbers” are related to the ANKER PowerPort Atom PD 1 30W GaN:

Anker PowerPort Atom PD 1 might emit up to 5.17V (while Librem 5 gets/receives up to 5.06V toward the end of charging, as voltage registered during the termination process of charging) and that is only “thing” that is not entirely up to my liking (cannot qualify this as bad behavior as wasn’t researching much about), but I wasn’t noticing any problems with this slightly higher voltage (than expected) or it is just that I’m preferring fine calibrated ones up to 5.00V.

4 Likes

May I ask one question?
How to choose a docking station that would be delivering enough power to Librem 5 so that the battery gets charged while at the same time powering devices connected to the docking station like mouse, keyboard, sd-card reader, monitor and so on.
I tried 2 docking stations. One does not deliver picture to the monitor. The other one works, but Librem 5 slowly discharges.

@Hristo the ones from here that negotiate 5V/3A should be good.

2 Likes

And if not from the list, are there any particular specs to look for? Apart from the delivery of 5V/3A. Like some PD or BC 1.2 marking.
And how to know in advance if the display is going to work or not?

That’s not a problem at all; in fact, that’s a normal, wanted and expected behavior that’s well within the tolerance ranges (and it can change depending on load, cable resistance and temperature anyway).

Doing PD 2.0 with 5V/3A and USB-C DisplayPort alt-mode should be all you need. Other than that, we’re entering a territory of incompatibilities because of bugs and protocol violations, so it’s hard to say more without doing tests with an actual device in question.

3 Likes

Thank you for this reply! We really needed to get this very straight/relevant answer.

In addition, yesterday afternoon I just received Anker PowerPort Atom PD 2 with GaN (A2029), heavy duty power supply that looks like it might be the perfect match for both Librem 5 and Librem 14. Cannot say more at the moment but my first impression is that this A2029 doesn’t overheats Librem 5 at all (please read again: just “impression”). Secondly, just by pressing the power button to turn the screen off voltage jumps from 4.948V to 4.998V (and now 5.00015V), this behavior is repeatable (indeed very fine/quiet calibration), by having battery currently at around 80%.

Also, as expected, both USB-PD ports react the same on the same type of load. And those two USB-PD ports are the same ones reused for the Anker PowerPort Atom PD 4 (A2041), and therefore with max. output of 60W. @dos please let me know if there is something that I might/should check (some specific CLI request that I should type toward Anker A2029 as source, perhaps within next week, if not stretching myself to make few photos even today) with this Anker 60W A2029 power supply, while it functions on top of Infineon Technologies CYPD4225-40LQXIT [“Notice regarding compliance with Universal Serial Bus specification. Cypress offers firmware and hardware solutions that are certified to comply with the Universal Serial Bus specification, USB Type-C™ Cable and Connector Specification, and other specifications of USB Implementers Forum, Inc (USB-IF)”]?

Furthermore attaching here three pictures just to show that Anker 30W A2017 indeed supports 20V⎓1.5A but this on the edge “support” needs to be taken into account only if about to power on and off some 30W or rather 25W blinking light and not any laptop battery (as currently my laptop battery at 60% taking out (needs) 20V⎓2A:

You need PD as only with a negotiated PD contract DisplayPort can work. But as was written above you usually can’t see from the labeling how much power it will provide. Once a PD contract is negotiated DisplayPort should work given it’s within the L5s spec (which is driven by DCSS capabilities).

3 Likes

I prefer Anker A2029 over Anker A2017 (compact size isn’t necessarily my preference) several times. So much liking it that already took second place on my power supplies ranking :grin:, those that support only USB-DCP protocol at 5.00V.


Please note on above screenshots that with the less heat produced, from the power supply in usage, to charge Librem 5 BPP-L503 battery up to 4.20V of its capacity, even the time needed to do so decreased some/slightly, I need to check this again, but right now it looks like (to me) for about 5% less time needed (in comparison to some other power supplies used). Termination voltage here, of Anker A2029 charging Librem 5, was at 5.04V. Also please note that testing room temperature was around 23 degrees Celsius (while outside one still raising to above 30° Celsius).

@angus.ainslie, @dcz, @dos, @guido.gunther, @joao.azevedo, @mladen, big thanks to all of you that work and contribute a lot toward further development/improvements of the Librem 5! Thanks Purism Team!

3 Likes

@dos, yesterday (just sharing this with you) I found official usb.org document telling myself (non-expert) that Librem 5 “definitively” and officially complies with what presented inside of it:

Therefore please take a look at slides five and six, at least, within this presentation:

And, making above short:

  • CDP (Charging Downstream Port): A USB port with enhanced charging capability, it has USB data transfer and can supply a maximum current of 1.5 A to the BC1.2 portable device.

  • DCP (Dedicated Charging Port): A CDP without USB data transfer, it can provide 4.75V~5.5V and 1.5A charging current to the BC1.2 portable device, and the DCP will connect the resistor R across D+ and D-.

Both above definitions belong to the GRL Team: https://www.graniteriverlabs.com/hs-fs/hubfs/1-10-768x240.png.

Thanks!

2 Likes

@dos what about powering-BC.1.2 to docking station connected L5? I seeing many issues with Power Delivery and Dock.

Tested bc1.2 with dock it do not worked.
I tested BC1.2 and with Suspend-to-Ram this worked good.

I don’t get the question. If there’s a docking station in between L5 and power supply, then L5 is not involved in any negotiations with power supply at all - it’s only concerned with the docking station, so whatever happens then depends on the station’s firmware.

3 Likes

If someone wonders on how I “know” (before connecting anything to the USB-C port of Librem 5) that chosen power supply will charge my Librem 5, take a look below when recharging some 18650 3000mAh 3.6V based device maximum (1.880A) allowed/accepted load (another 18650 battery might allow higher charging amperage but this would be anyway irrelevant here):

When using device that can indeed take/consume 3.0A at 5.00V:

Very same 5V/3A “end user” (where actually PD 20V recharging preferred) with another 56 kΩ compliant/premium cable used:

Power supply used for this demo is described here: Changes in charging behavior ?!. 12V was connected/used input as my preference here, but 20V input might be used/implemented as well.

EDIT: I’m not using here related powerbank (as having another purpose) with the Librem 5, but anyway (as mentioned above) showing USB-PD port related 5V/3A input (to be clear, as shown above, about here related/presented power supply, from Wondom, max. current output):

Below picture is showing power receiving data from the USB 1A charging port (black one), might be as well the recommended, supported protocol described here, one to be used with …:

2 Likes

I have no additional comment (nothing new to add to the one of my recent posts, last three pictures attached actually):

In addition @amosbatto, below shown power supply might be recommended for any docking station USB-PD port (Librem 5 charging related), yet not preferable from my side (therefore this attachment, to show quite usable power supply that is not my primary choice, while somewhat disappointing “upgrade” done, in terms of supported protocols) for the direct charging of the Librem 5 battery (up to the 5.00V preference of mine), here shown quality brand replacement (looks like it extends powered on usage as well) battery:

1 Like

Just adding this rare table to briefly compare regular charging protocols:

EP-T4510 is the first GaN charger made by Samsung. And it is also the first power supply, that I see, carrying USB-IF Logo:


As published here: https://chongdiantou-images.oss-cn-shenzhen.aliyuncs.com/wp-content/uploads/2022/03/2022031608122698.jpg.

P.S. I do not have one, but owners of EP-T4510 (or even EP-TA845) are very welcomed to provide their USB-DCP fast charge protocol tests here in this thread (just while both of those Samsung power supplies are indeed lacking quite interfering Apple 5V, either 2.4A or 2.1A, charging protocol).

Nice charger the bad it is only 45w maxx. usb-if logo it is very import on p.d charger and cable. I would like buy it.

1 Like

With its 20V⎓2.5A based on GaN (lower charging temperature) and by having Dialog iW9801 as primary-side controller, that provides advanced zero-voltage-switching (ZVS), and having built-in Dialog iW709 as secondary-side USB PD protocol IC, might be just about enough size/speed even for your Librem 14, hopefully :slight_smile: (although if 45W enough power depends on the job done there). Short description is here: https://www.how2power.com/pdf_view.php?url=/newsletters/2108/products/H2PToday2108_products_DialogSemiconductor.pdf.

P.S. I’m not recommending EP-T4510 directly, but if you (or someone else) make charging test(s) with the Librem 5 (as I believe that this technology have some advantages) I’d appreciate.

As you somehow (while I needed some time) encouraged myself to test further 5.20V voltage with my Librem 5, finally I did this:

@dos, thank you very much for everything you do for Purism!


P.S. I needed (or just by having it around, some additional safety related) special USB3.1 cable with built-in E-mark chip, as shown, for this (above USB2.0) setup, but almost everything posted here should be seen as partially irrelevant for here presented output of my own above 5.0V charging voltage focus (as long as I’m not getting some interfering/disturbing electromagnetic frequencies/ripples). And, this is not my permanent nor recommended charging setup (although running it non-stop with my very first Librem 5 phone for several days now).