RPiKids | Digital Combination Parental Control

Previously, I described the shutting down of the Raspberry Pi2 with an Arduino here. The next logical step was to add a digital combination pass-code to add parental controls so my kids could not turn on the system without my authorization. I wrote some quick firmware which is currently too embarrassing to post which implement the following features:

  • Digital combination pass-code to turn on system
  • Countdown timer in increments of 10 minutes
  • Unlimited time mode for special occasions
  • Neo Pixel ring to show current timer status


I used the following NeoPixel ring from Adafruit found here

I also designed and printed a holder for the NeoPixel ring to mount it on the front acrylic panel.

I purposely coded in a security vulnerability into to combination lock to encourage my kids to begin thinking about security systems. Currently, you are “kicked out” and have to re-enter the combo as soon as you select one wrong digit. So any adult mind would quickly try each digit for each position and come up with the combo. If they figure it out, they will be rewarded with  the elusive “unlimited mode” for a while before I remove the bug.

2017-03-08T06:53:33+00:00 4 Comments


  1. Mike Smith January 3, 2016 at 12:52 am - Reply

    Hey great work, love the idea! Did you end up having any success getting the combi lock with the Neo pixel ring to work? I’m a teacher in Australia and have built an arcade cabinet using a raspberry Pi with my kids – was thinking this would be a great project to add to our cabinet to power on.. As I’m still pretty new to hardware/coding what things would I need to purchase to do such a setup?

    Best regards!

    • adrian January 3, 2016 at 3:36 am - Reply

      Thanks for the reply Mike. The combination lock works great! It now has a for digit passcode. I was going to post a better video of it’s operation and may still do so. For hardware, the schematic is outlined here You’ll need a few relays, and encoder, a NeoPixel ring, and misc. components. The firmware which runs on the Arduino is not up yet mostly because it’s not very pretty!.If your interested, I’ll post it on this blog entry.

      • Mike Smith January 3, 2016 at 1:41 pm - Reply

        Thankyou for your quick reply! I would love it if you could post the firmware for the arduino 😄 Would any encoder work, is that what you’ve used behind the combination wheel to turn?

        • adrian January 7, 2016 at 3:59 am - Reply

          The Sketch (Arduino firmware) is posted here and I have added the link to a previous post for future visitors.

          I did use an rotary encoder, some of the features of the encoder will be a preference. I chose one with 10 detents so the user can “feel” the selection. I also picked one with an integrated push-button that acts as an “enter” button. You could also just mount a separate button and wire it to the same Arduino pin.

Leave A Comment