Understanding the Amazon Alexa APIs for In-Vehicle Use: Part I
<Understanding the Amazon Alexa APIs for In-Vehicle Use: Part I>
This two-part blog post will explore Amazon Alexa APIs and their applicability for in-vehicle use.
Amazon’s virtual assistant Alexa is currently the dominant voice recognition technology for in-home devices. Thanks to an open development ecosystem, users can choose from Amazon’s own devices (such as Echo, Echo Dot, Echo Show, etc.) as well as various third-party products including smart speakers, smart TVs, in-vehicle assistants, etc. Through its Skills APIs, Amazon has opened a powerful ecosystem for many third-party devices and services, dramatically extending Alexa’s capabilities.
Car companies are not far behind the consumer
electronics industry in adopting Alexa. CES 2017 saw a flurry of Alexa integration announcements from companies like BMW, VW, and Ford, and Hyundai has become the first automaker to enable Alexa compatibility with some of its connected vehicles.
Part I of this blog, describes Alexa’s capabilities and examines current auto industry projects around Alexa. Part II will offer a description of the available Alexa APIs along with a suggested architecture for in-vehicle use.
Alexa is typically activated with a wake word (e.g. "Alexa") or button press. It then listens to user’s spoken commands and reacts with audio or, on devices with screens, visual responses.
Alexa comes with many compelling functions built-in, and the extensible architecture of Alexa Skills API lets third party developers add new features that can be enabled by the user.
The main built-in functions of Alexa include:
- Stream music: Alexa can play a song, artist, album, playlist or genre from a user’s Amazon Prime Music Library. Alexa also supports a growing number of free and subscription-based streaming services such as Pandora and Spotify, as well as Internet radio services such as iHeartRadio and TuneIn. Not all of these services are available on non-Amazon devices.
- Listen to audio books: Alexa can play audiobooks and other premium audio programming from Audible and Kindle Unlimited.
- Read the headlines: Alexa can read the headlines from the many different news providers.
- Sports updates: The user can ask Alexa about the latest scores and upcoming games for their favorite sports teams.
- Traffic and weather: Alexa will read the weather forecast for the set device location. It will also check for traffic accidents on a predefined commute route.
- Timers and alarms: The user can tell Alexa to sound a wake-up alarm on a predefined time and day of the week.
- Answer questions: Alexa can look up basic facts, solve math problems, make conversions, or even tell a joke.
- Smart home control: Alexa features native compatibility with some IoT devices such as smart bulbs, smart switches, connected thermostats, and more.
- Search for places: Alexa allows the user to search for places near the predefined device locations to find local restaurants, shops, and other businesses.
- Find movie showtimes: Alexa can help the user find movies playing in theaters nearby or in another city.
- Reminders and calendars: Using their voice, the user can set, browse, or cancel reminders with Alexa. If the user associates their calendar account to Alexa, they can review upcoming events or add new events using their voice.
- Shopping and to-do lists: Alexa allows the user to create, access and manage their shopping and to-do lists.
- Purchasing: The user can ask Alexa to place orders for Prime-eligible physical products. On supported devices, the user can also ask Alexa to place orders for music.
Alexa is available in the United States, India, Japan, the UK, Germany, and Austria.
Amazon enables developers to create customized experiences for third-party devices or services. The Alexa ecosystem touts more than 25,000 skills from companies like Starbucks, Uber, Capital One, and many more. The breadth of skills available offers one of the biggest advantages for the Alexa Voice Services success.
To help developers build custom skills, Amazon provides the Alexa Skills Kit (ASK), a collection of self-service APIs, tools, documentation, and code samples. In Part II of this series, skills are described in further detail.
<Alexa and Cars>
Automakers traditionally do not hurry to adopt emerging technologies such as Alexa, preferring to wait until new technologies have firmly entered the mainstream. Because Alexa does not require additional hardware, though, it can be implemented via software update at little risk or effort, mitigating the typical hesitation from automakers.
Control Cars from Home
The easiest way for automakers to enable Alexa for their customers is by creating custom skills that the user can access from their home Alexa-enabled devices (such as Alexa Echo or Dot). The custom skill can control the vehicle through the car’s existing telematics infrastructure. This enables the user to operate certain basic vehicle functions such as locking doors or starting the vehicle, in much the same way a customer would use the car’s companion app or website. It is worth noting that this approach only works for vehicle models that already support remote control functions.
Last year, Hyundai became the first mainstream automaker to create a skill for Alexa-enabled devices, allowing the consumer to control the vehicle through the telematics system. This particular Skill enables the user to remote start and stop charging of the Hyundai IONIQ Electric, IONIQ Plug-in and Sonata Plug-in, remote engine start with climate control across all supported Hyundai models, remote door lock/unlock across all Hyundai models and remote horn/lights across all Hyundai models.
As previously mentioned, is easy for automakers to enable such functionality, as it does not require any hardware or software changes in the vehicles. Vehicles that already have remote control functions simply need to create a “bridge” and a corresponding Alexa Skill that can translate voice commands to actions.
The diagram below illustrates this approach:
In this scenario, the OEM provides a custom skill that the end consumer can enable for their Alexa devices. Once enabled, the user can ask Alexa to redirect commands to that skill. The skill will receive and “parse” the command, e.g. lock the car doors. It will then communicate with the car’s telematics service for that car and send the request. As a result, the telematics service will send a message to the telematics box (or telematics control unit) in the car, which will perform the action. e.g. lock the doors. The response from the operation will be sent back through the telematics server and the skill. The skill will then generate a text to speech response, which the consumer will hear through the device.
One of the key challenges of this approach revolves around security. Alexa does not yet have built-in security features and cannot perform voiceprint analysis, for example, so it cannot tell the difference between the legitimate user’s voice, a family member, and that of a stranger. Instead, these systems attempt to secure access some sort of PIN or other type of protection (e.g. don’t allow to unlock the car from Alexa, only lock it, etc.). These solutions are far from perfect, however, and the potential for abuse is a real issue.
Alexa in the Car
Arguably, Alexa voice services are much more useful inside the car than outside. The built-in speech recognition native to many cars is usually far worse than cloud-based solutions such as Alexa, Google Now, Siri, or Cortana. For the driver and passengers, Alexa’s natural speaking voice interface is much more natural and less distracting than the set of rigid commands that many in-vehicle systems use. In addition to Hyundai, BMW, Volkswagen and Ford have all announced Alexa integration in the vehicle. Ford , which provides support for Alexa in SYNC3 equipped cars via the companion smartphone application, exposes the standard Alexa functionality (such as music, weather, purchases, etc.) and doesn’t yet allow control of the vehicle.
Asking for the weather while driving might be useful, but controlling the in-vehicle navigation, climate, and local audio player is much more useful if can be done with Alexa. With custom skills many of those use cases can be achieved, as we will discuss in Part II of this blog.
Interestingly, Garmin recently announced an Alexa-enabled navigation device called Garmin Speak™: https://buy.garmin.com/en-US/US/p/591054, an aftermarket device that the user can install on the windshield. It works with the user’s smartphone via Bluetooth to get connectivity to the Alexa cloud. In addition to the standard Alexa services, Garmin provides a custom skill that allows the user to request spoken turn-by-turn instructions via a special Garmin skill.
Part II of this blog will go deeper into the specific APIs and their applicability and limitations in the automotive context.