High Mobility Car Data SDKs Now 100% Open Source

January 22, 2020
Today we are excited to announce that the full suite of our SDKs has been open-sourced. Open source software has always been a passion of our engineers. Making the source code of our SDKs public has always been the goal but we have taken our time to get it right. For many years, we have had open-sourced peripheral libraries on our GitHub account, and published internal libraries that we believe could be of use to others. Today the iOS SDK, Android SDK and Node.js SDK, each of which are called HMKit, join this family.

Highlighting the important parts

The SDKs simplify the integration of car data into any of the above platforms, removing from the developer the burden of managing details like user consent, security and native code bindings. We'd like to highlight the most important aspects: transparency is key in any software that deals with security and cryptography — by making the SDKs open source we ensure that API access to vehicles remain secure, all software we open source is under the permissive MIT license, and all internal dependencies of the SDKs are also open-sourced.

So far the automotive world has not always been known for its transparency and easy accessibility. We want to change that. In the digital world, it is our belief that the path forward is one that is centered on the customer, his/her privacy rights and a wide choice of high-quality services.

It’s been our mission to build a powerful API platform that embraces all of these qualities. Since the beginning of 2019 we have been connecting third parties to car data through our SDKs and REST API. With this latest move to make all our SDKs 100% open source, we minimise any friction for third parties entering the mobility industry.

Bonus: Auto API protocol open-sourced

In addition to the SDKs, today we are also open sourcing the Auto API, the car data protocol which is used throughout our platform. As all car manufacturers use their own proprietary data formats, we have been using the Auto API for years to remove the fragmentation. The Auto API delivers one data format through our SDKs, whether the data comes from BMW, MINI, Mercedes-Benz or another car manufacturer altogether.

The Auto API has an array of parsing libraries that have been open source since the beginning, including Swift, Java and Elixir. With the release of the Auto API’s 11th revision, we have published the protocol definition itself as well. The definition is documented in YAML, and includes almost 300 vehicle-specific data points. The protocol is specified on a binary level and is applicable to any environment.

Explore for yourself

We hope these open source libraries will further simplify the way you work with car data and vehicle APIs. Let us know what you think!

HMKit for iOS

HMKit for Android

HMKit for Node.js

Auto API

Explore all libraries