Consumer grade memory just takes bit flips, but ECCs do exist. Do you mean to tell me they don't use them at Airbus?
-dk
This is an embedded system in a high reliability environment. The way these things work is keep-it-simple to an absurd level. I bet you this is some dinky 8-bit RISC CPU that's built on a crazy big process node, and the production QC trace on it will be insane. On these sorts of systems, if you want ECC, you add it to the firmware, but only in the areas you need it, and only after a thorough analysis of (a) the problem it is solving (b) the amount of ECC required to solve that problem (c) the best algorithm to meet the identified objectives. There are many ways to do ECC - including just duplicating variables n number of times - which has the advantage of being very easy to implement and formally verify while being less efficient at RAM utilisation vs a Hamming Code, but even that depends on the statistics of your error conditions.
The point is that, sure, they could add some generic hardware ECC, but that ECC can fail (if there are too many bit flips, if the ECC logic itself gets bit flipped, or there is a design error for a particularly input sequence, etc etc). Maybe you win out overall, maybe you don't - the problem is that you'd have to run a complete analysis to know. That means you have to now add ECC hardware failure modes to pieces of software that did not need ECC before. I mean, sure, maybe you win, but maybe you make it worse, and have to develop extra software to deal with the new hardware failure modes. Whatever the outcome you'll have to do a boat load more documentation to make sure.
I bet you it took them less than a day to identify a fix for the code and update it. It would have then been thousands of hours of work to update all the documentation and thoroughly verify the new code against all the other requirements on the system.
If you want a good example of how quickly these supposedly simple systems can get complicated, look into the CAN bus CRC bug. This fault is present on EVERY system that uses the CAN bus (basically any vehicle since the 1990s). It is an extremely subtle bug involving the error detection system that is obvious once you're show it, but the very smart people who designed it, along with thousands of engineers who worked with it, didn't spot it for around a decade. Even worse when they developed CAN 2.0 they tried to fix the bug, and didn't even get that right.