[Openstreetmap] OpenStreetMap/Freemap and mobile devices?
Paul Makepeace
openstreetmap at paulm.com
Wed Jun 8 07:58:15 BST 2005
Hi Nick,
The kind of functionality you're envisaging is largely implemented in a
fashion with the Urban Tapestries (UT) project, http://urbantapestries.net/
As the server developer for version 2 last year I can give a bit of
feedback on what we experienced...
Nick Whitelegg wrote:
> A thought I've had for some time with Freemap, wouldn't it be good if OSM maps
> could be displayed on mobile devices like PDAs or even phones? Without a lot
> of knowledge in this area ATM (but am keen to learn) I'm not sure how
> feasible it would be but the following appear to be true:
>
> a) the device would need inbuilt GPS;
UT used location requests to the phone provider to get the nearest cell
tower, and then user input (i.e. scrolling about) to pin-point the exact
location they were either at or interested in.
This worked reasonably well; cell towers are a few hundred meters apart.
The downside was having to produce a custom WAP/HTTP gateway at Orange
to put the location requests in our HTTP requests via a maze of proxy
servers and custom code. My understanding was that this was fairly hard
work.
There's a common myth that it's possible to triangulate your cell phone
from multiple towers. This *isn't* possible in the UK (sorry!) with
non-3G towers yet.
Another downside to location requests is normally they're fairly
expensive. That may well change in future, hopefully to a subscription
model or even better free, but at the time it required close cooperation
with our network provider, Orange/FT.
> b) There would seem to be two ways of implementing this:
>
> i) Get your current position from the inbuilt GPS, construct an HTTP request
> to the server using, e.g. the cURL library, and get a map back as, say, a PNG
> image.
>
> ii) Send an XML-RPC request to the server, get the raw data back then process
> the data to draw the map on the mobile device. This is more flexible but
> requires more processing on the device.
We opted for installing a map on the device (SE P800) and having the all
the communications operate using coords.
Bear in mind that in addition to any map data you are probably likely to
want to send other data too, e.g. nearest pubs, and very quickly you
find your meagre and only somewhat reliable 9600baud GPRS connection
being used up, or used to an extent your usability is becoming frustrating.
Talking of which, I'm not sure if you've ever seen the contents of an
XML-RPC packet--it is verbose in the extreme. You absolutely have to be
using HTTP compression. In our case this required writing client code.
The savings yielded were around 80-85%. Of course, the HTTP header
itself is still uncompressed. Personally I would definitely consider
using a tighter session protocol, i.e. not HTTP.
With the advent of increasingly pervasive wireless and wireless on phone
devices (e.g. Orange M2000/XDA IIi) this is opening up some exciting
possibility. However, Proboscis' experiences with wireless were not
terribly promising either. But that's a whole different conversation...
> c) the device would need to make a request to the server every x minutes or
> seconds, or when the position has changed by y metres/feet.
We left that in the hands of the user. I don't think we're quite at the
stage in terms of user expectation or network coverage & bandwidth for
devices to be continuously connected like that. Still, it'd be a nice
option.
> Doubtless there are many practical problems with battery life, etc, but it
> would certainly be something worth investigating. I also gather that most
> mobile devices cannot connect arbitrarily to the internet through
> user-written software, for security reasons. So (correct me if I'm wrong) it
What you're thinking of is a restriction placed on unsigned java code;
the same isn't the case for native apps. Consider a basic PDA browser...
> would only be possible to do this sort of development under the Linux/Qtopia
> environment at the moment and not under Symbian or Palm environments.
>
> If this is feasible it's certainly something I would like to get involved in.
> Are there suitable PDAs out there with GPS ability, or could I get a cheap
> pluggable GPS unit and plug it into an arbitrary PDA?
I have an Orange M1000 with the TomTom Navigator software which can come
with a bluetooth GPS unit. As it stands it's a great piece of kit and
works on a lot of different devices. I haven't tried hooking it up to
any third party software or stuff I've written myself yet. (Love to hear
from anyone who has!)
Hope that helps, Cheers, Paul
More information about the talk
mailing list