← Back to context

Comment by rglover

7 months ago

I can't for the life of me understand why infotainment systems knock so many engineers for a loop. Is there a particular reason (industry/domain-specific) beyond just low-quality software development?

My Mazda 3 (2018) just had a class action lawsuit for its infotainment system which, completely at random after years of normal operation, starts clicking on menu items and scrolling about the settings (only to stop and not do it again for a couple of months). It can get so bad you just have to disconnect any devices and drive in silence/with the AM/FM radio.

I worked at a company that did software for these connected infotainment system. They cost cut those things to the bone, minimal ram, minimal cpu, shit screens. Even in the high end models.

Gotta remember that the car radio has always been a cheap gimme.

  • Gotta remember that the car radio has always been a cheap gimme.

    Not really. Some of the hardware that you could get in the 1950s-1970s timeframe was great. Heavy chrome knobs and bezels, permeability-tuned front ends with separate RF stages... electromechanical mechanisms that seemed like witchcraft when I took them apart as a kid, and would still be cool to play with today.

it's the consequence of not vertically integrating, having 20000 different ECUs each for a specific purpose and trying to nickel-and-dime suppliers on all of them, and the lack of urgency that traditional manufacturers and tier-1 suppliers have for adopting modern software development practices

Hardware companies outsource these things to the lowest bidder in "best cost countries". At home you have a couple "engineers" who track requirements, but are software illiterate. In the "best cost country" you have dozens/hundreds of people who have absolutely no investment in the product and are not particularly skilled, and who get paid so that that engineer can make a checkmark after some requirement in the shortest amount of time. Nobody in that entire pipeline cares that the system feels awful to use, that it glitches sometimes or that the CPU is totally over utilized.

Tesla was revolutionary because they actually had inhouse software developers, who could build software.

You get a new device every year and teams of professionals are constantly churning updates for it.

With cars, you don't get to get a new device, it has to be consistent and keep working and you had better make it all work with a skeleton crew.

I recently did some testing of Bluetooth connecting an Android phone to a reasonably new Mercedes. Being a "luxury" brand, you'd think the Mercedes would have good infotainment software, but I found at least 5 bugs in the GUI in about 1 hour of testing, and I wasn't particularly looking for bugs, just testing what I thought would be the happy paths for Bluetooth connection. The Android phone, on the other hand, did its job flawlessly.

I know software and embedded systems well enough to know all of the issues I found were preventable, if anyone cared.

The car seems well built in many other respects. It doesn't look like the problem is engineering ability.

(See also: Set-top box GUIs that are painfully slow to render menus, scroll, search etc. on hardware that I know can render 10-100x faster when programmed to.)

  • As you alluded to, the answer is they don't care. Car companies look at software like it's any other line item on the BOM. Like a bolt or a gasket: Source it as cheaply as possible and spoon it onto the product somewhere on the assembly line. I see fit-and-polish mistakes all the time in car infotainment. Text that can't handle unicode, icons that are misaligned by 1 or more pixels, connections dropping and coming back, audio mixing problems, things drawing outside their "windows." Nobody cares--they get to the drop dead date when the software needs to be on the assembly line, hand it over, and start flashing devices.

    • I agree with you, and I can also easily imagine how this comes about with the software teams or contracted companies that do the infotainment system being completely different people from those who design the rest of the car.

      But it was still a surprise to see this a lack of attention to detail in the infotainment system, in a car where the brand itself is all about giving a lot of attention to detail in everything else that's visible, the comfortable mouldings, pleasant interior lighting, different kinds of cup holders, nice place to wirelessly charge your phones, seat controls and sensors, etc.

They’re being cheap. None of it is vertically integrated and it’s all outsourced to the cheapest third world contractor they can find.