Geocaching is a popular hobby here in The Netherlands. Since my wife and I search for these caches from time to time, the idea came to me to build a cache myself, one that challenges geocachers to listen and decode morse code. This article describes how I built it.
What is geocaching?
For those who are not familiar with geocaching… it’s a kind of treasure hunt. People have hidden so called caches, normally a box, sizing from a cubical cm to a phone box. Whenever you find a geocache, you leave your name in the logbook that’s inside the cache. All caches are published on the website geocaching.com. This website also gives you more information on how to hide and seek caches. You can sign up for free. There are more than 3 million caches worldwide!
Why morse code?
Officially morse code isn’t used anymore. However, it has been the only way of worldwide communications for decades. Therefore it is a cultural heritage, which has to be kept alive. The only way to do so is by using it. Morse code is still actively practised by thousands of radio amateurs around the world. Morse code is also used in quite some geocaches, although in most cases you have to decipher morse code written on paper or so.
Since I’m a radio amateur and like home brewing stuff, the idea came up to build an intelligent geocache. The cache should be capable to beep out morse code, so the seeker has to listen carefully to decode it and enter the decoded character. Whenever the seeker is right, the key speed rises. When wrong, the speed is lowered again. Once the seeker has reached a certain speed, the cache opens, allowing the winner to access its contents, including the logbook.
I found an old wooden box, once used to store paint,brushes and pencils for my drawing classes. I added some wood to create to compartments: one to store the electronics and another one to hold the logbook.
I designed a lock, operated by a small servo motor. The lock is 3D-printed. It took me a while to find out the correct shape and size of the lock to ensure people cannot force it to open. Once the lock is opened, the seeker can open the door to access the logbook compartment.
The servo motor is controlled by an Arduino board. I used an old Arduino Duemilanove, since I still had some of these boards in stock. The Arduino is powered by a 9 volt battery the seeker has to bring in himself.
The Arduino is the heart of the geocache. Besides operating the servo, it produces morse code (buzzer), reads the input (potentiometer and button) and displays the selected character. The idea is that the seeker hears a morse signal, turns the potmeter to select a character on the display, and then pushes a button to enter the selected character. I designed and 3D-printed a cover plate to hold all parts together: battery holder, potmeter, display, button and buzzer. This cover plate also closes the electronics compartment.
With all parts hooked up, I developed the software for the Arduino to bring in all logic. The code generates a random morse character, reads and evaluates the input from the user, determines the keying speed and opens the lock when appropriate. I published the code on Github, for anyone who’s interested.
Powering the whole thing was a bit challenging. Seekers have to bring in their own battery, so I don’t have any control on the battery’s condition. In the beginning, once people completed the puzzle the servo was activated, resulting in a peak current. When the battery was not in a poor condition, the resulting voltage drop caused a reset of the Arduino, so people had to start over again. To prevent this, I added some elco’s. This was still not enough, so I modified the code to move the servo slower, resulting in a lower peak current. Since then, the cache seems to operate flawlessly.
I published the cache on February 17, 2019. Since then, it is logged about once a week, depending on season and weather. About 75% of the seekers rewarded my cache with a ‘favo’ (paying members of geocaching.com can give out a ‘favo’ for every 10 caches they find). The condition of the cache remains surprisingly well, despite being outdoors in all kinds of weather.
The cache is located nearby our home, since it is a bit vulnerable and I don’t want it to be damaged or stolen. Seekers can sit down on a bench to solve the puzzle, while enjoying a peaceful view on the fields and grasslands.
If you want to try the morse challenge yourself, please visit my cache page at geocaching.com for details. It’s unique geocache code is GC7W6DN.