BB Gun, shot counter?

I am planning on using an Arduino nano (clone or similar) but am struggling to figure out how I can use a proximity sensor or other method to count shots fired...

Am not sure if I could use IR, as don't know if it will detect a break at the velocity the BB's will be getting fired at..

When I get something put together am planning on mounting a nokia 5110/3210 in the butt so is visible, maybe a laser range finder etc..

Any ideas would be much appreciated

sort by: active | newest | oldest

At a fast BB traveling at 550 feet per second or more an IR will work with ease here is an Instructable of a counter I designed for a coil gun.

If you want to count by numbers change the Johnson counter to a binary counter and add a LED display.

The only thing I would suggest is running the IR through a pinhole box to block stray IR.

A pin hole box is just a tube with a drill hole through it the IR LED at one drill hole and the IR sensor or transistor at the other drill hole the BB passes between the IR beam and the sensor breaking the beam without stray IR interfering with the signal.


sparks_vfr (author)  Josehf Murchison3 years ago

Excellent Josehf, thanks for the info and link, will get something put together and see what happens :)

As you are building remember:

Photo components are capable of tracking objects traveling as fast as mock eight.

Whether you are using a pellet gun or a BB gun they work with compressed gas and when the gas expands it creates a mist because it is absorbing the heat around it. The mist can interfere with your photo components if you don’t have a vent between the muzzle and the photo components.

I do a lot of research with ballistics.

sf49ers3 years ago

Just askin, can you not count that high?

what kind of bb gun are you planing on using?

You are not limited on counting the bb as it exits down the barrel, you can count it as its in the magazine.

Unless Misfires are a big problem you could also attach a vibration sensor to the barrel or to the action of the weapon. It wont mess up your trigger pull or anything.

sparks_vfr (author) 3 years ago

The problem I can see with both trigger and clap circuits would be missfires, both would be counted.

I'm thinking something like


and make something looking like a silencer, with a tube inside a tube, small hole opposite each other with the emitter on one side and the receiver on the other and hope that it will be able to catch the beam being broken when the projectile goes through.. I can get a rise/fall time of 10us which am hoping will be quick enough..

An IR beam could work but your circuit would have to be pretty responsive to pick up the break in the beam at the speed a BB gun fires! using an arduino may not be quick enough to detect it. You may have to consider using a dedicated micro at those speeds.

Another consideration would be the spread of the beam, you would probably have to use lenses or some other method of making the IR LED into such a narrow beam to pick up a BB travelling through it.

It may be worth having a look at a low power laser diode? it could be used on the same kind of receiver circuit but gives a much narrower spread of light.

RavensCraft3 years ago

Modify the trigger to also act as as switch and count trigger pulls instead.

Use a simple clap circuit. The sensitivity of the mic can be set high enough so that the mic has to sit on the gun to pick up when the shot if fired. Rather than outputting to an LED it can trigger the arduino to keep track of the count.