The DM02-2805 buck converter I bought burned and started outputting 24 V instead of the expected 5 V. All the components in my circuit were damaged, but I feel lucky my computer wasn’t, since it was connected to the Arduino UNO through USB. The computer shut down on its own when I saw smoke coming from the Arduino chip. It’s strange, because the converter was only powering one Arduino, two 20k potentiometers, and one display. The project is a strobe light with frequencies in the range of 35 Hz to 90 Hz.
I contacted the vendor, who said the problem probably came from a voltage peak on the input side of the transformer I used. That seems fair — the circuit should have protection against voltage spikes.
While looking into how to do that, I found out that TVS diodes are commonly used. But when I looked closely at my DM02-2805, I saw that it already has a TVS diode on the board, with a 36 V standoff voltage.
Now I’m not sure how to protect my circuit from future spikes. Would adding another TVS diode even help, or would it just be redundant?
If the power supply is working correctly then you don't need protection against voltage spikes. Do you have motors or other inductive loads connected to the 24v rail?
it is not an official one. Anyway, I should have used a fuse.
you are right, Vin is not proper reference. Can this explain why my buck converter burnt out though?
the load is an array of LEDs, so no inductance here. However, every time I connected my circuit to the 24V jack, I saw sparks. Could it be caused by the 470 microfarad electrolytic cap between the +24V input and ground (which I forgot to show on the diagram)?
Shouldn't make a difference. To prove that the power supply is at fault you need an oscilloscope. Put it in single shot mode and adjust the trigger threshold to 27v. If it never triggers then you know the voltage is always under 27v. If it does trigger then you definitely have a problem.
The failure mode of a buck converter, if the switching transistor/FET shorts, is to present the full input voltage at its output terminals. I found this similar experience to yours with the same chip (MP1584EN): Reddit - The heart of the internet
Using buck converter's 5V instead of Arduino's 5V can burn the buck converter, is there a simple explanation?
Anyway, I bought two of these buck converters and will try again, this time using the Arduino’s 5V as the reference, which makes more sense. But I won’t do anything until the fuses I ordered arrive.
When you have power via USB and Vin at the same time and Vin is greater than 6.6V, the circuits on the board will automatically select Vin as the power source.
Now, if Vin is less than 6.6V, USB will be selected as the power source but the circuits are only designed to handle the case where Vin is disconnected and not just less than 6.6V.
So, if Vin is between 0V and 6.6V inclusive and depending on the voltage levels of USB and Vin, you can have significant current flow from USB to Vin or the other way and that can certainly damage either or both. The barrel jack is protected by a diode so it's best to power the Uno using it.
To be absolutely safe, only have one power source connected at a time.
Yes, a fuse will limit smoke, but will not help with your over voltage problem. For real protection, use a fuse and a crow bar circuit that will blow the fuse for over voltage excursions.