High power load on arduino


I have a question…see picture below… This circuit should trigger a 24 V solenoid with a Arduino…The 5V signal would trigger the BC 547, witch would pull to ground the BC557 that is powered from positive 12 V, and than turn on the IRF540N to trigger the solenoid…I’ve soldered the circuit together and tested it out and i somehow managed to burn TWO mosfets already…Before i try anything else i wanted to ask the…am i doing something wrong…? Is the circuit good enough for such load?

Firstly you probably have some leakage current issues - there's no base-emitter resistor
for the BC557 so it will amplify the leakage current of the BC547 when its off, and this will
create a small voltage across R29, which might be problematic.

Add 1k between base/emitter of the BC557, reduce R29 to 1k or so to reduce this effect -
though that might not be the issue.

You need decoupling on all your supply rails really. If there are spikes induced on the
12V rail they can sail straight through to the FET's gate. Adding a 15V zener as protection
across the gate/source of the FET might be a wise precaution.

Your circuit is unconventional using an emitter-follower for the level converter NPN
stage - here its not a problem as the current is low and its not going to overheat,
but if you were switching more current it could be an issue.

Your fuses need to be on the incoming supply rails and not to ground - one of the scenarios
fuses protect against is shorts to ground - a fuse to ground cannot protect from this, your
supply wiring is thus not protected from overload/fire.

You didn't say what the load actually is - the IRF540N has an on-resistance of 52 milliohms
so at 10A it will dissipate 5W, which will fry it without a mid-to-large heatsink.

[ In electronics / engineering use numbers and units, not adjectives, "high load" could mean radically
different things to different people ]

The load is this solenoid: VS1 DC12V 24V 110V AC 220V 3A 3Kg Open Frame Push Pull Solenoid Electromagnet Actuator| | - AliExpress?

It draws about 10 A and is powered externally with 24 VDC
As I was measuring the voltage, there was going about 5-7V to the IRF540N when the input wasn't even active so there is probably something wrong...How and what decoupling capacitors would you recommend? Will change the fuse to the positive rail.

there's no base-emitter resistor for the BC557

I must admit my knowledge about electronics is quite low and dont know which way the resistor should be?
Could i please ask you to draw a quick sketch on how it all should be...I am very novice

Just for interest, why aren't you simply using a logic level MOSFET from the Arduino pin? No need for 2 extra transistors unless I'm missing something.


I just had the stuff at hand and tried to do it this way..If I will fail i will buy a solid state relay but for now I thought of trying to achieve my goal with this circuit

Aliexpress item

Never seen this one before...seems promising. Thank you!!

Just of curiosity…i’ve found some time to redesign the ciruict and would like someone to check it out and see whether this one would work as it should?
Thank you in advance


Its unconventional, and rather complex, but it should work. You could move to a logic-level FET and lose both transistors....

Thank you very much!

If you stay with this circuit, I would suggest you move R38 to the collector line of the BC547 and add a resistor between D47 and the base of BC547.

This will keep the base current of the BC547 constant and not reduced by whatever voltage would have developed across R38.

This configuration will have a secondary benefit of reducing the possible interaction between the driving device (arduino?) and the power switching circuit.

Yes, basically i have to make sure no voltage can drop across transistors to be amplified and fry the mosfet right? Yes this is exactly what i need, since the load is inductive it cannot leak any current to the arduino, would probably fry it

You didn't say what the load actually is - the IRF540N has an on-resistance of 52 milliohms
so at 10A it will dissipate 5W, which will fry it without a mid-to-large heatsink.

I think you should focus on the above comment . It speaks to your issue directly. That issue being you are
cooking mosfets due to poor heat dissipation due to using a high rds on device with inadequate power
dissipation. You did not post a photo of some massive TO-220 heatsink as an example of your effort to
provide adequate heat dissipation so the absence of such proof is proof that you are not providing
adequate dissipation. If you had, you would be screaming "why is my mosfet frying with such a good
heatsink ?!" (which you didn't)
Just FYI, these days, the only people who use IRF540 mosfets are people who can't get anything else, or just
don't realize that technology has moved past this .
Following are a couple of examples of what's available , from the low end (higher RDS(on) to the high end (lower RDS(on). Obviously , no one expects you to use a 564A mosfet for your application. This example is presented
only to point out the question:
Why use a mosfet with an RDS on of 52mOhms, when even the cheapest latest mosfet is 35mOhms and you could get 0.5mOhms if you wanted to ?

60V/30A LOGIC LEVEL MOSFET (rds on : 35mOhms )
40V/564A N-channel Mosfet (rds on : 0.5mOhms )

Thank you for an extended exaplanation of everything...the only reason i was trying this way was because i had the stuff at hand...i see that it is more like a nightmare over anything else...the chepaest will probably be to buy a premade circuit module from china like Paul_B provided...Thank you all for the knowledge and help

Others might like to help me, but I don't see the point of D35. It is a tiny Zener.
D36 (1N4007) is a flyback diode that protects the mosfet from the reverse voltage/current spike when the solenoid is switched off. Could it be that D35 is fried and hence D36 is therefore not actually connected. That would stress the mosfet. And fry that.
I might mis-understand the purpose of D35 but if I were investigating your fried mosfets, I would personally start there.
BTW - a 1N4007 is a fine diode. But if the solenoid is substantial, then you might need a bigger power diode.

My final thought would be to consider using a relay instead of the power mosfet. Then powering the solenoid from the relay. Yes, I know you are using a mosfet instead of e relay, but in this case a relay might be a better way to do this.

In the basic version of the circuit when i was testing i didnt have the zener diode yet so it couldn't fry it.

About the 1N4007, shoud i really need a bigger one? In the datasheet it states about 30A of current to be no problem, i would be drawing only 1/3 of that current and never for a long period of time so i thought that might not be a problem.

Was thinking about the relays too...but would probably need bout 20A right? just in case..or should the Current spec be even grater?