Aside from the smaller "5-minute projects" that I do, I also like to do a bigger, display project each year to take to shows like MakerFaire UK and MakeFest Liverpool and Manchester. Last year's was the internet connected train set. This year, it's a full blown foam dart range, with scoreboard, countdown timer, RFID registration and a build-your-own lasercut challenge on top!


Outside of those events, the range and the train set are available for installs elsewhere. Please contact me if you'd like to see either at your event.


I've previously seen piezo sensor based approaches for hit sensing. Similar to knock sensors; but foam dart sensor specific such as Reactive targets for Airsoft and NERF™; which uses an earlier signal conditioning design (archive.org link)

While I had been planning on doing a smaller range as a DoES Liverpool project (a makerspace filled with freelancers seems to do fewer group projects compared to hackspaces peopled by hobbyists), it all got a little out of hand after two symposia in one day.

With a lunch time UK Maker Belt Association (UKMBA) lunch (in a pub) and an Open-Source Hardware User Group (OSHUG) event in the evening, followed by going to the pub afterwards, and it all culminated in a challenge to build laser cut device to fire foam darts, ping pong balls or ball pool balls called the Mega Fun UK Lasercut Challenge (MFUKLC) where all the entries had to be open source.

That gave me both a deadline to finish, and a challenge to create a range that could cope with recording up to 10 hits per second, per sensor for a 30 second period.

Designing the Hardware

This might give you a nice idea of how we approach a project normally. As a first step, I needed to break down the big goal of "make a nerf range" into a number of smaller areas and tasks that I can do one-by-one to build up to the whole at the end.

First up was outlining the electronics and control structure.

You might notice chief noise-maker of .:oomlout:. with me in the video!

The result of this planning was then a series of modules communicating by serial, which would be controlled by a central, control module.

  • Control Module — Arduino Mega (for multiple serial ports) listening for the RFID reader, start button press, and running the status light in the button, sending commands out to the others, and reading results.

  • Target Module — An Arduino Mega (for the number of ports) that makes quick scans across the 16 piezo sensors to count any hits, record the data locally to SD card for analysis later, and count the score to return to the control module.

  • Timer Display and Scoreboard — 3-digit and 6-digit LED displays respectively (using Matt Venn's big-7-seg displays) that will display a countdown or show the score. Using almost identical code, these displays can display static figures or 1/10 second countdown depending on how they are instructed.

  • USB Serial — to allow the control module to report the score (and RFID identifier) back to an external computer at the end of each go, so that can be sent automatically tweeted to the competitor.

Controller Layout 7 Controller Layout

Open Source

Unlike some projects that claim to be open source "at some date in the future", the files for the range and the entries for MFUKLC are all available right now at github.com/DefProc/mfuklc/tree/master/range under MIT licence. You can recreate any and all of the parts of the range, control module, enclosures, circuit boards, entries, etc. as you like.


Just to point out that although the range was specifically designed to use Nerf products (and we use Nerf Jolts for competitors) it is not affiliated with Nerf or Hasbro in any way, and is not limited to Nerf products. It works equally well for any foam dart weapon, for even ping pong ball or ball pool balls!