baruch / b3603

Alternative firmware for the B3603
GNU General Public License v3.0
65 stars 34 forks source link

Output glitch at startup #3

Closed baruch closed 9 years ago

baruch commented 9 years ago

The output pin means enabled at 0V, when the unit comes online its default for the output control pin is LOW 0V so the output is enabled until the MCU boots up sufficiently to turn the output off, assuming the default is to be off.

This is an inherent limitation of the hardware and there is very little that can be done about it. The best that can be done is to optimize the software such that this glitch is as small as possible and that the output pin is configured and set as per the definition as soon as possible.

baruch commented 9 years ago

It should be noted that the root cause for this issue is that the LM2596 chip has the ON/OFF signal setup such that LOW means ON, so it is the limitation of the underlying hardware and no amount of code can fully fix the issue, only minimize it.

baruch commented 9 years ago

This is currently a glitch of 6 usec so this is as low as it can possibly be. Unless there is a real reason to revisit this I'll consider this issue closed.

baruch commented 9 years ago

FWIW, user flex on the EEVBlog forum made a hardware mod to fix the issue properly by adding a pull up resistor on the output enable pin.

Quote:

One problem with the b3603 is, if you connect power, the output will be on for a small period of time (even if the unit is turned off). This is a hardware bug, and happens because the 5V switching reg is starting up too slowly to disable the LM2596 from the beginning.

Solution: solder an additional pull up resistor between pin6 (easier access tha ~OE) and Vin+ on the bottom board to ensure that the output is off and remove R16 on the top board. This resistor has to be at least 10k, because otherwise you could exceed the absolute max injected current of the stm8 with 40V Vin. I used a 100k resistor. R16 has to be removed, because otherwise we'll get an unintended voltage divider.