Other Parts Discussed in Thread: TIDA-01556, TIDA-00818, TIDA-01182, BQSTUDIO
Hi there
I have been investigating an unusual problem. I have not found a major issue with our implementation, but have checked all of the obvious things. Our schematic is attached at end.
The design charges correctly, reads correctly, bucks correctly. It has good efficiency (89 - 90%). We have been testing the design with a solar panel (6V / 6W). The problem is when we have a small amount of power available (low light for the solar panel).
The custom board
1. Under low light conditions, our hardware (our own PCB) implementation results in output going to 2.3V, even with battery source provided (3.5V) with no load connected. This is with a little light on the solar panel and the EV2300 USB -> I2C interface sitting on I2C bus. Our MCU is powered from Vsys, once it is powered, for testing purposes it sets the configuration and then sits in an infinite loop (while(1);). With no load on the output the following happens:
- when the solar panel is covered, it results in a stable Vsys output.
- when the solar panel is given more light, it results in a stable Vsys output.
- with an electronic load on the output (almost any load, for example just 2-3mA) it will result in a stable Vsys output.
The scope shot below shows the hand over the solar panel (first half, stable Vsys) and then removing the hand so the solar panel is illuminated by the workshop.
Extracting the following settings:
With hand on solar panel
Immediately after removing the hand off solar panel (getting workshop light)
A short time after the above
Scope shots of SW (= 2.29V DC), REGN (= 4.23V), ILIM (= 20mV), SYS (=2.31V), BTST (=3.73V) are all DC in this state. As mentioned, I can simply add more light or less and it will revert to a stable condition, otherwise it will stay in this state indefinitely..
The following items have been checked:
- Switching waveforms when charging appear normal and regulation reasonable
- All capacitors on PMID are X7R / 25V / 10% / 1206 on input
- 1uF on Vbus (0805, 10%, 25V, X7R)
- output capacitance is 40uF (10V / 0805 / X7R / 10%), with 20uF of it being immediately next to the chip
- Inductor has a rated current of 5.2A, a saturation current of 7A and max DC resistance of 26mR (74438357022)
- All connections are very similar to the evaluation board (generous copper where it matters)
- Analog and power grounds where connected to the same ground plane (identified as potential issue).
I re-routed the analog grounds so they connect at pins 17,18 (PGND). I did this by lifting the components so TS, VREG, ILIMIT ground connections are routed via kynar wire to pins 17,18. This did not change the behaviour.
Troubleshooting
- The power supply used for the 3.5V battery supply has sense leads, generous cable sizes and a Keithley power supply behind it.
- Also tested with a 3.5V battery with short leads with same results
- Checked that the bootstrap capacitor was correct (refitted one with labelled bag from mouser part # CGA2B3X7R1H473K050BB)
Evaluation Board
I decided to check the evaluation board for similar behaviour with the BQ25895 Evaluation board and test with a power supply instead of the solar panel.
JP1 - not fitted
JP2 - /PG + PG
JP3 - short to DSEL
JP4 - short to VSYS
JP5 - installed
JP6 - not fitted
JP7 - not fitted
JP8 - not fitted
JP9 - installed
JP10 - installed
- 5.2V supply, 6mA constant current limit on Vbus w/ 1000uF electrolytic on input
- 3.5V from power supply or battery (2A limit when from PSU)
- No load on output.
- The following configuration from battery management studio
The following trace is given. Note that this behaviour is not in itself incorrect, as it does not drop significantly below the Vbat voltage. Good enough!
Setting FORCE_VINDPM = 0 seems to solve the above problem (sawtooth shape). We do actually want to use FORCE_VINDPM so we can do peak power tracking though (as per TIDA-01556)
When removing the additional fake solar supply on Vbus, it drops correctly and doesn't drop below the battery voltage. Good enough!
Our board (same test as evaluation board)
We can simulate the panel in a similar condition using:
- Hardware as per schematic
- 5.2V supply, 6mA constant current limit on Vbus w/ 1000uF electrolytic on input
- 3.5V from power supply or battery (2A limit when from PSU)
- No load on output.
- The following configuration set by MCU, then goes into while(1) loop. Read settings into battery management studio from I2C bus (same settings used on evaluation board)
The trace shows the device dropping significantly below the battery voltage. Not good enough!
If FORCE_VINDPM is unticked (= 0), then looks stable. Switching on / off the 5.2V / 6mA constant current supply it does not resume to battery voltage gracefully.
What next? Questions..
- Theories as to why it lets the Vsys drop below Vbat indefinitely in this marginal condition?
- The PCB design is a possible cause, since PGND and AGND share the same ground plane - although otherwise it is very similar to evaluation board. ( notice TIDA-00818 does shares PGND and AGND on ground plane). I had modified one board to isolate all AGNDs and connect at a single point, pin 17/18 using wire.
- Possibly improve the connection to ground on C12 (input cap 1uF) or C17 (battery cap 10uF)?
- It mentioned connecting AGND to PGND using the power pad as the single connection point (P55, 11.1 point 4). Is 17,18 electrically different from power pad? On TIDA-01182 17,18 are connected to thermal pad.directly (no via), on the evaluation board they are kept separate and joined through thermal pad vias.
- Larger input capacitor? (currently 1uF / C12, but seems unlikely since PMID capacitance == 40uF)
- Differences in the jumper configuration on evaluation board and our board making a difference?
- I have checked the SW behaviour on the oscilloscope and it looks stable when charging.
- Is there any tuning needed around the bootstrap capacitor? (note 0R fitted R19).
I can take any measurements necessary... Help!
PCB design
Schematic