OpenCellId for Windows Mobile

I talked about this yesterday, but it’s ready for sharing now.

screenshotWhat is this?
It’s a OpenCellID client for Windows Mobile

What does that mean?
It uses the GPS device connected to a Windows Mobile device (either internal or connected over Bluetooth) to identify exact latitude / longitude coordinates.

It combines this with the cell id of the GSM tower that your phone is currently communicating with.

These two measurements are uploaded to the database at OpenCellId.org

Why?
Because if enough people do this, then we will be able to build up a picture of where each GSM cell is.

Then people without GPS (either because their mobile devices don’t have GPS, or because their indoors) can work out where they are by looking up their current GSM cell in the OpenCellId database.

Will it work on my phone?
If you don’t have a Windows Mobile phone, then no.

If you have a Windows Mobile phone that isn’t WM5 or WM6, then no.

If your phone doesn’t have a touchscreen, then no. (Although let me know, because I could make a non-touchscreen, ’smartphone’ version.)

If you don’t have .NET Compact Framework (v2 or newer) installed, then no. (Although it is free, so you could go get it)

Otherwise… erm… maybe.

Maybe?
Getting the CellID is a little tricky. There is some discussion on this from when I first came across it which goes into more detail, but in short, your phone might not have the RIL.dll file needed to access the GSM cell data.

Mobile data is expensive! I don’t want to pay for this!
I thought you might say that. The GSM/GPS data is stored until you press the “Upload All” button. There is no data usage before this. So you can wait until you get to a fixed Internet connection before you upload the data to OpenCellID.

Actually, I pay a flat rate for data access so don’t mind it sending every update when it’s ready
Ah. Well, then you’re in a minority that I didn’t cater for. Sorry.

Let me know if it’s a big issue, and I’ll add a setting to allow for sending updates immediately.

Won’t this all be a massive drain on my phone’s battery?
Yeah, probably.

Put it this way, I wont be using this unless I’ve got a power supply or I know I’m gonna have power soon. But that still leaves when I’m in my car with the phone connected to the car charger, so that’s good enough for me.

Does it work backwards? Can I look up the location of GSM cells with this?
No. I’ll probably write something to do that soon though. Let me know if you’d be interested in it.
As well as the client pictured above, the CAB installer also installs “Where am I?”. Run this, and a Google Map will be opened displaying your current location. You can run this even if you don’t have a GPS device for collecting location updates.

Can I see my GSM updates anywhere?
The data can be accessed from OpenCellId.org, which includes a map of the last 200 cells to be located. (Although there are currently nearly 30,000 cells located, so your last updates might not be on the map for long.)

I have a question / request / complaint!
getsatisfaction.com/dalelane is a good place to start.

Tags: , , ,

14 Responses to “OpenCellId for Windows Mobile”

  1. tomsoft Says:

    Hello deleane,

    Thanks for this great contribution! I’am currently testing it on a windows mobile device! (I am new to it, so I just need to understand how to pear it with my bluetooth receiver! ;-) ).

    Reagrds,

  2. David Carrington Says:

    Downloaded, but I’m indoors and unable to test.

  3. lmjabreu Says:

    Cool idea.

  4. javadog Says:

    Dale,

    Count me in as someone interested in a Smartphone/WM6 Standard version for the T-Mobile Dash.

  5. dale Says:

    Update: Removed need to manually specify COM port details

  6. dale lane » Blog Archive » GPS Intermediate Driver for Windows Mobile (and getting it to work!) Says:

    [...] sharing my OpenCellId client last week, I was encouraged to try rewriting the GPS code for it using the Windows Mobile GPS [...]

  7. Stefano Says:

    I tried the “where am i” application but it opens a web page that sais that the request was illegal or malformed. Any clue?

    Stefano

  8. dale Says:

    @Stefano - What was the URL of the web page?

  9. Stefano Says:

    @dale - here it is

  10. dale Says:

    @Stefano - The problem with your request is that the size of the map requested (480 pixels by 673 pixels) is bigger than the maximum supported by Google’s Map API (640 by 640 pixels). You can see that if you manually edit the URL to have a smaller size, the URL works.

    As I recall (it’s been a while since I played with this!) I got the phone’s screen resolution, and used it to generate the request. So I assume that your phone has a higher resolution screen than anything I tested the Where Am I? code on… out of interest, what is it?

  11. Stefano Says:

    It’s a SonyEricsson, a new model Xperia X1, the first that runs on Windows Mobile. By the way, since I’m quite new to the WM platform, can you point me to some tutorials? What IDE did you use?

  12. dale Says:

    Visual Studio 2005 with the Windows Mobile SDK

  13. Stefano Says:

    I think I’ve found another bug.

    If you (like me) have an Italian setting for the decimal separator (comma instead of period) you end up submitting wrong data (i.e. no decimal).

    It is not an issue anymore, because I changed my setting, however the problem are the measures that I’ve already submitted.

    I tried to contact people at OpenCellId to remove those measurement, because only who knows the API key is able to remove them. Don’t you think it should be a good idea to let people specified their API key and use yours as a default?

    Let me know if you plan to release a new version, I’ll be more than happy to test it out.

  14. dale Says:

    @Stefano - Thanks for letting me know. I don’t have any immediate plans to work on this code again, but I’ll keep those in mind if I work on it some more.

Leave a Reply