Motor not switching with 2N3904
1st : you have to put an appropriate resistor between the output of your arduino and transistor Base pin

2nd : you have to connect you motor and biased transistor to &gt;&gt;&gt;&gt; a suitable power supply (which has enough current (Amps) on it's output)


you can use this circuit instead of yours :


3rd : don't forget to use the diode in the schematic; it protects transistors from you motor coil's spikes you can use 1n4147 ( it depends on the size of your motor but i think, it works for you ( i wasn't successful to take a look at your motor and it's specifications )

4th : ignore the number of transistor, you can use your transistor (2N3904) instead of it

5th :NOTICE : this circuit has a problem, you have to connect appropriate power supply and replace &quot;arduino 5 volts&quot; by the + of your power supply in this circuit schematic


good luck