It all comes down to cost. At scale, testing hardware is appreciably more expensive than testing software. The former requires specialized machinery that costs the soul of your firstborn, and the logistics overhead for each do-over means long iteration times. The latter can be done with a CI pipeline for pennies worth of compute in a fraction of a working day.
Stuff like climate control and radio/Bluetooth were included in many/most cars in the last decade. Expensive as they were, the cars were a lot cheaper than today's cars. And they just worked, which means they were either so simple that sophisticated testing wasn't necessary, or they tested it thoroughly.
I don't think they're saving that much by ditching them and going to SW.
They also didn't need updates (well, the Bluetooth module may have, but nothing else).
It definitely was nice not to have to worry whether the climate control may stop working because the radio was modified. Or because of any update.
As a driver, dumping everything into one SW system has significantly degraded my experience. What I gain ("Ooh, I can now use Waze on a bigger screen!") is minimal.
> The latter can be done with a CI pipeline for pennies worth of compute in a fraction of a working day.
I'd appreciate the point if they were successful at it. As it is, they're not. It's rare to find a non-buggy car.
At scale, testing software is appreciably more expensive than using hardware. That's why at most people test a tiny slice of it, and ships out broken software in the hopes of fixing it later. Testing hardware is expensive because nobody thinks it can be fixed cheaply afterwards.
See also: the article linked to this thread.