struggling to find relevant fet

i'm trying to use an arduino to control a 12v supply (using PMW), which is coming from a pc psu. it's for a model railway.

i've tried to use a transistor but it 'leaks', and i realise i need something meatier.

i've never used a mosfet before, and i really don't know how to pick a relevant one. could someone give me a hint?

i usually use bitsbox for supplies as they do low volume:

are there other appropriate methods i should think about instead of a fet?

You need to provide actual information if you want a question like this answered:

What is the PSU current rating - what current does the full load take?

What PWM frequency do you need?

What transistor did you try using and what does "it leaks" mean? What circuit did you use?

You probably need high-side fast switching here to give efficient PWM, which indicates a p-channel MOSFET driven by either an NPN driver (perhaps too slow), or a MOSFET driver (fast, max efficiency).

You need to know the maximum steady load current to work out the power dissipation, using the on-resistance of the MOSFET. Ignore the current rating of a MOSFET, that's irrelevant unless you are water-cooling the device since its an absolute maximum power dissipation parameter in reality. Calculate power = I-squared-R to decide what going to be practical. You might need a heatsink, factor that in.

sorry for the lack of detail.

The normal power supply for the train set is 19v 0.5a (that's what it says on the plug), and the train didn't seem to run any faster than that when running on 12v from the pc psu. i don't know how to measure maximum load.

i used a bc546b transistor, which google tells me is an NPN amplifier transistor, and i also tried a 2n2222a. by 'leaked' i mean that the train ran regardless of whether anything was going on at the gate of the transistor - though it moves slowly.

the arduino is powered from the 5v rail of the psu. pin 5 is used for the gate, and there's a resistor in between pin 5 and the gate pin of the transistor. the transistor interrupts the ground connection.

i have, whilst typing, switched to it interrupting the 12v rail and that changed things. the train doesn't move at all, but does make a noise - which seems to indicate that it's receiving too little power to actually run. so i'm just confused now.

Forget the transistors as they drop too much voltage across them. Use a logic level gate mosfet. This means choose one that is fully turned on at 5v on the gate. That way you have very low R so the current will not cause too much heat. In your use I would not expect much heat as long as the PWM signal is fast turning on or off.

My favourite small mosfet is NTD5867NL. It works with 5v on the gate and handles a few amps with ease. They are cheap. I bought mine from RS Components.


Thanks weedpharma :)

The BC546 is rated at an absolute maximum current of 0.1A, ie normally you'd use a device well below the abs max. You fried the transistor and it became a (low quality) resistor.

If 0.5A is the real max current then any MOSFET with an on-resistance of 0.3 ohm or less will be fine and not need a heatsink. Try and pick a device with enough voltage overhead (say 30 or 40V rated).

This is the sort of circuit for driving a p-channel MOSFET:

just what i need, thanks mark!