We Really Need to Take Infotainment Error Handling Seriously
Imagine starting a new job. Imagine coming into the office on the second day to find your computer is showing a “Loading” screen. Imagine being told the only way to fix it was to shut the computer down, leave the office, lock the door, go away for 15 minutes, then come back and try again. That’s pretty much equivalent to the experience I had this weekend with my newly purchased Cupra Formentor.
My wife and I got into the car, started it, and tried to switch to her profile. Simple enough we thought, but a few minutes later, where the only indication on screen that the system was doing anything was a “Please Wait….” message, we decided to try rule 1 of technology; If it seems stuck try turning it off and back on again.
This time we saw a “Loading Settings” screen, so we set off because, after all, we were trying to drive somewhere to meet some folk at an arranged time. The infotainment experience we had for the whole hour-long journey didn’t change…. “Loading Settings” was all we saw. We couldn’t start the internal Navigation app, we couldn’t start CarPlay. The only thing the screen would do is show that it was loading settings…. for an hour.
Profile switching issues on the Formentor aren’t a new problem. There’s a post on a user forum from over two years ago which talks about the usability problems of switching users on the Formentor, and, given that Cupra was part of Seat, and is part of the Volkswagen Group, it’s surprising, to me, that the infotainment system could have such long-lived usability problems. Doing a bit of research uncovered that the compute platform is known as MIB3, and it’s used in multiple vehicles, and this isn’t an issue which is limited to the Formentor.
It’s also not a difficult problem to solve. Using a watchdog timer, and having sensible defaults, which are two well known software techniques, would ensure that things like profile switching achieve what the driver wants, or falls back to a set of predictable defaults, in seconds. This means that folk can get on with the task they’re trying to accomplish (i.e. driving to another location), and not be stuck with a useless screen in the middle of their car.
I later found out that a software update had been released several months before (MIB3 version 1969, my car was on version 1940). Did the OTA update screen show anything? Nope. I ended up having to go into an engineering menu and manually apply the update from a USB stick. Not exactly something you can expect an average driver to do.
I’m pretty sure I hit an edge-case error (otherwise there’d be a lot more complaints online), so how do we get the automotive industry to take infotainment error handling seriously? Drivers certainly want a reliable infotainment system whatever happens (an hour-long drive with Google Maps on a phone reading out directions isn’t fun when you have an unusable 10.9” screen only centimetres away).
Any issues with Infotainment systems tarnish the automotive brand (knowing MIB3 is a cross-car platform means I’m now cautious about recommending any other VW group car). Leaving errors, even edge-case ones, unresolved for years projects an image of lack of customer care, no matter how good the vehicle is otherwise.
With the move to Android Automotive OS based systems we have an opportunity to hit reset on error handling. We don’t need to, and in many cases can’t, carry over legacy implementations, without review, just to save development costs. We have an opportunity to create systems which gracefully handle errors in a way which works for the driver, and gives them an experience which will leave them focusing on the driving experience, and not why they’re sitting in a car for minutes looking at a “Please Wait” message, or staring at a loading screen for hours, when all they want is some navigation instructions.
At Snapp Automotive we’ve been delivering Android Automotive OS proof of concept implementations for evaluation, and implementations which have been rolled into production, for a range of platforms. We’re focusing on the infotainment system as our core competency so we can make the experience reliable, enjoyable, and something that adds value to the vehicle's brand.
I just hope more manufacturers decide to focus on making infotainment error handling something users can, effectively, not worry about, and that in the near future, I don’t have to spend another hour looking at a “Loading settings” screen instead of getting help to achieve the job in hand; Driving from A to B.