The My BMW Remote App stinks, so I fixed it.

I recently traded in my old BMW 5-series for a new X5 Diesel.  One of the added benefits was being able to remote unlock/lock my car door remotely, send Points of Interest to my car, and locate my car using BMW’s Remote App.  Once you begin using it, it’s fairly obvious that no one at BMW spends time thinking about user experience.

A simple task such as locking my car doors remotely (If I think I forgot to do so) roughly goes like this:

Step 1: Open the App

bmw-step-1

Step 2: Enter your Passcode

bmw-step-2

Step 3: The App Launches, go to Control Tab?

bmw-step-3

 

Step 4: Hit Locking/Unlocking?

bmw-step-4

Step 5: Slide to Lock?

bmw-step-5

Step 6: OK, Slide to Lock.

bmw-step-6

Step 7: Wait (60+ Seconds)

bmw-step-7

After all of this, you’re never really sure if the car actually locks.  Needless to say, this isn’t very user friendly at all.  The rest of the functionality is basically the same.

To send a location to the car, you need to go to Google Local Search (See step 4) and search for where you want to go. Then you need to access a sub-menu and then tap send-to-vehicle.

I may be wrong, but I thought the point of this app was to make the user’s life less-complicated.   How is this any easier than pulling out my key and walking back to my car to lock it?  It’s not.

Mobile apps are all about removing friction from the user’s life and bring small moments of joy throughout the user’s day.  I would make the case, that if your app doesn’t do either, don’t bother building it.

Seeing as I will have my car for the next 3 years, I decided to make my own BMW Remote App.  One evening I sat down at my computer and took a look at what the existing BMW Remote App does.  Under the hood, it’s basically a simple networking app that hits a RESTful API over at BMW.  Using common developer tools I documented their entire workflow.  All in, it was about 2 hours.  Now I was ready to build my own.

My main goal was to create a version of the app that I would love to use.  I brought the core (important) functionality to the front of the app.

Step 1: Launch the App (icon pending)

my-bmw-step-1

Step 2: Hit Lock

my-bmw-step-2

Step 3: Wait ~30 Seconds (The BMW Roundel’s center spins)

my-bmw-step-3

More: Locate my Car

 my-bmw-step-map

Integration with Apple Maps

my-bmw-step-apple-maps

The most useful feature I added was integration with Apple Maps.  Instead of finding where I want to go in one app.  Then opening the BMW My Remote app to find the same place, I integrated my app as a directions handler in Apple Maps.  Now I can find where I want to go using the OS’s mapping solution and just send the directions straight to my car.  They show up almost instantly.

I dont know what my plans are with this app, I built it for myself to use. I’ve given it to a few friends and they are enjoying it.  I’m tentative to release this to the App Store for obvious reasons.  For now, my plan is to reach out to BMW for permission to release this.  We’ll see what happens.

One common question that has come up every time I’ve shown this to someone is “Can you unlock any BMW?”.  The simple answer is No.  You are required to login with your BMW Assist account.  There isn’t a way (that’s public) to add a car to your account.  So have no fear of someone malicious messing with your car.

I’ll keep this blog up to date if/when I do anything in the App Store.

Posted in Apps, Technology
  • Alexander Bernard

    Sound pretty cool, Can you make it work for a 07 ml320 cdi?

    • natelyman

      If Mercedes has an app, I probably could.

  • Matthias

    Love the Maps integration! I agree – I really don’t understand why BMW put out their terrible app in the first place..

  • slykipou

    How can I download or have a copy of it to try? I have a 2012, BMW M5?

  • Dieter Kurz

    wow! sounds great! How can I get a test version???

  • Stan S

    I would be interested in testing. I have a 2013 M3

  • Vi Bui

    I’d be interested in test this. I have a 2013 535i; US version.

  • Andrew Davidson

    how about an android app?

  • Moises

    This app would be awesome, as of June 21, the BMW app remote unlock now requires you to call BMW Assist… that completely defeats the purpose of the app.

  • Nicolas Keller

    Definitely interesting in testing on an iPhone – Let me know if you want my UUID?
    I could also help review your code

  • mohan ponnudurai

    I would love to get this; I have a 2011 535 and 2012 X3.

  • Mike Elmasry

    I would be happy to test this with my 2012 135i. The latest update to the BMW Remote app has rendered it almost completely useless. How can I get a copy?

  • brianphamachek

    Would you mind sharing the documentation you created for the REST API? I would love to make a Windows Phone app.

    • Frank van Ierland

      Anny progress on a windows app, I’m willing to help !

  • thoreaulylazy

    Awesome idea! Does your app overcome the 0.6 mi distance restriction from the regular BMW remote app?

  • Carlos Alvan

    How can I download or have a copy of it to try? I have a 2013, BMW 3 Series Touring?

  • nelson lau

    I have a 2009 335 and 2012 x5 35d… can I try yours app

  • Micks picks

    I also would love the app. I have a 2014 328ix wagon

  • David Preissman

    I have a 2014 x1 and would love to try your app. I’m a software test engineer by trade.

  • John Dyer

    Super interested to try this out, and chance I could get a developer copy? I have 2014 x1. Thanks

  • darren thomsen

    Stupid question but how do you bring an app to BMW they have developers?

  • darren thomsen

    How do you bring an app to BMW?

  • mike walls

    I would love to try your app. I have a 2011 BMW 328i. Thank you.

  • Pablo

    Would you share your app with me? I have a 2014 X5. :)

  • webcommenterdude

    Would love to get a copy of your app for my personal use – I have a 14 X5. Thanks!

  • Saqeb Akhter

    Hey any chacne you could post the API that you used ? I’m trying to do something similar with the Android app which also sucks.

    • webcommenterdude

      I second this request.

  • Leeam

    Hey Nate are you willing to release the documentation of the api that you did? The android version needs work too :)

  • Michael Pröpster

    Awesome. Do you use m2v.bmwgroup.com as your REST service endpoint?

  • curious_reader

    Hi Nate, you did great piece of work would you mind sharing source code on github for ‘education’ purposes ? :)

  • http://www.rokkster.com Adam Stone

    BMW are reeling at the moment. They see the market around them moving from build and performance-centric to technology and connected focused and don’t know how to handle it. It’s not in their culture. Their long-in-the-tooth, seldom updated and hideously unfunctional (UI/UX-less) app offerings are a massive example of this. Great to see someone showing them how it SHOULD be done! For me though the elephant is Connected Drive with its cynical implementation of Twitter which is aimed at a generation who are unlikely to have more than five followers – or an account at all! What makes all of this the more painful is that when the next major upgrade of iDrive comes out, undoubtedly to address some of these failings, BMW have seen fit to ensure that legacy customers won’t benefit. Next time around it’s Tesla for me!

  • Dennis

    Would love to get a copy of your app for my personal use – I have a 14 X3. Thanks