Using an Arduino to switching a grounded load powered by a 12 Volt supply
In your existing arrangement.
Swap to P Channel FET
Swap drain and source leads (right hand two).
This will work for up to 5V feed to LEDs.
To get 12v operation you will need to add a driver between the FET gate and the Arduino.
see circuit diagram below.

To operate with FET on the HIGH (V+) side when V+ is greater than the rduino's supply voltage, the FET must either

Be P Channel with FET source to +12V and FET drain to load+ or

An N Channel with gate drive above V+.
The gate drive to the FET must go to about +12V to turn it off.
The Arduino will only drive it to +5V.


As you are unlikely to want to provide an extra high side drive the P channel option is preferred. This could be eg:

A &quot;jellybean&quot; bipolar transistor or small FET worth a few cents) and a few resistors, or a small N Channel MOSFET and one resistor

or

An opto isolator.


Transistor driver:
Bipolar transistor NPN (BC337 / BC817 or similar)(ANYTHING NPN will work).
R1 = 10k resistor Arduino out to base.
R2 = 10k FET gate to +12.
If an N Channel MOSFET is used for Q1 then R1 is not needed.
This could be a  5LN01SP IF you can get them - no stock Digikey.These have a very low Vgsth (turn on voltage)
Otherwise you can use a 2n2222, VN2222, BS108 or similar logic-gate N channel MOSFET.
eg VN2222. Many variants of these are widely available and low cost.



simulate this circuit &ndash; Schematic created using CircuitLab