Hacker News new | ask | show | jobs
by trueismywork 408 days ago
You only have to develop those interfaces once for high end cars and get your money there. Rest is then just one of the small modifications.
1 comments

Not at all, a high end car will use an entirely different architecture to a mid/low end...

When you target a certain feature set it can make sense to use one big central processor, for lower end things it's more sensible to use limited smart sensors (from multiple vendors, for absolute cost minimums).

And it's generally not cost effective to move an old high trim platform down range due to changes in hardware and regulations.

What you mean by different architecture here? I've never seen a situation where manufacturers choose fundamentally different architectures between price points on the same platform. I feel like I'm misunderstanding what you mean though.
Someone like Ford for example will have several software platforms, some for low cost vehicles, some high, some that are adaptable between trim levels.

So as you go up in features on some model "the BigTruk" you might be going through variations of one sw platform, or jumping between platforms.

Some have several platforms for high and low cost based on centralised vs distributed, so for example an s class will not have much software or hardware shared with an a class.

Apple doesn't have different software platforms for low vs high cost phones. Why is a car different? It doesn't even have as much functionality.
I think it's fair to say that the software in a modern car contains lot more functionality than an average smartphone. Drivers just aren't aware of how much is happening in their car each second.
To someone that knows nothing about car SW architecture, that is surprising to me, I would have expected a number of control loops for things like fuel injection, ABS brake control, drive-by-wire, EV battery charge and discharge, etc. each running on their own processor due real-time safety considerations. These I would expect to be different implementations and parameterizations of the same control theory maths.

On top of this comes some functionality to control windshield wipers, lighting, AC, seat heating, etc. Stuff which is probably not top-tier safety critical, but still important. I would expect that stuff to run on one, maybe two processors.

Then comes the infotainment system, running on its own processor.

Sensors are supplying data to all processors through some kind of modernized CAN bus and some sort of publisher/subscriber protocol. Maybe some safety critical sensors have dedicated wiring to the relevant processor.

A lot of variations on this seems possible with the same SW platform, tuned and parameterized properly. The real-time safety critical stuff would need care, but is doable.

Am I completely off the mark? Can you give some examples of where I am going wrong?

I mean there is just no way that that can be true.
Because a low and high cost phone do essentially the same thing, whereas a high trim car will do things like steering assistance in a way the low trim does not do at all.

And to support the differences high trim will have different sensors and differently distributed compute.

This means that the infotainment system will be running in different places on different cars.

Yes, different platforms have different architectures. Within a platform, the system level architecture will be relatively fixed. OEMs will part subsystems out to different tier 1s for different vehicles on that platform, but that's (ideally) just plugging different boxes together on the OEM side.

There's a lot of very expensive development tools (e.g. dSpace simulators) that rely on this model of automotive development.