WiFiLocation

  1. Project Description:
  2. Why me?
  3. Deliverables
  4. Time Line
  5. Bio

Project Description:

Location is important when working with mobile devices. In urban areas or inside buildings, where GPS systems often fail, WiFi signals are a good alternative. This project aims at providing a GeoClue backend or standalone library for 2 different WiFi location methods: * MAC/SSID (network name) based * RSSI (signal strength) based

The first method will scan for all available networks and report their identification to an online wardriving database such as SkyHook, wigle.net, or Plazes. Henri Bergius mentioned on the mailing list that for Plazes there is an existing client, Maemo Plazer, which could be extended by this project to support multiple networks and be a backend to GeoClue. Alternatively a new client could be written.

The second method will scan all available networks and measure their signal strength. Using a predefined set of fingerprints a location can be calculated with a up to 1.5m accuracy. The moving user's position can be obtained using a particle filter. This method is suitable for use on a university campus, a game hall, a museum, ... . Games can be created using this backend. Museums could show location based information on handhelds given to the visitors.

Both methods will be implemented in Python.

Why me?

During the past year I have implemented a backend such as the one described in above as the "second method" in Java (J9) for PDA. A few demo applications were developed using that backend: Quiz software for museums where visitors could answer questions about the art at their location and a multiplayer "king of the hill" type game. This was done in a team of 7 people where I was responsible for the positioning system and the client-server communication.

Deliverables

  • MAC/SSID based location code
  • RSSI based localization code
  • Documentation
  • Status reports (at least weekly)
  • Possibly one or more demo applications

Time Line

April 11th - June 30th: Given the fact that in Belgium the exam period ends somewhere in the of June this will be my least productive period of the summer: Getting to know maemo, comparing existing solutions, and contacting partners among the geolocation companies will be all I can cope with.

July 1st - July 16th: To make up for the slow month of June, I will work day and night to finish as much of the MAC/SSID based localization code as possible.

July 16th - July 26th: A well deserved vacation in Greece.

July 27th - August 15th: The RSSI based code.

August 15th - August 31st: Finish the code, complete any unfinished documentation before the final deadline.

September 1st - September 25th: I will have one month of vacation left after the last deadline which will enable me to finish anything left finishing and implement some demo applications.

Bio

I'm a Belgian student living in Vosselaar. In June I hope to graduate magna cum laude in "bachelor of science in engineering: option computer science & electrical engineering" at the KULeuven university and then move on to a master in computer science. I'm a very experienced programmer and I like working in teams. I'm active in the open source community as member of the Ubuntu-be loco team and support point. I'm a very quick learner with great analytical skills. A more exhaustive resumé can be found at http://users.telenet.be/guyvdb/cv-en.pdf . If possible I would like to do this project as an internship for my university. The advantage for Google and Maemo is that my commitment will be guaranteed as this project would also be part of my studies.