Reggie is a simple tool to playfully mock unintuitive door design. Make your own. Carry one with you, and then when you encounter such a door, slap it on! Doors labeled with a "push" or "pull" sign typically highlight use cases.
Reggie uses a sonar to measure distance to an object in front of it. The blue LED indicates when Reggie measures a barrier within 12 inches or less of itself. It then triggers one of two pins on the FX Sound Board that play either a "push" or "pull" sound effect, depending on the user's intention. This tutorial assumes that you are already familiar with Arduino components and basic circuits. If you need a refresher, please visit this tutorial before beginning.
Step 1: Gather Materials
To build your own, you will need:
- 1x speaker
- 13x wires
- 1x 10mm LED
- 2x breadboards (preferably 2x Breadboard Mini Solderable)
- 1x Arduino Nano
- CH304 Nano Driver
- 1x Audio FX Sound Board WAV/OGG 16mb
- 1x Ultrasonic Sensor – HC-SR04
- NewPing Library
- 1x 3M double-sided wall sticky
- 1x battery supply
- and a form to keep it all together. Here I’ve cut up a plastic container.
Download the NewPingLibrary. This allows you to interact with your Ultrasonic Sensor HC-SR04.
Check the underside of your Arduino Nano. The one being used in this tutorial is a CH304, corresponding to the CH304 Driver. Download it here.
Step 2: Wire the Circuit: Sound Board
Above is a picture of the complete circuit. Let's focus first on the FX Sound Board, which is on the right breadboard. This is where you select your two pins for the "push" and "pull" sound effects. Only one pin is wired here (Pin 2), and so only one sound effect can play. You can have as many sounds as there are pins (taking into account storage capacity of the sound board. The one being used here holds 16mb. The alternative holds 2mb). Just connect the sound board to your computer using a USB to mini USB cable, then drag and drop files onto it. It's that simple!
To format audio file(s) on the sound board like the example, convert your audio file to a WAV. Then rename the file according to the pin on the soundboard that is programmed to output. For this project, I've formatted my sound board file as such: T02.wav .Accordingly, 02 is the pin number.
Just make sure to read over Adafruit's information page for the Sound Board. It contains formatting criteria and information for this particular device.
Step 3: Wire the Circuit: Ultrasonic Sensor HC-SR04
The ultrasonic sensor, otherwise known as a sonar, is located on the left breadboard. It has four pins, and so there are four things you need to remember. VCC pin goes to power, Trigg and Echo go to Nano (here they connect to pins A2 and A3 and each is programmed in the code), and GND, which connects to ground on the breadboard. Visit HowtoMechatronics for an introduction to the sensor here.
Step 4: Upload the Code
There are some explanations in the code to make more clear what it is doing. Upload the code and play with the trigger distance of the sonar. I've indicated in the code where you can adjust values to affect the interaction with the sonar and the sound board.
Step 5: Shape the Experience
Ok, you've made it this far. Now's the fun part. My capsule is pretty basic/ sketchy. I have no doubt that you can do better. So do it! I challenge you to use solderable boards to make the parts more compact so you can make a more intuitive form and device. This will greatly increase the satisfaction of the experience of tagging a Reggie on a door. I'm thinking the smaller the better. But I'd love to see your interpretation or ideas about how to make Reggie more user friendly and impactful. Please share in the comments. Thanks for reading and thank you in advance for your suggestions!