Ball Game

I finished the first iteration of a Plinko-like ball game I started working on a while ago for my son. It uses printed parts, some plywood, a sheet of Lexan, and a Nerf Rival ball to create a simple combination of pinball and the famous Plinko game from The Price is Right.

The objective isn’t well defined, but the boys enjoy playing with it. A friend suggested replacing some of the peg openings with cups that correspond to score amounts to provide an objective for the player to work toward. I may do that in the next iteration.

Sorry about the video quality–I can’t find my better camera at the moment.

The PRalarm

I have been working on stuff without posting about it this entire time. My latest finished product is the PRalarm, short for Pull Request alarm. It is an Arduino-driven USB device that lights up when somebody pushes a pull request that needs review.

We recently transitioned to this source control pattern at my work, so I decided this device would help me stay on top of reviews better than yet another e-mail alert.

The Arduino is a Teensy LC with a simple “rawhid” program that accepts messages from the PC host. When the device gets any kind of message, it does a three-second lightshow. On the PC side, I just use a cron job that uses the “hub” command-line github client to check the latest PR number and compare it to a hidden file, ~/.pr. If the PR from hub is newer than what’s in the hidden file, or if the hidden file does not exist yet, the script calls a C program that sends one message to the device and then terminates. The script then records this latest PR number back into ~/.pr.

Here is a picture of the device, which is inspired by the git logo. I’ll work on getting a video recorded of the lights in action.