I have a custom PCB where I implemented BMS system based on TP4056 from a 5V regulated solar power source. Everything works as expected regarding battery charging and output but I am encountering a special case when if power source isnt connected before the battery, for some reason, battery (-)ve drops to less than ground (ie -2.8 volts currently) and battery (+) has remaining 0.5-1v. Soon as Power is connected from either solar/bench supply battery negative reference becomes the same as ground reference of PCB.

I compared the voltages to before and after power is connected and have them shown is the attached schematic as yellow and blue fonts. In the TP4056 with protection circuit I have from Aliexpress/amazon, battery negative is always the same has Circuit Ground, and irrepective of when the power is applied.

What I can see based on voltages is :

  • on DW01, pin 1(OC), and pin 3(OD) somehow split the total voltage of the battery between them, compared to when power is connected, and both have the same potential.

Right now I am clueless as to how to ensure battery negative reference is the same as ground reference of the PCB.

As a Side note, I have attached the later 1 and layer 3 pictures of the 4 layer pcb. Layer 2 and layer 4 are grounds. Circuit Diagram PCB Board Stackup

  • 1
    \$\begingroup\$ Sounds like the protection switch is disconnecting the battery. Perhaps it detects undervoltage while you are connecting the battery? Then it has to disconnect to stop you charging a completely flat (0V) battery. As I understand it, these things are supposed to remain connected to their cells ALL the time. \$\endgroup\$
    – user16324
    Feb 27, 2021 at 13:10
  • \$\begingroup\$ I looked at the TP4056 chip I bought, and they always seem to report the battery voltage at the output terminals, irrespective of the presence/sequence of power. So could it be a different TP chip as there seems to many variant? \$\endgroup\$
    – Amogh Jain
    Mar 1, 2021 at 1:57

1 Answer 1


For other people, in case you have B- and out- not being the same, and all else wokring, please note that I found the solution (or rather what I was doing wrong!). Problem was B- referencing the wrong voltage due to C14 negative leg being connected to the B-, where it is supposed to be ground. Now that C14 negative is connected to ground, every single time, output voltage is the battery voltage! No more is power required to be connected first!


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.