This page has design and construction notes about the ridiculous hardware hacking project that became the dragon puzzle geocache. There's some 2010 updates below and also a video below showing what it looks like and how it works.
I love the idea that you come across a mystery object with no instructions or anything. You manipulate it and look at what it does, and with luck have that Aha moment to figure out what it means (seems like a movie plot actually).
I've played around a little with the inexpensive and open source arduino microcontroller, and it's perfect for making a little battery powered puzzle.
I've done a little geocaching, and I figured that would be a good the way to structure the puzzle -- you find the dragon puzzle at the first GPS coordinates, and you must solve the dragon puzzle to get the coordinates of the nearby treasure cache.
With these ideas in mind, I saw this cast iron dragon on sale for $8 at Cost Plus and knew I had found my mystery object. Like any project that looks good in the abstract, there were more a lot more issues than I had imagined in actually making it work.
Figuring out how to mount the switches and leds on the dragon was a mess ... eventually I made it work with a file and epoxy and cork, and lots of electrical tape. As they say: nothing screams poor workmanship more than wrinkles in the duct tape.
For the arduino side, I used the Modern Device Really Bare Bones Arduino board -- it's small and you can solder the wires right to it, and it's only $12.
There were many trips to Palo Alto frys for little switches and wires and whatnot, somehow needing to buy each thing at least twice to find the right version.
Thinking up a puzzle and writing software for it wasn't too hard -- the arduino is very well suited for this sort of thing and I've written a million exam questions over the years. I wanted a puzzle that did not require a computer science background. I could add a "it's not binary" hint to the description, but Katie points out that people who know binary encoding are not the ones in need of help. It remains to be seen how hard it is to solve.
Here's a closer look at the precision construction of this space-age instrument:
If you'd like to visit the dragon puzzle on Stanford campus, go to dragon puzzle page at geocaching.com, (you'll need to sign up for a free account to get the coordinates).
2010 Update
Here's what I've learned up through July 2010:
Battery life is proving to be a problem. If you look at the geocache logs, it seems about every 10th visitor or so finds it dead. At first I thought it was "pilot error" issues, such as people putting it back without switching it off. The haphazard condition the caches are found in at times suggests that sometimes people are not too careful. Or it may have been that the back switch was getting jostled while it was being put away. However when I did the math for 9v battery capacity, I realized that just wearing out the battery is at least possibly the problem. Had I looked up the capacity of a 9v battery at the start (500ma-hours), I would have known to optimize power use vs. making the LEDs as bright as possible. The dragon uses about 50ma now when running. I'm curious how long the typical user runs it -- 15 minutes? an hour? If it's an hour, then the batteries are dying just because the dragon is on a lot! I guess that's a good problem to have ... the dragon spends lots of time with friends.
In June 2010 to try to reduce the possibility of the pilot-error case, I moved and glued down the back switch so it was jostle proof, and changed the instructions to put the dragon away face-up, so you can see that the power led is off for sure as you put it away. It's too soon to judge the effect of this change. The key ingredient that combined beautifully with the shaped cork to re-mount the rear switch: elmers glue, the taste preference of 2nd graders everywhere!
A few of the wires have snapped and needed to be resoldered (this may also have played a role with the batteries). I expect this is from being bent around too much with battery changes and general messing around. I liked working with 26 gauge (thin) solid core wire originally (easiest to move things around), but I'm guessing stranded would have been better in this respect, or considering the high inconvenience of these failures .. I should have used thicker wire.
In july 2010 I added a few spare 9v batteries in the cache box, figuring that this is a pretty effective solution to the battery problem, pilot error or not. Although now that people will be opening the thing up to change the batteries .. well we'll see if more snapped wires ensue. I neatened up some of the connections as best I could in the hopes it will all just work. As I was sitting out on the dirt working on this change, a Stanford sheriff walked by and asked, not unreasonably, what the heck that was I was working on. He knew what a geocache was, but only later did I realize that I missed out on the chance for some highly unique sheriff-vs-dragon photos to add to its page.
Turns out I'm not the first person to think of using electronics for a puzzle geocache --
Riddlers Revenge in Pennsylvania.
Riddlers Revenge integrates written puzzles with the electronic box, while the dragon is a standalone puzzle object from which you have to decipher the coordinates. Riddlers Revenge seems very popular and won a Best Puzzle Cache 2006 award. I note the prominent Please Turn Off When Finished label on the thing reflects some of the problems the dragon has, although it seems to have worked quite reliably from its logs. I suspect it's made of passive components, rather than booting up a microprocessor the way the dragon does, but still must have been a ton of work to design and wire up. Incidentally, this suggests that the dragon should be cache type puzzle/mystery not a multicache, although I've also been told that the current multicache category is correct, so who knows.
Video
Here's a little video I made using my laptop's camera to show how the dragon is built and how it works (spoiler alert: in the last part of the video, I show how to solve it, but you can watch the video up to that point without spoiling the puzzle). I used the new HTML5 video tag to embed the video in the page using the new, open WebM codec. From a technical point of view, this the way video on the web should work, and as a geek I'm happy to be the early adopter for this sort of thing. To watch the dragon video you'll need a browser that supports HTML5 WebM out of the box, such as as Mozilla Firefox or Google Chrome.
There's one other subtle thing the dragon does when you solve the puzzle which, it occurs to me, is not shown in the video. You'll have to visit the dragon to see that bit.
There's also a great talk to see and an inspiration for this project: JJ Abrams Mystery Box (watch the video or just read the transcript) about how mysteries drive the plot forward in Star Wars, Lost, etc. Also, the puzzle hunt at Stanford known as The Game is an inspiration from back in the day.
Of course this whole project was just an excuse for some hardware hacking and tinkering, and I hope that people who find it get a kick out of it. This project makes no sense in terms of cost/benefit of my time. But in reality, I've gotten immense enjoyment out of it and reading the logs as people play with it, so I guess everyone needs an impractical little creative project.