Okay, so not many of us are going to be called upon to make a giant 7-segment LED timer display for a Ninja obstacle course. But John Park was and he rose to the challenge, documenting his build in the following video and in a beautifully-documented tutorial on the Adafruit Learning System.
John built his giant timer with 12″ number display around an Arduino MO Pro and connected segments of NeoPixel LEDs. He cut the NeoPixel strips into 7 sections for each number so that they correspond to the segments found on a traditional 7-segment display. After assembling the sections into the display panels, he re-wired them in series and controls them through the Arduino. Each digit is controlled by a single data pin on the Arduino.
The Ninja Timer system also includes a start/stop/reset button box for the judges and a stop button on a PVC stand for the contestants to hit. A car horn finish-line buzzer is also built into the system.
John also cleverly used a sprinkler system timer cabinet to house all of the electronics. This cabinet comes with a bunch of pre-drilled mounting holes, a built-in GFCI outlet, and two inside layers (electronics on top, power underneath). This cabinet is the perfect project enclosure for safely housing the Arduino, all of the support electronics, and the power management.
One of the pieces of hardware that John employs for this build is a little right-angled PCB board designed by Tod Kurt. Called a NeoJoint (left), the little boards are designed to make wiring up NeoPixel displays much easier, faster, and neater than using hook-up wire. John fabricated his on an OtherMill.
One of the things I really appreciate about John as a tech educator is that he is always so meticulous, methodical, and thorough in his project videos and tutorials. Even if the project is slightly out of your depth, he carefully breaks down everything you need to know and does a great job in how he presents the documentation. In the intro to the project, he even points out what techniques you will be learning and how these can be applied to other projects you might undertake. So, you most likely won’t be building a Ninja Timer, but you may be called upon to employ some of the techniques used here.
This guide will cover some techniques that are helpful when building a larger project. Fundamentally, this project is the same as simply using a button to tell an Arduino to light up a NeoPixel and beep a buzzer. But sometimes the details of scaling up your project can be intimidating.
Key techniques include:
Diffusing groups of individual LEDs to make unified light sources
Controlling long runs of NeoPixels without introducing signal noise
Addressing a physical strip of NeoPixels as multiple logical segments
Providing separate, integrated power to multiple sub-systems
Creating polarized, modular interconnects between parts
Running robust input wiring over dozens or hundreds of feet