"Right To Repair" Bill Advances In Massachusetts
Wannabe Code Monkey sends along an article from the Patriot Ledger about an effort in Massachusetts to pass a "Right to Repair" bill. "Since the advent of congressionally mandated computers in vehicles more than 15 years ago (for emissions), cars have evolved into complex machines that are no longer just mechanical. Computers now monitor and control most systems in the car from brakes to tire pressure and all the electronics and engine fluids... [and] car manufacturers continue to hold back on some of the information that your mechanic needs in order to properly repair your car and reset your codes and warning lights... Massachusetts is now poised to solve this problem and car-driving consumers should pay attention this fall when the Massachusetts Legislature takes up landmark legislation that would force manufacturers to respect the right of consumers to access their own repair information. The legislation, known as Right to Repair, is seen by car manufacturers as a threat to the lucrative service business in their dealerships and they are massing their lobbyists on Beacon Hill in an effort to defeat it."
In the article, it mentions that the "Right to Repair" relates to your right to choose who repairs your car (yourself, your local garage vs. the official car company dealer).
Because cars have so many control units (eg. the Engine Control Unit), specialized (and expensive) dealers are given advanced scanners which have full access to all the computer systems, and have the ability to clear any internal firmware fault bits which make fault lights remain on even after the car has been repaired. Other non-dealer garages don't have access to this information. They may be able to repair a broken headlight, but the computer system won't turn the fault light off, and might even refuse to allow the ignition to start.
Some car companies were using DRM legislation to prevent owners from altering/checking/viewing the state of the system controller.
Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
You're right that any mechanic can read the legislated OBD-II codes. However, manufacturers are allowed to use proprietary codes or protocols for anything that isn't emissions related, and it wouldn't be too difficult to lock you out of everything else, if they really wanted to. Reading OBD-II trouble codes is only the tip of the iceberg of what you can do when you have full read and write access to the ECU.
There already is a government mandated standard for getting access to engine information. It's called OBD and you read codes off with a $100 reader. Your local AutoZone, etc. will usually even let you borrow a reader if you need to. OBD defines a set of specific codes for specific errors or measurements. It also allows manufacturers to define their own codes and measurements. I don't know of single vehicle whose manufacturer specific codes are not publicly available. Okay, you may have to pull out a book or look it up online (e.g. here is the list of codes for may BMW E46 3-series) but it's out there and it's an amazing thing. The newer cars will even give you details like your exact fuel/air mixture ... in real-time. 9 times out of 10 the code pulled off the reader will tell me exactly what's wrong my car.
It amazes me how many hobbyist and even professional mechanics complain about this. The tools are there, and cheap, just learn how to use them.
I went to that link, there were an awful lot of "UNKNOWN CODE" listed. I stopped skimming between 500 and 600 and found over 70 "UNKNOWN CODE" listings in that. Those "UNKNOWN CODE" listings are what this law is about. Those aren't unused codes, they are codes that BMW considers trade secrets and that are only published to mechanics working for BMW dealerships (other car manufacturers have similar codes).
The truth is that all men having power ought to be mistrusted. James Madison
Do NOT buy a Volvo newer than '06 if you care about this sort of stuff. Any Volvo after about MY2006 requires something called "VIDA", which is the worst kind of crippled software. First, you need a several-thousand-dollar interface box. Second, the software requires a LIVE INTERNET CONNECTION. Cars after 2000 or so and before 2006 require "VADIS" and the same $$$$$ interface box.
Get a load of this: every module in the car (and there are a dozen plus) requires firmware or "coding". That coding is VIN specific, and the software is ENCRYPTED TO YOUR SPECIFIC CAR by Volvo before it is transmitted to you (the reason a live connection is required.) Further, the download requires a payment to Volvo! Just the ability to use VIDA is subscription based, and you pay separately for diagnostic abilities, wiring charts, and technical information. As in, you have to pay for each one if you want it- it's not a package.
On the Audi/VW side, there is an awesome program called VAG-COM which allows you to view all sorts of parameters, adjust values, read diagnostic codes, etc...almost EVERYTHING that can possibly be accessed or tweaked. Alarm motion sensor too sensitive? Tweak it. Want to be able to roll up your windows from the keyfob? Done. Want to enable one-touch-up on a window? Done. Want to install euro-code taillights with yellow turn signals? Done. Want to let your fog lights stay on with your highbeams, or run with the headlights off? Done and done. Costs a few hundred dollars, and that includes the adapter. You can buy the factory repair manual, and once you have, it's yours, and you can diagnose and repair many things yourself, replace components, etc.
On the Volvo side...guess what? VIDA required. "What about ODB2?" you say? Well, ODB2 only encompasses the most basic live engine information and diagnostic codes. If you want anything actually useful, you need to know the custom ODB2 data fields (very similar to how SNMP is an open standard, but nearly worthless without vendor OIDs.)
Truly, madly blows. There are a bunch of parameters that can be changed on my car, but they can only be done by the dealer, and they're guaranteed to charge for it. Nevermind that the whole car is networked with CAN-BUS and many of the mid-2000's models have huge problems with module failures, network bus problems, etc. Oh, and the best part: if a software update fucks up something, they can't roll it back. Volvo didn't design the systems to allow for going back a firmware revision. You can only install NEWER versions!
Please help metamoderate.
As someone who has dealt with OBD-II a bit, allow me to shed some light on the subject. The OBD-II standards specify a series of families of error codes. Codes within a certain range are chassis codes, another range for powertrain codes, another range for emissions control crap, etc. The precise details of what non-powertrain codes mean, however, are specific to each vehicle. For example, in most Chevy cars, C1780 means "Loss of Steering Position Signal". In Ford vehicles, it means "Temperature select failure". And IIRC, there are even some variations between specific models, though I don't have time to hunt for specific examples.
And even within the powertrain codes, the root cause can be vehicle-specific. For example, P0171 and P0174 are both codes for engine banks running lean on a '99 Windstar. They usually mean a vacuum leak caused by oil breakdown of port seals coupled with carbon deposits in the intake due to a flaw in the front valve cover. That's something the code number can't tell you.
Finally, some cars have multiple ECUs at multiple addresses. The chassis and brake codes might be in a different ECU, and AFAIK, that info is completely undocumented.
In short, generic scan tools generally give you a reasonable view of the powertrain codes and nothing more. Although it's better than nothing, it isn't a complete picture.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Without the experience to understand what those codes imply I am still in the dark as to what the problem actually is.
That has nothing to do with this.
OBD-II means that you can talk to the Powertrain Control Module, or PCM. What you can talk to it about is what this is all about. Your code reader allows you to pull trouble codes, which will allow an experienced mechanic who has driven your car to make some educated guesses. A more advanced generic scan tool is usually able to additionally read the state of all of the vehicle's sensors, and view snapshot data that tells you what happened the last time the most serious code stored in memory occurred. The manufacturer's scan tool, which is usually based on one of about four [occasionally updated] models from the same people who will sell you generic or even vehicle-customized scan tools at outrageous prices, goes considerably further than this; however, there is much more than the tool itself involved.
First, it's important to note that the scan tool is not the only computer involved in tuning the computers of modern vehicles. Most vehicles have, if not field-reprogrammable code, then at least field-reprogrammable maps which dictate fuel delivery under specific vehicle conditions. This data is usually delivered to the PCM via the scan tool, but it is usually delivered to the tool from a PC at the dealership. If you want to reprogram the factory computer for high-altitude operation (yes, this is a real scenario, yes, I think the cars should be able to self-adjust by now, so they can keep up with my ancient mechanical turbo-diesel) you're going to need access to this stuff. In addition, on the rare chance you actually get any of those mystery codes, the factory scan tool will know what they are. In most cases they're probably going to be some internal error that has to do with why some component failed, like perhaps the PCM. In some cases, they might be vitally important to understanding what the problem is. Who knows? They're secret!
Eventually, some of this information sneaks out. Someone gets their hands on the tool and some OBD-II interfaces of some sort; maybe CAN, maybe the ISO or JEDEC standard, and they sniff the traffic and see what it looks like. You can plug in a module and reprogram a lot of diesels, for example, to be more efficient or more powerful. "Back in the day" when ECUs were simple and had an 8-bit microcontroller you had a lot of chip-replacement upgrades, but now you need to reprogram or replace the PCM because pieces of the car talk back and forth to one another in many cases, especially when there is traction control, an automatic transmission, and coil-on-plug (or often even waste spark) ignition.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
The mechanic is an idiot. There's no computer codes or special tools to determine if the problem is the master cylinder or the slave cylinder. It's literally a mechanical system; clutch linkage to the piston on the master cylinder, piston pushes fluid through the line to the slave cylinder, which has a piston which pushes the release fork. If the system was low on fluid when you brought it in (and it must have been, or filling and bleeding it without fixing the problem wouldn't have gotten it working temporarily), then the fluid leaked somewhere. Find the leak (using Mk I eyeball and other primitive tools) and you've figured out which one is the problem.
The FTC is holding hearings on whether or not to continue to allow DRM and EULA's.
http://action.theeca.com/t/2858/petition.jsp?petition_KEY=562
At that site you can write a submission to the FTC about why DRM / EULA's are bad.
I'm pretty excited to see how this turns out!
"The tree of liberty must be refreshed from time to time with the blood of patriots and tyrants." ~Thomas Jefferson
What Congress mandated was that manufacturers use a standard communication protocol, document it, and release it publically (sorta -- it's not really fully public), to prevent them doing exactly what the previous poster said they'd do, and they were in fact doing: providing diagnostic tools that only their mechanics could use.
Nostalgia's not what it used to be.