It’s no secret that an enormous amount of advanced tech hardware is making its way into today’s automobiles. Whether it’s for assisted or autonomous driving features, advanced infotainment systems or simple safety enhancements, modern cars are getting a big injection of cool new hardware.
Software, on the other hand, has been a bit more muted. Oh sure, there’s the user interface (UI) on the ever-expanding main entertainment and navigation display, but the truth is there are a lot more software efforts going on beneath the hood (literally in this case). In fact, at the upcoming CES show in Las Vegas, I expect to see several announcements related to car-based software and services that turn your automobile into a nearly full-fledged client computing device.
Traditionally, auto-based services were called telematics, but early versions were limited to basic functions such as what’s been found in GM’s OnStar: a separate telephony service for roadside assistance and beaming back car diagnostic data to the auto company’s headquarters.
Today, there’s an enormous range of different software built into cars, from middleware, RTOS (real-time operating systems—such as Blackberry’s QNX or Intel’s Wind River), to artificial intelligence-based inference engines, and beyond.
In fact, there can be over 10 million lines of code in a modern luxury car, working across all the car’s various computing elements, from 150+ ECUs (engine control units—each of which typically runs a particular auto subsystem, such as heating and air conditioning, in addition to portions of the engine, etc.), to more traditional CPUs and GPUs from the likes of nVidia, Intel, Qualcomm and others.
While much of that software will never be seen or directly interacted with by individuals—it’s part of a car’s overall controls—more and more of it is starting to surface through the car’s driver and passenger-focused displays. Many assisted or autonomous driving systems, for example, do provide some visual cues or messages about what they’re doing, though most of their work happens in the background automatically.
In the case of entertainment interfaces, of course, we’ve started to see the implementation of Apple’s CarPlay and Google’s Android Auto. In neither case, however, do Apple and Google provide the entire user interface for the vehicle for two key reasons. First, carmakers are very reluctant to give up the entire user experience to an outside brand. They want and need to “own” the relationship with their customer by making sure it’s a GM experience or a Ford experience or a Porsche experience, etc. Second, neither Apple nor Google have access to the vast majority of software running on the automobile because of the hardened walls between subsystems. As a result, they can only interact with a tiny fraction of the software running in a vehicle. (Waymo, the recent autonomous car spinout from Google, and Apple’s rumored Titan car project, are likely working on many pieces of this more invisible software, among other things, FYI.)
In the near term, however, the next set of auto-related software developments are likely to be extensions and additions to popular software and services that get more fully integrated into cars and turn them into first-class client devices. Now that PC and mobile phone-like hardware is being embedded into cars, along with cellular connectivity and larger, high-resolution displays, it just makes sense to do so.[pullquote]The next set of auto-related software developments are likely to be extensions and additions to popular software and services that get more fully integrated into cars and turn them into first-class client devices.[/pullquote]
At a basic level, think about entertainment services like Spotify, Netflix and others coming natively to cars, or imagine tighter integration with good ‘ol PIM (Personal Information Management) software, such as contacts, calendars, etc. Incorporating things like meeting updates, conference call dial-in information, and other elements directly into your car instead of via a smartphone app could prove to be very beneficial. Not only would it improve the convenience and integration of using them in your car, it could have a dramatically positive impact on safety. In addition, if texting and other forms of messaging are directly integrated into car displays, for example (and more importantly, can therefore be automatically disabled based on the car’s speed), that could do more to save lives than any autonomous driving system.
Note that because many of these capabilities will be delivered as services, the car doesn’t need to be running a full mobile OS and the apps won’t have be to delivered in a native OS format. An HTML5-capable browser is likely all that’s necessary, making it easier for car vendors and Tier 1 OEMs to incorporate these software features into their designs, as well as increasing the useful lifetime of the car’s technology.
Looking forward, it’s clear that we’re still at the very early stages of bringing significantly more intelligence and capabilities into our cars. Progress is being made, but when you start thinking more deeply about the potential, the full promise of smart cars is yet to come.