New Jaguar XJ Suffers Blue Screen of Death
An anonymous reader writes "CNET UK is reporting that it crashed a £90,000 Jaguar XJ Super Sport — one of the most technologically advanced cars on the planet today. It's not the sort of crash you'd imagine, however — An unforseen glitch somewhere within the car's dozens of separate onboard computers, hundreds of millions of lines of code, or its internal vehicular network, led to the dramatic BSOD, which had to be resolved with the use of a web-connected laptop."
If you RTFA, there' no mention of Windows. The Car just wouldn't start. They disconnected the battery, and reconnected it.
FTFA: "Over the minutes that followed, the software analysed every one of the car's digital systems in search of a problem. The culprit could have been any number of things -- the Bosch-supplied, Linux-based infotainment system, the Visteon-supplied virtual instrument display, a heat-ravaged processor, an errant mouse somewhere in one of the car's hundreds of miles of wiring, or the dodgy contents of a CNET UK memory key in one of the XJ's two USB ports."
Lots of systems running together, in a very rugged environment (for a computer, anyways)... I don't think it's terribly surprising that this could happen. In fact, the only surprising fact here is that it doesn't happen MORE often than it does.
They're not, though. The car didn't BSOD, and TFA makes no mention of them running any Microsoft software. They did, however, mention Linux.
I heard you like car analogies, so we put a computer in your car so you can crash when you crash.
Wait, that's not actually an analogy.
In fairness, the title is misleading: Blue Screen of Death implies Microsoft Windows, and there is no Microsoft Windows involved in this story (at least, not in the car). Indeed, the only OS mentioned in the story is Linux.
I despise Microsoft and Windows, but I do so for REAL reasons, which this story IS NOT. The summary should be fixed to note this wasn't a BSOD, that Windows was not at fault, etc., just to be fair and consistent.
As it stands, the summary is just prejudiced and misleading.
(oh, sorry. forgot where I was for a moment.)
www.eFax.com are spammers
I still don't get it - why cars need so much software? Older cars worked quite well with just mechanical controls, so why there are so many computers in new cars?
Non-essential systems do not count - if the radio/usb player fails, I'll be annoyed (and I can replace the player with a simpler tape deck if I want to), if the steering or brakes fail, I'll be injured or dead.
So, why the millions of lines of code? Are they really necessary for the system to do the job what simpler (and more reliable) mechanical linkages did in the past (steering, brakes, throttle, clutch, gear selector)? Mechanical devices fail, but they usually give "notice" before doing so - you can see the rusty rod or the cracked link before it fails. Oh, and you still need the mechanical device (the wheels somehow have to turn in the direction that the user turned the steering wheel). Also, people seem to be able to design mechanical devices that work as intended, while software is almost always buggy.
My 28 year old car somehow seems to be able to work and get me from point A to point B even though the tape deck has more complex electronics (well, it has a RDS decoder, Dolby B and C NR, logic controls, LCD display, ability to control CD and MD changers etc) and the electronics of the car itself consist of a few relays.
Lucas went defunct in 1996. The lord of darkness went dark. But the spirit lives on. The story reminded me of a TR-6 I had in college. You never knew what would happen when you turned the key. Nine out of ten it would start.
It did fail safe. It didn't let the car even start. "Parked" is about as safe as you can get, for a car.
Can you be Even More Awesome?!
The critical systems - brakes and steering aren't drive-by-wire
Brakes absolutely are drive-by-wire these days. That's how stability control works. It's an advancement on ABS where a central computer can modulate the brakes for all 4 wheels. It's not exclusively electrical, it's still electrical control on a hydraulic system, but the ECU very much has the ability to screw up your breaking. We had a case on our SUV where the stability control system got confused, the skid light started blinking on the dash, and the car started jerking as the ECU tried to correct a skid or spin that wasn't occuring. All this on dry pavement at 50mph.
Whatever problem they are left stranded waiting for a certified Jaguar technician. On the other hand I can fix my 1985 Jimny with a hammer and a screwdriver and will survive an EMP blast! (I think the stereo is only thing that contains digital components)
US-UK-Israel: The real Axis of Evil
What?!
"hundreds of millions of lines of code"
I don't believe that number
Just a bogoword from an illiterate.
.
Depends on where you park it, or where the car parks itself if its computer crashes and the fail-safes cause it to park itself.
Driver Dies After Officers Crash Into Stalled Vehicle
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
I was going to read the article, until I reached this line:
"Our first instinct was that we'd exhausted the car's battery by watching too much Eminem on its integrated DVD player"
Then I figured out their problem. The car simply could not take take it anymore and once it realized they were going to load an 8 mile DVD, committed suicide.
Well, I *assume* the power windows did not respond to user input.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
I got called crazy when I brought up this site's anti-MS pro-linux slant yesterday. The thing was running Linux and it's stillbeing blamed on Microsoft!
It's a Bosch dash running Linux for the infotainment. I much prefer Harman dashes that run QNX like Audi, BMW, and a number of other car makers use... totally more reliable IMO. I've actually worked hands-on with some of this stuff, and I must admit, I trust QNX much more for mission-critical applications, like automobiles.
That is NOT a Troll, as any (old and experienced) mechanic can tell you!
The British car and motorcycle industries tried manfully to commit suicide. They built pretty, beautifully finished, delicate unreliable junk.
That worked until Japan and Germany ate their lunch by producing tough, reliable vehicles you didn't have to be a skilled mechanic to keep on the road. I grew up working on both the cars and bikes, and have no desire to go back. They were fine vehicles by 1940s reliability standards, but that was a long time ago even in the 1960s when the decline began.
Here's the classic on the Britbike implosion, the car story is similar:
http://www.amazon.com/Whatever-Happened-British-Motorcycle-Industry/dp/1859604277
"This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
Many years ago, I was at Ford Aerospace, where we had some slight involvement with the Ford EEC IV engine control module. The designers of that were paranoid about a failure of the module making the car immobile. So they did the following:
Designers today are not being sufficiently paranoid. They're assuming that the entire system stays up and that tow trucks are easily available.
We don't need no sticking fail-sa
I agree; we don't need any fail-safes that stay stuck in the fail-safed position after the situation has been rectified :-)
Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
Why aren't thermostats the round Honeywell mechanical jobs anymore? They worked.
Why are egg timers in your kitchen all electronic now? Mechanical timers worked.
Why does your washing machine have electronic controls now instead of the big mechanical dial with 4 modes on it?
Why is your electricity meter an electronic counter now instead of the mechanical spinning thing with 5 dials?
Why does the tape deck in your car have an electronic tuner instead of a dial, variable capacitor and a string loop with a needle on it to indicate the station?
Why are watches electronic (quartz) now instead of complex movements?
The answer is the same in all cases. It's because software and electronics are cheaper and do the job better than the old mechanical device did. Your washing machine can have more flexible modes, like the ability to extend the rinse cycle in increments, or even add a 3rd rinse. Your thermostat can have a setback mode to save energy when you aren't there. Your egg timer can be set to beep 5 minutes before the timer expires. Your electricity meter can count daytime electricity different than nighttime electricity. Your tape deck's tuner can select stations more accurately, have simpler preset stations (ever see how the 5 preset buttons on a radio with a tuner know worked? very complex) and is much smaller. Quartz watches keep time more accurately than mechanical watches, last longer and can have chronographs and other functions without adding a lot of cost.
And in the end, it's really the flexibility of software that wins out. Software can be programmed to do a lot more complex things and can be reprogrammed to do it slightly differently very cheaply, no need to change tooling as you would to change mechanical parts.
Remember what mechanical adding machines and cash registers looked like? What they worked like? A mechanical cash register had to have far more buttons (10 for each digit) and was limited in what it could do. Want to put in 5 identical items? You had to pull the lever or push sum 5 times. Meanwhile electronic cash registers don't just add. Sure they can calculate different tax rates on different items, that's just the beginning! You don't just put prices of items into the cash register, you put it items. And the cash register knows the price of the item, knows whether it has a special tax rate (like groceries sometimes do) and knows if you get a discount for buying 5 of them. And it also does inventory control, it sends info back to the central computer at the store to indicate they've sold 10 widgets. At the end of the day, the system figures out you've sold over 80% of the widgets in stock and the system suggests you order more widgets from your supplier.
That kind of "behind the scenes" stuff also takes place in cars. A modern car like this Jaguar emits fewer trace emissions in a year than your car does in a day and this is due to the tight engine control possible with a sensor package and control software.
A modern car knows if you're in the car. It unlocks the door if you're outside and pull the handle, it just senses your key (which is more of a fob) in your pocket. It auto locks when you get out. When you're inside, all you have to do to start it is touch a button, since it knows the key is inside, you don't have to insert it into a lock (and mechanical locks wear out, as I'm sure you with a 30 year old car can attest). When you touch the button, it cranks the car until it starts, no less, no more. No need to hold down the button until the engine catches. And if the car is already running it doesn't try to start the car and make a screeching sound. While its running, if your turn on the A/C and it puts more idle load on the engine, it applies more idle throttle to the engine so that it doesn't stall. If you let out the clutch a little too fast, it applies throttle to prevent a stall there too. If you put the clutch in and the gas at the same time, it will cut the engine off at 4,000 rpm to prevent over rev damage. You have an electronic parking brak
http://lkml.org/lkml/2005/8/20/95
Actually, the best programmers _ARE_ in america:
http://www.fastcompany.com/node/28121/print
Most bug-free and mission critical code on the planet (and beyond).
Here be signatures
My guess would be a separate power management controller somewhere that was wedged with everything in a powered down state. They couldn't talk to the main computer (ECU, maybe?) to reset it, which probably means that the main computer itself wasn't getting properly powered up by the power button. You wouldn't typically leave a computer system running off the car battery (even with the displays powered down) while the car is shut off. It would consume too much power.
Either way, I agree that it probably can't have been the button itself, or else the power cycle wouldn't have fixed it. Well, I suppose it could be a self-resetting fuse somewhere, or (maybe) a stuck latching relay, but odds are, it's a power management controller or similar.
In the grand scheme of things, this probably calls for the addition of a power management reset feature, e.g. two extra sets of switch contacts and a 555 timer IC wired up as a pulse delay circuit so that if you hold the power button down for ten seconds, the chip's power gets momentarily interrupted by a depletion-mode MOSFET. You know, something so simple that it is almost guaranteed not to fail in the lifetime of the vehicle.
Check out my sci-fi/humor trilogy at PatriotsBooks.
They are the most singularly unhelpful and woefully incomplete design documents ever created.
They should be generated from the design, not the other way around.
Wow. No. Use cases are the single most important design document in a system. They outline a task that the user wants to accomplish, and software that isn't designed around them is always a PITA to use.
Here's an real world example I'm dealing with right now, anonymized somewhat.
We manufacture widgets to client specifications. The specifications include selecting parameters within a set range. However a set of 'easy' parameters is SKU X with one set of pricing, while if they spec outside those easy parameters within a more difficult set, its SKU Y, with a different pricing and warranty.
This is fine.
However the software was designed around the client calling up, identifying the product they want, and then listing the specs. The screens are set up in such a way that you look up the customer, create, and order, add the product, and then fill out the specs.
So far so good.
Unfortunately the people communicating orders to us don't differentiate between X and Y. They just want a 'widget' and then give us parameters. So our order entry people have to essentially take note of the parameters they want, determine which sku it is, and then enter the sku and then enter the parameters.
This is because the designer failed to understand the use-case for playing an order for these widgets.
Were are looking to rectify the system by creating a product 'families' which contain the same parameter inputs. This will allow the order entry person to select the product family (which the customer knows), enter in the parameters - which they know, and the software will determine the final SKU to use at the end, based on the parameters that were entered.
This is a design that follows a use-case. We are modelling the systems behavioral requirements by detailing the actual scenario under which it gets used; in this case the particular order information is 'naturally' passed from client to order entry.
Discounting use-cases results in software that doesn't work in a way that is convenient for the user. It may be more convenient for the developer.
Getting good use cases is difficult, and its frequently done VERY POORLY. Where they often model poor processes that were being done with 'the previous system' or 'by hand'. But use cases that model what actually needs to be accomplished, and reflect the flow of information proplerly, results in elegant and easy to use systems.
Your car didn't cause any injuries, though. I'm willing to bet that the idiot who rammed into your vacant car wan't driving a parked car.
Can you be Even More Awesome?!