Indoor Positioning

Getting phones to work out where they are indoors

Incorporating SenionLab with Micello Maps

While the indoor positioning systems I’ve tried out so far have worked well, the device location has been displayed on an image of the building’s floor plan.  This is all well and good to test the functionality but in terms of user experience it’s not ideal.  Zooming in and out can cause the image to become pixellated, it’s difficult to add any kind of annotations and there is no interactivity.  Enter Micello, provider of indoor maps to address just these kind of issues.

Micello have been on the go since 2009, with the aim of creating indoor maps of popular locations around the world.  Traditionally they have used Javascript for rendering to allow cross-platform solutions but recently they released a beta version of an Android SDK.  As well as showing a floor plan, the map redraws itself for each zoom level, allows the rooms on the map to be selected, the maps can be annotated and there is also a routing API powered by a web service.

Obviously I was keen to try this out, so I got in touch with the guys and explained what I was doing.  They said they were happy to map the mall where I’ve been testing, and added my request to the queue.  I provided to-scale floor plans and directed them to where they could find more information, and that was all they needed.  While I was waiting, I familiarised myself with the Android SDK using the sample application provided and some maps already in existence.  I had an idea of what I wanted to achieve (similar to the maps app in iOS) so set about dissecting the code.

It took a few weeks in between other projects and a bit of customising the code but eventually I managed to get an app together working how I wanted.  Handily enough at just about that time the guys at Micello let me know that my map was ready to go.  Having tested the SenionLab local positioning, it seemed like an ideal opportunity to hook up their web service API and see how that performed too.  The results are below – pretty damn cool I’d say!

12 Responses to “Incorporating SenionLab with Micello Maps”

  • Alex says:

    Jimmy, am i correct in assuming that u had to use exactly the same map dimensions as it was for your original PNG image?
    Otherwise u would have lost the senionlab positioning data?

    thanks,
    Alex

    • jimmy says:

      Hi Alex

      The original PNG file was correlated to standard geocoordinates by the guys over at SenionLab. Micello’s map was created independently by them, also tied to standard geocoordinates. So, in the Micello SDK it’s possible to add a marker according to lat/lon values, which the positioning API returns. You’ll see that the blue dot is slightly off from the centre of the corridors on the map. SenionLab reckon this is probably down to a calibration issue, i.e. how they positioned the floor plan on the globe is slightly different from Micello.

      Hope this helps :-)

      Jimmy

  • Alex says:

    oh, that was fast!
    thanks for clarifying, but what Michello did exactly? So they’ve done the geo-calibration which i guess can be something that they figure out based on google earth data, but i guess that would still need original map so they can align their map according to the compass (norht-east-south-west)
    i.e. how would they ensure that map is not upside-down fir instance?

    • jimmy says:

      I had to provide them with a to-scale floor plan and details of the site (url etc) – but apart from that, I’m afraid I don’t know what they do! They just take the information and eventually come back with a map.

      I’d imagine they take the top left and bottom right gps coordinates of the building, use some kind of matrix to obtain the number of metres in between them and base their calculations on that. That’s pure speculation though…

  • mike says:

    Your site is cutting edge and incredibly informative. Thank you!

  • mike says:

    Does one have to use SenionLab with Micello Maps? Are they dependant on each other?

    • jimmy says:

      Hi

      Sorry for such a late reply – I’ve been inundated with spam. No, SenionLab will just return a set of GPS coordinates – it’s then up to the developer to display the location on a map. Micello provide scalable maps which let you plot a point quite easily. The alternative would be to draw the maps yourself and work out the scale in relation to lat/long coordinates.

  • lin says:

    Hi Jimmy,

    My company would like to work on a wifi fingerprinting based indoor positioning iphone app. I have been doing research online, and what I found out is that Apple80211 sdk provide the ability to retrieve wifi signal strength. However, this is a private sdk and will not be accepted by app store.

    Do you happen to know any iOS sdk or ways that we can use to retrieve wifi signal strength?

    Thank you very much!

    • jimmy says:

      Hi

      Sorry for such a late reply – I’ve been inundated with spam. As far as I know, even with iOS6 there are no public APIs that will allow you to access wifi signal strength on Apple devices. It can be done with a jailbroken phone, but that’s not much use if you want to submit to the app store. Maybe one day!

  • Farick says:

    Hi Jimmy,

    We are trying to develope an App that will track people inside a mall, will these applications (Senion Labs and Qubulus) help in that? I am assuming they only work with android phones and all users would need one in hand to be tracked.

    Appreciate your help

    regards,
    Farick

    • jimmy says:

      Hi

      Sorry for such a late reply – I’ve been inundated with spam. Yes, this software allows the phone to calculate its position inside a building. If you wanted to monitor the movements of users then each one would need to be carrying an Android device

  • Great conversation here! Thanks Jimmy for keeping the dialogue going.

    My name is Ankit and I’m the CEO of Micello. We are mapping out every interesting building on the planet and really excited to enable a new generation of indoor-location based apps. Contact me at ankit at micello dot com if you’d like to chat about the indoors! :)

    Best wishes!
    - Ankit

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>