We were inspired by making something boring fun. We wanted to take an ordinary cash point where boring or sometimes quite anxious interactions take place and create something more enjoyable for the user.
As we started to open up the machine we commented how it was like a puzzle box. This inspired us to consider how it could be used as an interactive game to teach about security.
The hope is that it could be further developed into an interactive puzzle box. It will use puzzles based on different cyber vulnerabilities such as rainbow tables and aspects of social engineering to crack the puzzle.
What it does
It appears to be a normal cash machine but this one has a little bit of excitement built into it. When you go to collect your money the game menu will pop up and you will start playing for the cash.
Our cash machine is an interactive gaming device. We have used it to make cash withdrawal fun. But, inspired by escape rooms and puzzle boxes, it would actually be used as part of an educational tool for people to learn about cybersecurity in a fun and interactive way. The large top screen will host a fake browser and interactive elements that will enable the player to access the cash machine, which on completion will spit out monopoly money.
How we built it
First, we removed all the original hardware and had to determine which parts were usable and which components were proprietary. Once we’d figured that out we could use the pi to emulate the interface of a cash machine. Then finally we wanted the money to shoot out because we thought it would be fun so we wired directly into the stepper motor responsible for the money so we could use a driver to control the speed the motor comes out.
Challenges we ran into
Once we acquired the 9100 Blue trident cash machine we needed to get into the inner mechanics like the screen. Unfortunately, we lost the key and had to lock pic into it. We would then go on to find several other security measures in the hardware.
We programmed the motor for the dispenser relatively quickly however mechanics of passing the paper through the cash dispenser required further engineering. We averted to 3d print a caddy however we did not have enough time to complete the design.
We managed to find an LCD that fit into the small screen area perfectly, unfortunately, we were unable to get it to work so we replaced it with the pixel matrix. We broke out the side buttons and connected them to an Arduino which acts as a keyboard input to the raspberry pi. Unfortunately, the PCB was potted so we could not break out the inputs. The numerical buttons proved more difficult. We started to design a custom PCB to replace it.
The top screen was dismantled from a computer monitor and mounted behind the existing screen.
The thermal printer was driven by the raspberry pi by an existing library.
We made a lot of progress on all of the elements but not to the point where we were able to link the elements together.
Accomplishments that we're proud of
We managed to reverse engineer aspects of the cash machine. Then from that understanding of the machine, we’ve been able to recreate its function using non proprietary hardware. We managed to re-use the cash dispenser mechanism and the original buttons.
What we learned
Over the project, I’ve learned a lot about machine security and the methods something like a cash machine uses to protect your information. An example of this was tamper switches. These switches would be loaded permanently pressed by the hardware of the casing so in the event that we tried to tamper with the hardware (which we did) the circuit board would become unusable.
What's next for Bean Money Mashine
We would like to finish transforming the machine into a fully functioning unit. Then use it to create an interactive puzzle box.
Blood sweat and beans