Introduction: Coilgun Without Massive Capacitors

About: Passionate maker

Coilgun is like a slingshot from the future. Whilst it's kind of useless it's a lot of fun to play with. I'm going to show you how to build one without using huge and expensive capacitors. My design powers coils directly from batteries and yes I mean coils since you can add as many as you want to make it more or less powerful.

Be sure to check out the video I made. There are many details but more importantly TESTING at the end. I mean shooting stuff. It's the same thing when you're building a coilgun :D

I'll be going into details of the electronics here but I'll not be making any fancy case. That will be my future video so subscribe if you want to see that. For now my coilgun is taped to a scrap piece of wood but hey, it works.

Step 1: Materials

These are some of the materials and tools you'll need. Nothing special except for the 3D printer but It not actually necessary. It just make building it easier. Also these quantities are for 2 coils so you might adjust depending on how many you'll be making.


  • drill
  • dremel
  • handsaw
  • soldering iron
  • 3D printer (optional)


  • 0.8mm or 21SWG enameled Copper wire
  • arduino nano
  • infrared LED and infrared phototransistor
  • resistors:
    • 2x 330R
    • 2x 680K (may vary)
    • 10x 10K
  • 2x 1n4007 Diodes
  • 2x IRF3205
  • LM358
  • step up converter - XL6009 in my case
  • XT60 connectors
  • Li-po battery - at least 6 cells recommended. Must handle at least 40A.
  • 10mm outer diameter and 8mm inner dia. plastic tube
  • 8mm or 7mm steel rod. Must contain a lot of iron so it is ferromagnetic.

Step 2: Making Coils

The first thing that needs to be made are the coils. After all we are making a coilgun. The make my life easier I made this 3D tube to help me wind the coil. You don't need it but it's quite convenient. The coil is 28mm long and has 6 layers. If you have the 3D model there is a hole where you guide the wire in and and twist it around the pole. That way you can pull on the wire really hard and as you twisting the tube the wire should sit exactly in the ridges. Once you're at the end you'll just need to guide the wire in the opposite direction. From now on you'll also need to try keeping the winding as close together as possible as they will act like a spring.

Once you finish all 6 layers you can drill another hole for the wire and tie this and around the pole to keep it in place. If you don't have 3D printer then you'll have to figure this out on your own :D.

Step 3: Infrared Sensor

To detect projectile being exactly in the center of a coil we are going to use infrared sensor. It's just an infrared LED and an infrared photo transistor. We can detect light coming from the LED with the photo transistor and whenever a projectile blocks the light we know it's position. If you have the 3D model I provided you also have a convenient place to mount the sensor. It needs to be wired according to the schematic. I wired everything just hanging in the air since it's only couple of resistors.

You might need to adjust the value of your resistor to calibrate your sensor. It is explained in the video quite well at 4:20 :D

Step 4: Driving Coils (MOSFET)

To toggle the coils we'll using MOSFETs. IRF3205 to be exact. Since this will be handling high current I recommend using perfboard or some PCB. Regular breadboard isn't going to hold up. Even if you are using perfboard or PCB make sure to tin the tracks as even a thick track might not handle the current or act as a resistor. If you've the video then you know how it can just blown up. Refer to the schematic when soldering. You can also find eagle files if you want to play with it. For the battery I suggest soldering XT60 connector directly to you board.

Step 5: Comparator

Since we need 20V to trigger our MOSFET we'll use comparator to take 5V signal from Arduino and turn it to 20V. Let's start with the voltage. You'll need step up converter to create these 20V. I'm using XL6009 which is a really cheap one but also a bit bulky. You can use any step up converter that can boost 5V to 20V since we aren't drawing almost any current all from it. Since this is adjustable converter I'll set the output to around 22V since the comparator will drop about 2V.

With the converter connect we can finally connect our comparator. I'm using LM358 but you can use LM324 which has more comparators or any other really. Once again I'm providing the schematic and it is really simple. This one can be on bread board with a problem.

Step 6: Arduino Setup

This project like many others is using Arduino even if it might not be necessary. The Arduino Nano is powered separately by a USB cable using either power bank or wall adapter. You can of course just connect step down converter to the battery and get 5V but I didn't bother. Apart from the power cable there are sensors connected to A0 and A1 pin. First coil being A0 and second A1. Lastly the coils or rather the comparators are connected to digital pin7 and 8. Again first coil being 7 and second being 8.

The code doesn't do much. I starts and sets up which pin is output and input. Then it waits for 2 seconds. Afterwards it fires the coils. If no projectile is detected within a second. the system stops and if it successfully shot projectile it also stops. To fire again you need to reset the Arduino. This why I suggest putting pull down resistors on D7 and D8.

You may also need to change your analog readings to better match your infrared sensors.

void setup(){
pinMode(13,OUTPUT); pinMode(7,OUTPUT); pinMode(8,OUTPUT); digitalWrite(13,LOW); digitalWrite(7,LOW); digitalWrite(8,LOW); delay(2000); long startTimer = millis(); long timer= 0; while(analogRead(A0) > 50 && timer < 1000){ digitalWrite(7,HIGH); timer = millis() - startTimer; } digitalWrite(7,LOW); while(analogRead(A1) > 50 && timer < 1000){ digitalWrite(8,HIGH); timer = millis() - startTimer; } digitalWrite(8,LOW); digitalWrite(13,HIGH); } void loop(){ }

Step 7: Last Details

I Just want to go over couple of this I haven't mentioned yet. You can power this coil gun with a power supply but they are usually very limited and you wouldn't be able to make it portable. I'd suggest using Li-po batteries. I'm using 6 cells and if you've seen the video it does some damage but it isn't anything spectacular. With more cells you could do more. Just make sure it can handle the current. You don't even have to use 6 cell battery. I got two 3 cell ones and connected them in series.

Another thing to look out for is the heat sink on the MOSFETs. I would suggest using one but make sure you use separate heat sink for each MOSFET otherwise you'll be switching all coils at once.

Finally this is still work in progress. Mechanically and electrically it works but I'll be making 3D printed enclosure and sorting out every details of the gun so if you want to see that subscribe to my YouTube channel as it'll there the soonest. If you have any questions or suggestions leave them n the comments. I read them all :)