Consuming More Energy in the Pursuit of Saving Energy

Next week, we’ll be putting out a Freakonomics Radio podcast called “The Cobra Effect.” Without spilling the details now, I’ll tell you that it’s about unintended consequences, the kind of stuff that happens when clever-seeming incentives are let loose on an even cleverer public.

With that in mind, I was intrigued by the following e-mail from a reader named Eugene Kim:

My locality in Virginia has mandated biennial emissions inspections for automobiles before registrations can be renewed on those years. Since mine is expiring at the end of this month and it’s been two years since my last emissions test, I took my car to the service station this morning. They don’t seem to actually measure any emissions; they merely check the OBD computer for stored readings.

Here’s where it gets stupid. I don’t drive a lot. I take the train to work so I only drive on weekends, if that. (If you’re wondering why I even have a car, I bought it when I lived in the Midwest and needed it, but moved to the East Coast shortly thereafter and was upside-down on my loan. Plus I feel strangely vulnerable without a car.) Anyway, my car is idle a lot while the battery charge depletes slowly. And apparently, if it drops to a certain point the computer loses all those readings. I didn’t think it had gotten that low since the car hasn’t had any problems starting.

Accordingly, the guy at the service station tells me that my computer is not ready to return any results, and what I need to do is drive around for 150(!) miles so the computer can collect enough readings. So by driving around aimlessly, I’m wasting money, wasting gas, and polluting the environment more so I can comply with this law. My 2005 model car has 9,200 miles on it. Even if it’s the worst-polluting car in the world, how much damage am I doing with that little driving? There’s got to be a better way to penalize emissions, right?

First of all: any suggestions for how this emissions program can be improved?

Second: it would be churlish to suggest that a few stories here and there about the unintended consequences of right-minded legislation invalidate the idea of trying to better our world. But these recurring stories do suggest that when you pursue a goal, no matter how right-minded it may be, with the zeal of an advocate rather than the pragmatism of a skeptic, it’s easy to misfire.

Leave A Comment

Comments are moderated and generally will be posted if they are on-topic and not abusive.



View All Comments »
  1. Nathan Denison says:

    The issue is the OBD II electronics used from emissions diagnostics on all post-MY1996 vehicles. OBD doesn’t actually measure actual emissions but checks for failure in emissions equipment, and if no failures are found assumes that emissions are fine. (OBD is easily defeated, by the way).

    I would be curious is the emissions testing site did not have a tailpipe sniffer (measures actual emissions at the tail pipe, used on all pre-MY1996 vehicles), and if so if it would be an option is this instance.

    Thumb up 3 Thumb down 0
    • Scott says:

      Engine controllers actually do measure the car’s emissions (albeit indirectly -much of it is calculated) – it’s inherently neccesary to control the emissions system. Think about it – the ECM needs to know what position to command the EGR valve to, for example. Diagnostics of the health of the emissions system is only part of it. You’re correct that it’s easilly defeated on many vehicles, though tamper-detection/anti-tamper methods are making inroads (what, you thought they weren’t wise to it? :).

      Thumb up 2 Thumb down 0
  2. Philo Pharynx says:

    While this is a negative unintended consequence, I think we need to examine this in terms of orders of magnitude. How many drivers are in this situation? At 150 miles worth of emissions per user, how bad is this? Compare this to the amount of emissions eliminated from drivers who have cars that don’t pass. I suspect the latter far outweighs the former.

    Of course in a perfect world there would be a backup for the computer battery.

    Well-loved. Like or Dislike: Thumb up 18 Thumb down 2
    • Dave says:

      He could also just get a battery charger rather than use his alternator to charge it (driving 150 miles).

      Thumb up 2 Thumb down 2
      • James says:

        That probably won’t work. It seems much more likely that what he’s experiencing are “Not Ready” codes from some of the OBDII sensors. That is, for the catalytic converter status to be tested, the car has to be driven long enough for the converter to reach operating temperature. There’s a better explanation here:

        The other point of OBDII that a lot of people seem to miss is that it gives continuous testing (if the car is driven normally). Instead of an emissions control failure (or other engine problem) only being caught at an annual inspection, it is detected when it happens, and the system turns on the “Check Engine” idiot light. (For non-idiots, we can use an inexpensive scanner to monitor codes and figure out what the problem is.) So it gives built in, real-time monitoring, at little incremental cost because the sensors monitored are pretty much the same ones being used to control the engine.

        Thumb up 4 Thumb down 1
      • Uthor says:

        Yeah, if you’re not driving enough to keep the battery topped up, you should really put it on a trickle charger to keep the battery charged. Having it discharge and recharge isn’t good for the battery, anyway.

        Thumb up 0 Thumb down 0
    • Scott says:

      Or non-volitile memory!!

      Thumb up 1 Thumb down 1
    • Joe J says:

      I suspect the opposite is true. Having talked to the emissions inspector the last time I had gotten mine inspected: he had not encountered a car since 2004 (that being a model 2004 or newer) which had not passed emissions. So practically no cars in VA do not pass this inspection.
      I know several people in Virginia whose driving habits matched the original poster. My car is 7 years old and just broke 40,000. And I do not live near a metro stop, If I did,I would probably sell the car.
      As to the intended vs. unintended consequences. There has been arguments about eliminating the emissions check entirely, because it is by some seen as a waste, or revenue stream for inspectors rather than actually having to do with emissions.

      Thumb up 0 Thumb down 0
  3. Darren says:

    There’s at least one better way to detect emissions problems — remote testing of cars driving through moveable pollution sensors on public roads. Remote testing readily detects the gross polluters doing the most environmental damage. It is also more likely to catch the cars driven the most and therefore doing more damage. A well run program could probably lower pollution monitoring costs over periodic inspections that require fixed stations, numerous employees and can test few cars per day. A remote sensing program might receive comparable results. It would also be tougher to cheat. Some car enthusiasts mayinstall performance parts that increase emissions for regular driving, but re-install the stock parts just to take the test. These people would be caught under a remote sensing system.

    Well-loved. Like or Dislike: Thumb up 12 Thumb down 2
    • Scott says:

      Good idea, but it wouldn’t work. One of the primary purposes and functions of OBD is to detect emissions problems on a particular vehicle over time (hundreds of hours/miles) – catching intermittant failures and building up a profile of average and peak emissions (as well as failures (diagnostics) and imminant failures (prognostics) of the emissions control system and sensors). Couple that with the wildly fluctuating emissions from your vehicle at any one point in time (primarilly load, but also temperature, time since started, barometric pressure, road speed, what you had for breakfast (kidding), etc..) and determining what class your vehicle fits in for emissions requirements (car, SUV, tractor/trailer, diesel/gasoline/hybrid), and it’s impractical.

      That said, a drive-by wireless reading of your OBD system would be a great idea! (If you know about it, and once-per registration period – no new tickets for me please).

      Thumb up 3 Thumb down 0
    • joe J says:

      That would not work in the northern Virginia area, because it is the capitol region. cars on the road here are as likely to be non Virginian cars, being that DC and Md are within 20 miles of most areas where the emissions are required. You also run into the problem of Diplomatic vehicles and government vehicles. Although it would be ironic watching the Presidents armored vehicles getting stopped, the bullet and bomb proofing icreases their weight and therefore the engine needed .

      Thumb up 0 Thumb down 0
  4. Mark F says:

    This is such an edge case that it is a waste of time to worry about this person’s problem. Just drive the 150 miles and be done with it.

    Well-loved. Like or Dislike: Thumb up 11 Thumb down 5
  5. Eric M. Jones says:

    Car batteries, even if you don’t use them, last about 7 years. A new one might fix this problem. At any rate, you’ll need a new one anyway.

    Thumb up 1 Thumb down 3
    • Uthor says:

      Yeah, a new and uncharged battery may still be usuable 7 years later, but if you have the battery plugged into your vehicle and drive sporatically, you will have it discharged fairly quickly. There is a reason you should either remove and charge the battery or hook up a trickle charger when storing a vehicle for long periods of time. My motorcycle battery will be completely discharged over the winter even if it is removed and stored indoors.

      In this particular case where the battery is obviously charging and discharing with some frequency, its life will be significaly shortened, anyway.

      Thumb up 0 Thumb down 0
  6. Steven says:

    Remote sensing of cars in traffic for pollution violations is probably much more efficient (new or compliant cars don’t have to spend time and money to test) and non-compliant cars (older or not street legal) cannot game the system as the “inspection” can come at any time in nearly any location. This is starting to be put into trial in a few states.

    Relevant literature:

    Thumb up 5 Thumb down 1
  7. Seminymous Coward says:

    This is staggeringly simple to solve: If the car hasn’t been driven enough to generate emissions readings, it gets an automatic pass. It’s not exactly contributing a lot of emissions. If someone attempts to game the system by driving 149 miles a year (or is it ever?) then that outcome is acceptable.

    It’s much more of a problem that they trust the OBD computer to tell the truth. Since every car apparently has the equipment to log its own emissions, I can’t imagine the equipment to independently verify it would be that expensive. Perhaps the car is computing the emissions from readings on inputs and other outputs combined with some assumptions on the nature of the fuel? If so, that’s even sillier.

    Thumb up 5 Thumb down 2
    • scott says:

      Had to correct your uninformed guess as to the nature of how OBD works – emissions are calculated (from dozens of sensor measurements and run through complex models) with very good accuracy and compared against out-of limit tolerances. This, combined with a diagnostic of the ‘health’ (e.g. failed temp sensor) of the emissions sub-system combines to produce a ‘pass’ or ‘fail’ (generally accompanied by a ‘check engine’ light).

      Put it this way – (if you know about cars in general) full electronic control of variable timing/injection, drive by wire, and the actual emissions controls (EGR, diesel particulate filters, multiple injections/stroke) takes millions of lines of code, goes through years of testing, and must be verified to perform within fine limitations by the EPA. The readings are correct. (ie. calculating nox output is a hell of a lot more simple relative to the extreme complexity behind simply running the engine in modern vehicles). This is all, by the way, transparent to the driver – which in and of itself is a monumental feat of engineering (which ironically leads to the general public not knowing much on the topic).

      This doesn’t mean the system can’t be defeated in various ways (sensor spoofing, etc.), but that’s a different issue, and is continually countered by more sofisticated anti-tampering/tamper-detection methods – likely to be an endless battle but at least relegated to a small minority of the driving population).

      FYI – the reason it needs to build up a history (generally miles driven +/- engine idle time +/- engine under load time) is that emissions can vary greatly based upon numerous conditions, and it takes time to have statistical confidence.

      IMO, as an aside, I’m having difficulty simpathizing with her – if she drives so seldom, obviously has alternative modes of transportation, and all but admits she doesn’t care to drive anymore (apart from the occasional freedom to do so), the ownership cost of a car for her doesn’t make much sense to me – and in this case, $15 worth of gas is just the price she has to pay for owning a car she rarely uses, relative to the overall environmental benefit.

      (Worked on OBD in the automotive industry for many years).

      Thumb up 2 Thumb down 2
      • Seminymous Coward says:

        I meant the general issue of trusting something someone owns to report that they are not in compliance with a law or regulation. It’s obviously subject to user intervention, one way or another. I’m pretty sure the $20 bluetooth reader I have can clear codes, and I’d be surprised if the same interface didn’t let me fiddle with logs somehow.

        If nothing else, I can tear the physical computer apart and change the program, even if I have to replace a ROM chip. Given the capacity to just write over the function that returns the key information with “return a fixed pass value,” I don’t think enforcing a law based on its answer is wise. Before you talk about how much work that is, keep in mind that EPA’s strict testing requirements and the natural preferences of the manufacturers work to ensure there are only a few fully unique models of OBD computer, so I can potentially apply the same work to many others’ OBD computers to recoup my effort.

        My comments regarding computing the emissions values were in relation to the cost of the equipment to directly measure those values. I get that you can compute them legitimately, at least given a few perfectly reasonable assumptions. I also think it’s silly to trust such a computation over just having the inspectors directly measure it.

        Thumb up 1 Thumb down 0
      • James says:

        “Given the capacity to just write over the function that returns the key information with “return a fixed pass value,” I don’t think enforcing a law based on its answer is wise.”

        I think you aren’t thinking it through. Emissions are only a problem if there are a lot of cars creating them, no? So what fraction of the population knows enough about electronics & programming to spoof the “pass” values? And what percentage of that small fraction would bother, seeing that it is a) usually easier and cheaper just to fix the problem; and b) if you don’t fix it, often the car won’t run very well at all. So you’re down to about 0.001% of cars on the road. As with the few antiques that’re grandfathered in, there just aren’t enough to create a problem.

        Thumb up 0 Thumb down 1
      • Seminymous Coward says:

        Laws should apply to everyone. Making laws that are easy to get away with breaking damages the credibility of the state. Yes, there are plenty of other examples of laws like that, especially in the traffic area, but that doesn’t mean that one more has no cost.

        Furthermore, only one person has to know enough about electronics. After that, they can just sell everyone else a kit. People have done similar things in the past for sillier reasons ( ).

        Bad emissions values can also be the result of intentional tuning. Even if that tuning is unwise or incompetent, someone would likely still want it.

        Thumb up 2 Thumb down 0
    • Scott says:

      Responding to your second post – basically you’re concerned with tampering or spoofing (such as playing with the O2 sensor). This is a legitimate concern for a small crowd, though in reality very few people would go to the trouble, particularly with hefty fines if you get caught in some states. Nor would many have the technical know-how, drive and money to do so for little value added (only two scenarios I can see: 1. small performance boost from removing your catalytic converter 2. emissions systems fault you don’t want to pay to fix) and you still have to register your car anyway.

      Though you still fundamentally misunderstand the design. Yes, you could ‘clear the codes’ with the right tool, but then you put yourself in the same shoes as the person this post describes – needing to drive enough to build up a profie (and not ready to test). No, you can’t practically ‘fiddle with the logs’. This is all contained within mostly prorietary source code within the ECM. Short of building your own engine controller and writing millions of lines of code (since it wouldn’t be legal to buy engine software or a drop-in controller that bypasses emissions regulations), anyway. Moot point anyway see above for spoofing, a person would usually go with the easier method.

      I think you don’t realize how incredibly complex engine and emission control software is these days (the development and test requres 100′s of engineers over many years). Also, you can’t ‘just write over the function’ when you have no access to the source code. Also, there is no ‘OBD computer’ – it’s integrated into the ECM’s software. OBD is a set of standards the OEM must comply with, not a hardware design.

      The engine must (albeit somewhat indirectly – some values are calculated and inferred from many dozens of sensors and operating values) know it’s emissions performance inherintly – in order to control the emissions system in the first place (timing injection/variable timing/egr valve position). And it’s very accurate. On the trucks I worked on, for instance, we had a direct measurement of nox output.

      I worked testing OBD software and hardware on test vehicles for years with heavy-duty diesel trucks. The tampering concern is taken very seriously (along with anti-tamper regulations) and there are many methods put in place to prevent it (including derating the power severly if emissions faults are not corrected after a long enough time), and for other things, such as derating when improper fuel or something other than urea is used.

      Finally – measurement over time is the key here (which is what OBD is designed to do) – even the best tail-pipe measurements at an inspection station will not catch issues that crop up over many thousands of miles. So actually, for 99.999% of vehicles on the road, it’s an even better solution than a tail-pipe measurement.

      Thumb up 2 Thumb down 2
      • Seminymous Coward says:

        I have a secret for you: source code becomes machine code, and it can still be edited (or duplicated except for a small change, in the case of a ROM). I didn’t make this up, and it’s not blind theorizing. It’s a flat-out standard technique for changing the behavior of software that someone else wrote and doesn’t want changed ( ). If people do it to their XBox ( ) to save $60 on a few games, they might very well do it to their car for a number of reasons that seem trivial to you.

        Quite obviously, I was referring to the ECM when I wrote “OBD computer.” A standard name can be used as an adjective regarding something implementing that standard, e.g. “HTTP server,” “PNG file,” or “IPA transcription.”

        It’s interesting to know you had a direct sensor; that goes back to my actual, original point that such sensors can’t be that expensive.

        If you didn’t realize machine code can be patched, you simply were not taking tampering seriously.

        Measurement over time is nice, but at the very least it should be double-checked on the spot by equipment not owned by the person having their vehicle inspected.

        Thumb up 2 Thumb down 1
      • James says:

        Sure, we know that machine code can be reverse-engineered and/or patched. I’ve done a bit of it myself (and gotten paid for it). It’s not an easy thing to do, though, when you have as much code as goes into a typical automotive ECM.

        You still aren’t seeing the big picture, though. The goal of emissions testing, and indeed of having emissions controls at all, is to reduce emissions to the point where we have decent air quality, no? Most of us want this done in a way that’s as cost-effective and unintrusive as possible. So we use the on-board sensors and computers, most of which are already there for performance reasons anyway, and so reduce emissions without incurring the cost of e.g. roadside monitoring stations & enforcement staff.

        Thumb up 1 Thumb down 2
      • Scott says:

        Seminymous – I’m an electrical engineer with a software background and I actually worked doing this. Just taking issue with you making gross assumptions with little knowledge of how it works.

        BTW, I do some software and hardware ‘hacking’ on the side – for instance, patching my Canon camera’s software. Well aware of mod chips, also well aware of their illegality-
        which, of course trying to apply something similar to bypass emissions would be. My point was there are easier ways (which I already gave examples of) than trying to change lines of code you (or anyone outside of the OEM) has access to – it would be much simpler (relative) to swap out the electronic control system, or re-flash third-party code. I challenge you to provide one example of an ECM that was hacked specifically through changing binary code, with the purpose of emissions, without access to the proprietary source code. Good luck. Not talking about third-party complete re-writes of software, such as what APR offers for increased performance within the limits emissions standards (since it would be illegal otherwise, and I’ve used on my GTI in the past).

        Not even sure where you’re going with calling an HTTP server a ‘computer’ – it’s a standardized software package, which in the case of Apache (and most others) is completely open source (access to code, so kind of ironic you picked that). Please, if you think you can get access to 10 million lines of ECM software source code, or try to reverse engineer it from binary, enlighten me )

        Every post 1996 car basically “know’s” what it’s emissions are, direct nox sensor or not, through an incredibly complex system of sensors and closed-loop models (which by the way, again, I worked on).

        Finally, measurement over time is not just nice, it’s mandated, and for good reason. Spot checking once every few years does not compare.

        If you were a tax attourney, I probably wouldn’t go out of my way to debate you on tax law.

        Thumb up 1 Thumb down 2
      • Seminymous Coward says:


        I’m really wondering why you assume I don’t know what I’m talking about. Despite the fact you’re making an argument against my argument by discussing me and that’s prima facie silly, I will say that I’m a professional software developer.

        Possibility is not contingent on having publicly happened.

        I seriously doubt your reading comprehension if you think I wrote something “calling an HTTP server a ‘computer.’” I used “HTTP server” as an example of identifying something using a standard with which it complies as an adjective. Do you think I called a PNG file and an IPA transcription computers? I honestly do not understand how you could read what I wrote and conclude what you did. It makes me doubt your good faith intention to actually discuss the topic.

        I’ll reiterate that source code is not needed to make the kind of simple change we’re discussing. Source turns into machine code, which can still be edited. It’s not magic. You don’t have to understand an entire system to change one output’s value to a constant.

        I think it’s pretty clear that a *claim* of measurement over time is what’s mandated, since the government doesn’t check that what’s reported over ODB is true.

        I’ll also note that I didn’t go out of my way to debate you. I speculated that “Perhaps the car is computing the emissions from readings on inputs and other outputs combined with some assumptions on the nature of the fuel.” You have since confirmed that some cars are in fact doing exactly that; you said “Engine controllers actually do measure the car’s emissions (albeit indirectly -much of it is calculated)” to someone else, in fact. You just wanted to tell me about my “uninformed guess” because you took something in what I said as a claim of inaccuracy.

        Thumb up 1 Thumb down 0
  8. Sam G says:

    In many states, a solution (of some sort, for some cases) has already been arrived at:
    In Maryland, vehicles driven less than 5,000 miles per year, and owned by those over 70 years old are exempt from emissions regulations. Similar exemptions are in place in many states across the country. An expansion of this exemption – or some similar mileage-based alternative testing method – could be used to solve this problem.

    Thumb up 3 Thumb down 0