OfflineCacher – new version (v.6)

As usual, the download is available from the original post.

New features:

  • Downloader application now looks a bit nicer, added context menu (right click) to the cache list.
  • Downloader application allows deletion of caches and waypoints.
  • You can mark caches as favourite on both the phone and downloader app – I currently use this to mark found caches during a geotrip.
  • Cache images are downloaded to subfolders to remove the long waiting time when opening an image on the phone.
  • Added Latvian Topographic map to the phone application (it requires lots of space on the memory card).

OfflineCacher – new version (v.5)

As usual, the download is available from the original post.

New and changed functionality:

  • Downloader application now asks the user to specify the target directory. This enables to work directly with data on the memory card when phone is connected and this approach will be required to work with favourite caches, moving caches and field notes (coming in next version) together on both computer and phone.
  • Downloader application displays more information in the list and also allows sorting for all visible columns.
  • Coordinates in the cache info page and waypoint creation is shown using “W 85 21.333” as this is the most widely used format in geocaching. The same is done in the downloader application.
  • Opening the info screen for the same cache multiple times in a row is much faster (the slow down is visible only when a lot of caches is loaded).
  • Added multiple checks so that the application will not crash if the map tiles are not downloaded correctly.
  • The downloader will no longer download the extras if they have already been downloaded in the last 7 days.

OfflineCacher – new version (v.4)

A new version of OfflineCacher has been published. The instructions are still the same and are available from previous post. The same post has more information on what OfflineCacher can do. In short – it is an Windows Mobile Smartphone application to enable geocaching from your mobile phone without ever using the GPRS (data) connection – this is really useful when traveling as roaming charges most of the time are through the roof.

New functionality:

  • Map storing is optimized to reduce space occupied up to 4x. It is done in two steps – first the application no longer converts every tile to PNG format (for satelite images this enlarged the files by up to 10x). The second optimization is merging these small images into larger “archives”. This optimization also dramatically reduces time needed to copy the maps to storage card.
    • Previously (map for 5 caches): 947 files and 33,8 Mb.
    • Now (map for the same 5 caches): 8 files and 12,64 Mb.
  • When viewing the map if a tile is not available the application now looks for a image from level higher and resizes that (useful when driving around where the maps are not downloaded).

Note that this change makes all previously downloaded maps unusable. You should delete them (folders OpenStreetMap, GoogleStreetMap and GoogleSatelite) manually to free up disk space.

One of the reasons why the maps now take up much less space is that with usual storage card file systems there is a thing called allocation unit – any file will occupy certain number of these units and they can never share one unit. The default unit size is 4Kb so if a file is 6Kb large it will occupy 2 units and the actual size used will be 8Kb. This overhead is too small to notice for large files but if every file is smaller than 10Kb then the overhead is 30% to 50%. By merging the map tiles together this overhead is reduced to minimum.

OfflineCacher – new version (v.3)

A new version of OfflineCacher has been published. The instructions are still the same and are available from previous post. The same post has more information on what OfflineCacher can do. In short – it is an Windows Mobile Smartphone application to enable geocaching from your mobile phone without ever using the GPRS (data) connection – this is really useful when traveling as roaming charges most of the time are through the roof.

Download:

Changes in this version:

  • The cache storage is changed from a simple XML file to a SQLite database. This means that the application can work with lot more caches without eating all of the memory and startup time will always be constant – previously it could take even 20 seconds to load with 200 caches.
  • Download process is now made paralel and in total runs up to 4 times faster. It is also now possible to cancel the whole download or only part of it (for example, if you do not need the satelite maps).
  • The cache description is loaded correctly – previously only the long description (second part) was loaded and short description was ignored. This caused incomplete cache instructions to be displayed on the device.
  • Changed to download also the cache images not only images from logs. But still only the last 20 images are downloaded.
  • Turning off and on the GPS works correctly without restarting the application. Previously turning off worked fine but after turning it back on the application had to be restarted.

The work continues to enable the application to load and store more than 2000 caches at the same time with as much maps as possible. The first step has been done – it is now possible to store many caches at the same time, the next version will contain changes to how maps are stored to use the limited capacity of storage cards as effectively as possible.

It could be possible that some cache filtering options do not work correctly but my weekend caching session did not turn up any major issues.

The change from XML to SQLite also means that whatever caches you had loaded previously will be lost and you will have to load them again. As all .gpx files are not deleted but copied to the Processed directory, you can just move tham back up and the application will load them.

OfflineCacher – new version

A new version of OfflineCacher has been published. Installation instructions and download links can be found in the previous post.

Main changes:

  • saved cache web page can be opened from Windows Mobile 6.5;
  • custom caches/waypoints can be created for given coordinates or on a specific point on the map.

OfflineCacher - download

For initial description and reasoning behind the OfflineCacher application, see the previous post. In short – OfflineCacher is a Windows Mobile Standard (otherwise known as Smartphone) application for geocaching without using data (GPRS/EDGE/…) connection. Both maps and additional cache information is predownloaded on the desktop and copied over the wire to the phone.

Note: the instructions below are constantly updated when new version is released.

Requirements:

Download (current version is v.5):

Setup:

  • unzip the desktop application – no further setup required, just launch it;
  • on the mobile phone storage card create directory \Storage Card\OfflineCache (the directory goes directly on the storage card, the given path is when accessed from the phone itself) – it cannot be changed currently;
  • it is recommended to either use a card reader or switch the phone to work as a removable drive and not via ActiveSync (otherwise the copy speed will be extremely slow and during the copy it will automatically overwrite files and not leave existing ones; also via ActiveSync the desktop application will not be able to directly connect to the phone).

Typical usage:

  • download .gpx file from geocaching.com (either individual cache or a pocket query) to a local folder – specify this folder in the desktop application; alternative is to download .gpx files to the OfflineCacher data folder under Caches subfolder.;
  • connect your phone via USB connection, set it up so it does not use ActiveSync;
  • create the OfflineCacher folder on the memory card – this way the download application will detect it automatically and work always even if for some reason Windows decides to give the card different drive letter later;
  • launch the downloader application, select the removable folder option (if required, browse for the folder), it will automatically read the .gpx files and display the caches on the map;
  • navigate the map by mouse (right click centers the map, double left zooms in, double right zooms out);
  • select the caches you want to visit either from the list or from the map;
  • click “Download maps and extras” – this will download maps for all zoom levels (only the deepest for sattelite map) for all selected caches – approximately 3x3 mobile screens are predownloaded; it will also download the cache web page with all logs (the .gpx includes only the latest ones) and images;
  • launch the the mobile application, it usually takes about 5 seconds to load (no matter the number of caches);
  • usage of the mobile application is via the menus and keyboard shortcuts:
    • “1” – zooms out;
    • “3” – zooms in;
    • “0” – centers on GPS coordinates, second click zooms in on GPS coordinates;
    • “Enter” – opens the selected (under the center of the screen) cache info page.

The usage of this application might seem a bit complex at first but after the first time it should be very straight forward – it is this complex because of the requirement to predownload maps – once you start copying the maps to the storage card you will understand why it is better to be done this way – the size of them is quite large and if that is downloaded from the mobile phone, the bill can grow quite a bit.

Geocaching with Windows Smartphone

Geocaching is a high tech game. As soon as you get outside of urban areas most of the time it gets near impossible to find the cache if you do not own a GPS. But GPS alone does not help that much – in order to be as effective as possible the GPS has to be able to display geocaches directly on the map. There are many devices you can buy that supports geocaching but nowadays most people have a GPS on their phones and in this case it really does not make much sense to buy another device.

There are many different software solutions for different phones. For example, the iPhone has an application, Trimble has a product that you can install on different phones. But most of the good applications are not free and for some of them you even have to pay monthly subscription (and pay premium membership for geocaching.com).

I myself own a phone (HTC S740) with Windows Smartphone 6.1 operating system. The big problem for me is that the Smartphone (or Standard) version is for phones without touch screen (such as mine). There are multiple free applications for Windows mobile phones with touch screen (Professional version) but I could not find one that works for me.

Another very limiting factor is roaming GPRS (mobile data) charges. While I am visiting Canada, the charges are approx. 10 USD/Mb. This way geocaching becomes quite expensive if you use an application with an online map (like Google Maps). So for me the application has to be able to download the maps before I go outside and work offline.

Suffice to say I did not find anything that would do what I need and I decided that it has to be corrected and I need to write the application myself.

To show the result, here are some screen shots of the first version:

OfflineCacher - Map view OfflineCacher - cache info OfflineCacher - satelite map OfflineCacher - GPS status

The current functionality:

  • A desktop (Windows) application to download maps (you need to copy them to the storage card manually).
  • The maps are downloaded automatically for geocaches you select on the map or from a list.
  • Geocaches are loaded from GPX files (you need to be a Premium Member to have access to them).
  • The application downloads and works with maps from OpenStreetMap and Google Maps (both street view and satelite view).
  • Works with any GPS module that the Windows Mobile operating system can manage automatically (built in or external).
  • Displays the current location on the map.
  • Shows all loaded caches on map by their type, highlights caches that are found, are inactive or that have travelbugs in them.
  • Displays the information about the cache – hints, description, logs.
  • Downloads the cache web page on the desktop application and displays it on the mobile phone – useful if the GPX file did not contain enough logs.
  • Downloads images for the cache and displays them on the mobile phone.
  • Absolutely nothing is downloaded on the mobile phone directly – no need to worry about GPRS costs.

Requirements:

  • Phone that supports Microsoft .NET Compact Framework 3.5.
  • Non-touch screen as this is the target for the application.
  • Enough place on the phone or storage card to store the offline maps (for a few day caching session it could take up to 1Gb of space).

I will post the application here soon – if you feel that this is something you need, by expressing that you will probably get me to do that sooner.