Hacker News new | ask | show | jobs
by SlowRobotAhead 2681 days ago
>Is anyone making reasonably well-appointed vehicles without throwing everything and the kitchen sink in there?

No. Honda, Toyota, Fiat, GM, everyone seems to have the same problem. For what it's worth, FiatChrysler and GM have at least had the sense to set higher requirements for vendor/suppliers than Toyota.

Specicially, after Toyota's "unintended acceleration" issues (mostly floor mats, some APPS/Pedal issues) it was discovered that their ECU taking accelerator pedal position (I'm not sure if it was the PCM/ECM specifically) had over 12,000 GLOBAL VARIABLES! Let that sink in for second.

After a code audit by iirc UPenn the bug was not found, but that wasn't a glowing review, it was ad admission it was impossible to prove/disprove.

Edit: I take that back. There are Chinese brands I drove in Malaysia and export-only Nissans that while being wholly illegal in the US or Europe are still barebones vehicles.

2 comments

I've read the audit and basically it was done by a guy with no clue about the automotive world. He compared the code with the one made at nas. In the end they indeed did not find the root cause, but they had to say something as they are the "experts". So they pointed at "bad practices" like global variables.

What if i tell you that a pretty big chunk of the cars on the road are running software which are using global variable as means to exchange data between modules ? Well, that's how it is done and it isn't less safe. The last SW i worked with had 20000 global variables and 60000 parameters that the calibration guys could fiddle with.

Serious suppliers are applying safety standard and methodology and are not rushing the FMEA. Countless times my customer cursed at the safety guys for postponing the SW because they were not finished with testing, but this very same customer never had to stand in court for a safety issue with the SW, and so are many other carmaker.

When the Toyota pedal issue came out, we just could not believe that Toyota did not have the gas pedal override by brake safety in their SW.

> over 12,000 GLOBAL VARIABLES

How many global variables do each of Toyota's competitors have?

honestly, in the context of an embedded system, I'm not bothered by this.

I'd expect to see very little dynamic resource allocation, so you could probably put a permanent name to almost every byte of data in the system.

Remember, once it's compiled, everything's a global anyway, especially on chips small enough to not be set up with a strong multi-tasking and memory management model.

Does it matter if all your friends jump off a bridge?

Toyota got caught with inexcusably bad software practices. There is a reason Chrylser, GM, Ford, and others are pushing it out of house to suppliers.