What can you do with ten buttons and ten lights? A lot.
[Andrew] and [Nathan] found a collection of Hale Research keypads being thrown out, and decided to host the Keypad Contest. The goal of the contest was to create something nifty using the ten buttons and ten lights on the keypad, and an ATtiny2313 that replaced the original 8051-compatible microcontroller in the device.
[Andrew] wanted to try making PCBs with his home-built CNC machine, so he milled out USBtinyISP programmers for the ATtiny2313. Then he gave out eleven development kits to a group, and explained how to develop on the hardware.
After a month of hacking, seven people completed projects. The winner was an internet radio controller, which had the keypad sending serial data to a TP-Link WR703N router. The router used a USB sound card and OpenWRT firmware to stream music. The runner up was a timing game called “Capture”.
The contest write up has details on all seven projects. [Andrew] and [Nathan] were successful in getting software engineers to try hardware with this contest, resulting in some neat hacks. After the break, check out a video demo of the internet radio controller.
Continue reading “The Keypad Contest”
[Teatree] tells a sad, sad story about the lost password for his fire safe. The electronic keypad comes with a manufacturer’s code as well as a user selected combination. Somehow he managed to lose both of them, despite storing the user manual safely and sending the passwords to himself via email. He didn’t want to destroy the safe to get it open, and turning to the manufacturer for help seemed like a cop-out. But he did manage to recover the password by brute forcing the electronic keypad.
There is built-in brute force protection, but it has one major flaw. The system works by enforcing a two-minute lockout if a password is entered incorrectly three times in a row. But you can get around this by cutting the power. [Teatree] soldered a relay to each set of keypad contacts, and another to the power line and got to work writing some code so that his Arduino could start trying every possible combination. He even coded a system to send him email updates. Just six days of constant attacking netted him the proper password.
Does your home have a security system but you don’t subscribe to the monitoring service to make it work? Rip that baby off of the wall and do something with it, or just build your own system around it. If you have a DSC PC1500RK control panel [CaitSith2] shows us how easy it is to control the buttons, LEDs, and buzzer. If you’ve got a different model this is still a good jumping off point to start your own reverse engineering.
There are only four connections that need to be made. [CaitSith2] is using an Arduino for the demonstration. He connected the red wire to voltage, the black wire to ground, the yellow wire (clock) to digital pin 3 and the green wire (data) to digital pin 2. A communication cycle starts by setting the data line high, then clocking out eight bits to capture keypresses. 16-bits are then clocked in to set the LEDs and drive the buzzer. This is shown in the video after the break as well as documented in his sample code. We’ve embedded the sketch after the break to preserve it in case the pastebin code goes missing in the future.
Continue reading “Bending a home security control panel to your will”
[Shane Burrell] decided to spend some time learning how the keypad on the his Kenwood TM-710A APRS radio mic works. It uses a different technique than you might think. Normally a grid of buttons is scanned as a matrix to detect keypresses, but this hardware actually counts pulses on a serial wire to take each reading.
The stock radio sends a steady digital pulse to the handset and with each pulse the mic pulls the line low. It then uses a 4017 decade counter to see what comes back. If the edge count matches it means nothing is pressed, but a change in the number of pulses returning to the base unit can be used to extrapolate which button has been pressed.
[Shane] went on to implement this control technique using an AVR chip in place of the radio base unit. He used the data gained from measuring the pulse behavior using an oscilloscope to write the firmware for the project. He filmed a bit of a demo after the break which shows his findings.
We’re not quite sure how this would translate into your own home-brew projects, but the thought of scanning a keypad with two pins of a uC is quite desirable. Sure there is the 555-timer frequency technique, but we’re always down with new ideas.
Continue reading “One wire reads the keypad from the APRS radio mic”
Want to host a Jeopardy tournament with your friends? Looking to add a bit more fairness to your school’s knowledge bowl? Perhaps you should build some buzz-in hardware of your own.
Here you can see [Matt Hanson’s] take on this idea. He used one Arduino to gather not just buzzer info, but also keypad data from four satellite controllers. Each has an RJ45 jack, allowing it to connect tot he base unit with an Ethernet patch cable. We like the color coding that [Matt] chose, which matches the color of the arcade button to the keystone jack on the base. And of course the fantastic look of the water-jet cut cases isn’t lost on us either.
You may wonder why he included a key pad on each controller? It looks like he and a few others worked together to develop a team-based math game for use in school.
[Arshad Pathan] let us know about his latest project, a modular code lock that can be adapted to many different situations.
The user interface is made up of a character LCD screen and a 3×4 keypad. For this example [Arshad] is using a stepper motor as the locking mechanism. When the board is first powered up it runs the stepper in one direction until receiving input from a limiting switch. In this way, the microcontroller calibrates itself to ensure the lock is in a known position. From there it waits for user input. An unlocked door can be locked at any time by pressing the * key. Unlocking requires entry of the correct password. And a password can be changed by entering 9999 (followed by the old password when prompted).
In the video after the break [Arshad] does a great job of demonstrating the various modes which he has programmed. This stands on its own, but we always love to have more details so we’ve asked if [Arshad] is willing to share a schematic and the source code. We’ll update this post if we hear back from him.
Update: [Arshad] sent in a couple of schematics which can be found after the break.
Continue reading “Full featured security lock demonstration”
[BadWolf] managed to make some free time to get back to his own electronic projects. This time around he’s created a security system for his car. It’s patched into the ignition, preventing the engine from starting when the key is turned. A driver must first insert the key, then type the combination on a keypad in the center console before the car will fire up.
While he was working on the project he also decided to add a start button to the dash-board (we think it does make it look like a later model vehicle). The keypad is driven by an Arduino Nano which has the start code stored in it. Power for the system is provided by a USB hub hidden behind the dash which he thinks will also come in handy with future hacks.
When the proper code is entered, you’ll hear a rendition of the Super Mario Bros. theme. The speaker also lends a pleasant beep with each keypress. See the demo clip after the break to hear it for yourself.
Continue reading “Adding keypad security to your automobile’s ignition system”