You may remember a month or so ago I posted that I'd bought an engagement ring and was preparing a fairly unique way to propose in that the ring was in a locked box that could only be opened at a certain GPS location.
I thought I'd update you on the box.
Overview
In short what i have built is a Reverse Geocache Box, this is a box that is locked from the inside and can only be opened once it reaches a certain GPS location (with a suitable distance tolerance built into the calculations). The idea came from a Monday Links link given by our resident Chimp Mr Fitz back in Septemeber. With a bit of reverse engineering, a LOT of searching the net I came up with a plan on how to build the thing.
Components
The whole thing is centered around an Arduino Uno microcontroller board, my first ever attempt at micro electronics. Atatched to this is a Protoshield which allows much greater flexibility in building the circuitry (and given some of the mistakes, has saved a LOT of time). Other main components include:
How it works
In short the box works like this
- Gf Chef presses a button
- the box powers up with a nice welcome message on the LCD
- an internal 'AttemptsTried' counter is incremented by 1 and "Attempt x of 50" is displayed on the LCD
- the GPS is checked for a valid signal, if not "no signal found" is displayed on the LCD and the box powers down, otherwise "Signal Found" is displayed
- the distance between a pre-programmed destination and the current destination is calculated
- if greater than 10km the box displays the distance on the LCDalong with "Box stays closed" message and powers down
- if 50 attempts are tried the boxes displays a "All attempts tried, return to sender" message and powers down
- if the distance is less than 10km the box opens with a "Congratulations, Box Opening" message
Backdoor
As a precautionary message I added a 5mm DC Barrel Jack to the side of the board, this bypasses the Pololu power switch and powers the Arduino directly to its DC in socket, therefore allowing me to build a backdoor into the code that if the system was still powered after the Pololu Switch had been instructed to power down the battery pack then it must be powered by the DC socket. In this scenario the following occurs
- Pololu Switch cuts power to battery pack
- delay 10 seconds, display "Excess Voltage, Remove Power" fake message to deter gf chef
- delay 10 seconds, display “3y↑בּ#* Vθц<%^&” fake message to suggest overpowering
- delay 10 seconds, clear LCD display (hopefully by this point gf chef would think it's dead and remove power)
- delay 4 mins, unlock box
- delay 10 seconds, lock box
Current State
At present it is now functionally working but still needs to be installed permanently into the box, wires trimmed to size, wires removed from the breadboard and soldered direct to the Protoshield and the locking mechansim completed. 2 weeks to go.
Expected Result
She'll receive the box on Christmas day while we're at her parents, I assume it won't take her long to get the first GPS distance reading and after consulting with some friends and having a second reading from home I'm sure the idea of triangulation will come up given that most of her friends are teachers. A third reading most likely from work will confirm where the location is and assuming she hasn't used up the 50 tries showing her friends and asking WTF? she'll know that the destination is an island accessed by a ferry ride several hours away from home. It's far enough to ensure that it's a weekend away which guarantee's I'll be included in the plans and she wouldn't just drive to the location after work one day and open the box alone thus kind of ruining the main purpose of the box.
Pictures
So, as was perviously requested, I've added some pictures to a newly created Photobucket account. They can be seen here
I'll keep you posted on when it's finally complete and update the photobucket site with some more photos.
Enjoy
Chef
EDIT: Yes I know it currently looks like a bomb, it's not finished yet, the circuitry needs installing/glueing into the box and the wires trimming.. i'm also looking for a bezel to frame the LCD as i'm not 100% happy with the "hacked" look even though it is very flush..
I thought I'd update you on the box.
Overview
In short what i have built is a Reverse Geocache Box, this is a box that is locked from the inside and can only be opened once it reaches a certain GPS location (with a suitable distance tolerance built into the calculations). The idea came from a Monday Links link given by our resident Chimp Mr Fitz back in Septemeber. With a bit of reverse engineering, a LOT of searching the net I came up with a plan on how to build the thing.
Components
The whole thing is centered around an Arduino Uno microcontroller board, my first ever attempt at micro electronics. Atatched to this is a Protoshield which allows much greater flexibility in building the circuitry (and given some of the mistakes, has saved a LOT of time). Other main components include:
- 16x2 LCD Display (white text on blue background for those who care)
- bushed steel PushButton
- EM406 GPS unit
- Servo (for the lock mechanism)
- Pololu Switch (to allow the Arduino to switch itself off via software
- 10k Potentiometer (contrast control for the LCD)
- battery pack (4x Lithium AA)
- Barrel Jack DC plug (for "backdoor" emergency access)
- Walnut Burr Vintage Jewellry Box to house it all in
How it works
In short the box works like this
- Gf Chef presses a button
- the box powers up with a nice welcome message on the LCD
- an internal 'AttemptsTried' counter is incremented by 1 and "Attempt x of 50" is displayed on the LCD
- the GPS is checked for a valid signal, if not "no signal found" is displayed on the LCD and the box powers down, otherwise "Signal Found" is displayed
- the distance between a pre-programmed destination and the current destination is calculated
- if greater than 10km the box displays the distance on the LCDalong with "Box stays closed" message and powers down
- if 50 attempts are tried the boxes displays a "All attempts tried, return to sender" message and powers down
- if the distance is less than 10km the box opens with a "Congratulations, Box Opening" message
Backdoor
As a precautionary message I added a 5mm DC Barrel Jack to the side of the board, this bypasses the Pololu power switch and powers the Arduino directly to its DC in socket, therefore allowing me to build a backdoor into the code that if the system was still powered after the Pololu Switch had been instructed to power down the battery pack then it must be powered by the DC socket. In this scenario the following occurs
- Pololu Switch cuts power to battery pack
- delay 10 seconds, display "Excess Voltage, Remove Power" fake message to deter gf chef
- delay 10 seconds, display “3y↑בּ#* Vθц<%^&” fake message to suggest overpowering
- delay 10 seconds, clear LCD display (hopefully by this point gf chef would think it's dead and remove power)
- delay 4 mins, unlock box
- delay 10 seconds, lock box
Current State
At present it is now functionally working but still needs to be installed permanently into the box, wires trimmed to size, wires removed from the breadboard and soldered direct to the Protoshield and the locking mechansim completed. 2 weeks to go.
Expected Result
She'll receive the box on Christmas day while we're at her parents, I assume it won't take her long to get the first GPS distance reading and after consulting with some friends and having a second reading from home I'm sure the idea of triangulation will come up given that most of her friends are teachers. A third reading most likely from work will confirm where the location is and assuming she hasn't used up the 50 tries showing her friends and asking WTF? she'll know that the destination is an island accessed by a ferry ride several hours away from home. It's far enough to ensure that it's a weekend away which guarantee's I'll be included in the plans and she wouldn't just drive to the location after work one day and open the box alone thus kind of ruining the main purpose of the box.
Pictures
So, as was perviously requested, I've added some pictures to a newly created Photobucket account. They can be seen here
I'll keep you posted on when it's finally complete and update the photobucket site with some more photos.
Enjoy
Chef
EDIT: Yes I know it currently looks like a bomb, it's not finished yet, the circuitry needs installing/glueing into the box and the wires trimming.. i'm also looking for a bezel to frame the LCD as i'm not 100% happy with the "hacked" look even though it is very flush..
Comment