13 comments

[ 2.2 ms ] story [ 71.1 ms ] thread
The line about how the engineers view the tests as an optimization problem really resonates with me. When the results of tests administered in an artificial setting becomes the primary method of assessment, such a trend will inevitably emerge.

Take school examinations for example, in highly competitive environments where test scores alone are the major determining factor, students begin to consider the benefits of forgoing comprehension of the material for rote learning.

These are both good examples of Goodheart's law — "When a measure becomes a target, it ceases to be a good measure."[1]

https://en.wikipedia.org/wiki/Goodhart%27s_law

Thanks for that, I remembered that this was a "law", but I never remember the name, and whenever I try to tell anyone I get it wrong or express it in a confused manner.
The statement that the cheating was to reduce AdBlue usage is not the complete answer to "why", as many of the affected cars in the US didn't use after-treatment at all.
> He then disassembled the firmware, which looked quite a bit different than disassemblies of normal code. It looked somewhat like electronic schematics had been turned into code, rather than spaghetti-like output from other kinds of programs, he said.

The actual logic diagrams and definitions of this data for Bosch ECUs (sans the emissions cheat, obviously) can be found in the "Funktionsrahmen," leaked but easily available from many VW tuning forums online. It's quite fascinating and worth a look for anyone interested in how modern ECUs work (it's a far cry from the oldschool "fuel table" style of engine management).

Wow, that's an acronym soup if I ever saw one:

http://s4wiki.com/wiki/Tuning

Wait until you see some of the logic diagrams (this is the one for intake air temperature sensing):

http://imgur.com/KWob8Xf

These look like diagrams from Bosch Otto ECUs (ME series).

FWIW, the ECUs in question (EDC17) use much more descriptive names:

Epm_nEng - engine speed; InjCt1_qSetUnBal - set quantity for first injection (roughly); VehV_v - vehicle speed

I much prefer the EDC17 style, but your mileage may vary.

Oh, you're right! I've never owned a diesel so I've only looked at EDC17 in passing. :)

The variables certainly aren't as cryptic... I think even a native German speaker would have trouble with the ME7 ones.

(comment deleted)
Interesting quote:

"he noted that there is a 12KB block of code that is used to ensure the tachometer always shows 780 RPM when the car is idling. Even though the engine is not that steady, car owners want to see that value hold steady at idle, so car makers effectively lie to satisfy them. Domke said that it is clear that lots of different kinds of cheating is going on in the ECU and noted that the speedometer doesn't really show the speed of the vehicle, just something related to it."