About
Arduiniana is a collection of useful Arduino software libraries, project descriptions, and (eventually) advice for writing solid Arduino code. Here you’ll find the latest versions of NewSoftSerial, TinyGPS, Flash, PString, Streaming and others.
It is also the home of the Reverse Geocache Puzzle™.
This site is owned and maintained by Mikal Hart. For more information, contact mikal <at> arduiniana.org.
Mikal
Page last updated on January 14, 2011 at 9:15 pm

Tim
3 years ago
Dear Mr. Hart,
When I read about your reverse geocaching puzzle I was amazed. Not only by the articles on it and you by many websites that I follow, but by the amount of thought you put into the project. I would very much like to continue a conversation about the project and the use I may have for it in my future plans. If you would be willing to discuss this further, please email me at either timothy.j.engler08@business.colostate.edu or at noodlengler@hotmail.com. Thank you for your time and consideration. Good luck with any future projects!
Sincerely,
Tim Engler
John Raines
3 years ago
Some GPS modules seem to have the option of a wire antenna, typically just a couple of inches, I think. It seems to me that this would give a nicer appearance especially if the antenna were glued into a small slot routed into the box at a corner or something. On the original box with the elephant I suppose it could go in the carved depression above or below the elephant.
Very intriguing project and story! Thank you for the great libraries, as well.
Mikal
3 years ago
Thanks for the note, John.
Yeah, when I was building my first reverse geocache I was under the (mistaken) impression that the GPS module had to be “exposed” to work. This turns out not to be true — as anyone who has ever used a hand-held GPS unit can tell you. :)
In my recent designs I simply tuck the EM-406A underneath the lid of the box. As long as the wood is not too thick and/or dense it seems to work pretty well.
Thanks for your kind words.
Mikal
Greg
2 years ago
recently i started trying to make my own. i have a gps module and am able to get a signal and my coordinates. i was wondering what calculation you used to determine the distance. my basic code is from this website http://www.arduino.cc/playground/Tutorials/GPS which i have modified to store the lat and lon as floats. any help would be greatly appreciated.
Mikal
2 years ago
Greg, I use the “distance_to” function from Maarten Lamers’ nice NMEA library: http://www.maartenlamers.com/nmea/.
Mikal
Ian
2 years ago
Mikal,
Could you possibly email me some further details for the construction of the reverse geocache please. I want to construct one for use in expedition and orienteering exercises with a cadet unit i work with.
Thanks
Ian
Paul
2 years ago
Mikal
I would love to build one of these as well. Could you please email me some info on what to do with the parts you have listed on The Reverse Geocache™ Puzzle Box page? I would like to know just how complicated this is before I commit to buying the hardware.
Thanks
Paul S
Mikal
2 years ago
Hi Paul.
Start off at the “mothership”: http://arduino.cc. Check out tutorials also on ladyada’s great site: http://www.ladyada.net/learn/arduino/. This will get you a long way to getting started. It might take a while to master all the components, but it journey is part of the joy.
Mikal
Di
1 year ago
Is there anywhere/one in Australia making these boxes that we could purchase
We really only need the electronics as we could fit it to our own box
halil ibrahim köklü
1 year ago
hı mikal My name is halil ibrahim köklü
I make magic box 15 step magic box I want to sale magic box I want to help
for me your help please help me
marc
1 year ago
Hi Mikal I plan on building one of your puzzle boxes as a gift for my friends wedding. I would very much like to buy one of your custom shields
Justin Shaw
1 year ago
Mikal,
Thanks for the several great libraries. I made some mods to TinyGPS to enable fix notifications.
I needed this for consistant GPS time syncing.
The mods are published here:
http://code.google.com/p/clockthree/downloads/list
or directly from the source:
http://code.google.com/p/clockthree/source/browse/#svn%2Ftrunk%2Flibraries
Thanks again,
Justin
Mikal
1 year ago
@Justin Shaw,
Hey, cool. That’s a pretty good idea.
M
Amy M. Burks
1 year ago
WOW, your reverse geocache puzzle is such a dazzling idea, AND you had the brains to build it. I think your mind is the biggest “gem” of this page!!!!
Diego Paez
1 year ago
Thanks for the great work you develop, I was wondering if you have not thinking about developing the library TinyGPS for a Chipkit, would appreciate it fully.
Thank you.
Christopher Creel
11 months ago
This is really fantastic stuff! I would love to see you put your work in Github so that I can stay up to date with changes.
Miguel
10 months ago
Hi Mikal, I’m using your excellent SoftSerial library. I need to read multiple ports at the same time. Bandwidth is not an issue as I might not even send the data to the PC. I only need to proccess some 400bps on each port. Is it possible to remove the multiple instances limitation? I’m not afraid of getting into the source code and try it for myself, I just want to know if it is doable…
Mikal
10 months ago
@Miguel,
With the algorithm that SoftwareSerial uses there is no way to read multiple ports at once–regardless of the speed. There are algorithms that would allow you to multiplex serial ports (at slow speeds), but these are complex and way out of the scope of SoftwareSerial.
Kevin
4 months ago
Can I buy a reverse geocache from you or somewhere? Building something like this isn’t my cup of tea.
Mikal
4 months ago
@Kevin, yes we make a number of boxes on commission. I’ll contact you by email…
M
Dirk
3 months ago
Hi Mikal,
I’d like to buy a reverse geocache. How can I do that? :-)
Rodger
2 months ago
Good day Mikal, I am looking to get one of your reverse boxes. I sent you an email as well as this note. Let me know
Thanks
~rodger
Mikal
2 months ago
Hi Dirk–
We are putting together a Reverse Geocache site at http://sundial.com. It should be live any day now. Thanks for your interest.
Mikal