Tuesday, February 23, 2010

Toyota in the hot seat

I've been watching the House Energy and Commerce Committee hearings and I'm afraid Toyota is in more than the hot seat.

Before I excoriate Toyota, let me say that I have owned a Toyota vehicle for personal use since 1983. I don't lease, I buy .. in fact, I buy and hold. I have had my current vehicle for almost 12 years and have absolutely no regrets. That said, Toyota blew it - BIG TIME!

My background is computers and programming control systems. Suffice it to say I've been working with computers since the late '70s and I programmed control systems for 13 years. Based on the testimonies I heard this morning, Toyota has had a problem with their Electronic Control System (ECS) for years.

We used to call them AFEs (another f'ing engineer); kids who just graduated from college and knew everything there is to know about their (brand new) profession. They were tasked with the unenviable job of writing code for or designing systems that they truly didn't understand. This isn't really a problem in and of itself in, say, an accounting system, but when you are interfacing with the real world... oh boy.

Think of airplanes. For years, when 'fly by wire' first arrived on the scene, experienced pilots bemoaned not having "control" of the new planes. There were no "real" control systems; everything went through a computer. If you wanted to bank right, you turned the yoke to the right, the computer control system received the signal and then the computer sent the proper commands to the related physical systems to accomplish the turn. The yoke wasn't physically attached to anything but the computer. If the computer failed the whole thing would be nothing but a flying stone. That is why there are backup systems (3 in the Shuttles as I recall).

There are (probably) no backup systems in (Toyota) cars. I don't know this for sure since I am not into cars, but it makes sense since cars are a consumer item and the idea is to cut production costs so as to maximize profit. No, I am not saying that is a bad thing, that is just the way it works.

Anyway, my bet is that some AFE somewhere back up the line (if I understood the testimony I heard this morning, somewhere back as far as 2000) wrote at least part of the code that is currently used in the ECS. Because of it's age this code was and has been considered 'mature' and 'functional.' Oops. It probably has an intermittent bug. Happens all the time.

Since reverse engineering is costly and problematic, nobody ever bothered to test and verify the old code. Worse, since it was considered 'functional,' nobody ever rewrote it. (At least not until recently- ergo the 'flashing' of the ECS.)

Now, I know none of this for sure; I am speculating. It is, however, an 'educated' guess based on years of experience crafting, writing and troubleshooting control systems. If it was me, and I was working for Toyota and hearing about these problems for the first time it would come down to this:
1. Can I reliably reproduce the problem mechanically?
2. What is the common denominator between the various vehicles?
In the final analysis Toyota made a series of assumptions and you know what that means.

No comments: