Co-written by Abhishek Adappa and Sunvir Gujral
If you’re writing connected-car applications around services like telephony, location, and Cellular Vehicle-to-Everything (C-V2X), you’re in the right place. As much as 90% of net customer additions in wireless last quarter came from connected cars and IoT devices, so your future looks pretty good.
But would you rather spend your time building new features into your apps, or sweating the details of passing messages to and from the modem?
Pretty easy choice, isn’t it?
With the Telematics SDK from Qualcomm Technologies, Inc. (QTI), you don’t need to slog through low-level APIs and documentation scattered across multiple, and sometimes unrelated locations anymore. We get that you’re spending too much time down in the weeds, so the SDK abstracts those details in a familiar development model that gives you easy, high-level access to low-level functions.
Faster, easier telematics application development
Most parts of the telematics stack have their own messaging protocol and interface. There’s little commonality among software patterns across areas. The Telematics SDK fills that programming gap by offering high-level, C++11 software APIs that expose uniformly the modem services your applications need to perform tasks like making voice calls, sending and receiving SMS messages, setting up data connections, and getting location fixes.
Plus, instead of lumping together APIs with chip code and making everything proprietary, we’ve made them available in a two-part framework:
- The header files, documentation, sample code and stub libraries are all open source, licensed under BSD and free for download from the Code Aurora Forum (CAF).
- The implementation (source code or binary code and unit tests) is available under license.
That way, developers without their own license to the implementation have everything they need to write an app and compile it by linking against the stub libraries. Working with a tier-2 provider who has a license to the source code, developers can use the Telematics SDK to write apps for modems that have the Telematics SDK supported.
The framework allows for licensees who build telematics modules to collaborate with the non-licensee developers who write the apps they need.
What’s in the Telematics SDK?
We’ve also designed the SDK so you can work in the kind of development environment you already know. It is set up for object-oriented programming and type-checked operations, with support for GNU Debugger and debug logs.
To get you started, the SDK includes version-specific header files, sample apps, and documentation for each API. We’ve designed the Telematics SDK for backward compatibility among releases. As we publish new versions, you need only recompile your existing apps. There’s no need to change your source code each time we update the SDK.
We’ve included end-to-end demo applications for two different use cases. The first is an emergency calling (eCall) application. It provides an interface on the vehicle console to initiate eCall and send a minimum set of data (number of passengers, gas level, etc.) to an emergency center. The second demo is a location tracker app that helps locate and track your automobile. The app responds to specific SMS messages received by the Telematics unit in the car by retrieving its location and sending an SMS back with that information.
To exercise APIs in the SDK, we’ve provided a console-based, menu-driven test application. You can also refer to it to see how to program for a given set of APIs.
The SDK offers well-documented APIs and the same set of standard patterns across the most useful areas of telematics. It’s designed to save you development time and help you get your apps into vehicles more quickly.
What can you do with the Telematics SDK?
You can use the current release of the Telematics SDK to build high-level functions like these into your apps:
- Telephony — Phone factory, phone manager, call manager, SMS manager, signal strength
- SIM card — SIM information, SAP operations
- Connection management
- Emergency calling (eCall)
- SDK logging for each subsystem
Now that the Telematics SDK is ready, we encourage you to see how you can take advantage of its high-level APIs to build your connected-car applications. There is an API Reference and User Guide available to help walk you through the steps to get started. And with the recent announcement from Qualcomm Technologies, Ford, and Panasonic on regarding deployment of C-V2X, you are in the right place at the right time.