upvote
Those UIs are made by embedded software engineers that have been in the automotive sector for 40 years. They have no clue how to make a modern functioning UI. The company then hires a UX expert that draws out a full plan. The software engineers implement it, it looks identical to the UX specification… but occasionally drops to 10FPS.

Probably because an important message passed by on the CAN-bus and that got a bit more priority from the CPU than the GUI

reply
I think IF they had hired embedded software engineers with 40 years of experience, those people would have delivered a UI that meets or exceeds all UI needs (even if it didn't look as visually appealing as it could). A 40-year embedded veteran knows how to write real-time code, structure the system and make it work under all conditions.

In fact I wager the OPPOSITE happened -- that they hired or outsourced software to people who have "web technology experience" and the UI and graphics architecture is a mishmash software stacks hastily thrown together (read: not architected).

Jaguar has a similar issue with the I-PACE where the HVAC system couldn't keep up with the knobs and would lag. A real embedded engineer who worked on real-time systems would know how to properly handle a quadrature encoded knob and NOT lag. A web-technology-first person who slapped something together using nodejs and/or Python would likely not know.

reply
CPUs do not talk to displays via CAN.
reply
Do you have a specific example of a function that exhibits this?

Both my BMWs (one each of the last two generations of iDrive) do not in any noticeable capacity, nor did my 2009 one with what was then known as "professional" navigation.

reply
It's actually a little harder than people outside the UI framework space might think (there's really not a lot of time per frame; it's easy to put too much work where it doesn't belong; it's easy to regress if you're not monitoring for it after code changes).

It's core to usability at this point, though. They should make the effort.

reply