The DMCA May Have Allowed Volkswagen to Hide ECU Software From the EPA

A lot of questions have been raised by the recent “dieselgate” scandal. Should automakers be held accountable for ethically questionable actions? Are emissions standards in the United States too restrictive? Are we ever going to stop appending “gate” onto every mildly controversial news story? But, for Hackaday readers, the biggest question is most likely “how did they get away with it?” The answer is probably because of a law a lot of hackers are already familiar with: the DMCA.

If you haven’t seen the news about Volkswagen’s emissions cheating scheme, we’ll get you caught up quickly. In the United States, EPA emissions testing is done in a very specific and predictable way. Using clever ECU software tricks, Volkswagen was able to essentially “detune” the engines of their diesel vehicles when they were being tested by the EPA. This earned them passing marks, while allowing them to provide a less-restrictive ECU profile for the normal driving that buyers would actually experience.

How could they get away with this simple trick when a brief look at the ECU software would have revealed it? Because, they were able to hide under the umbrella of the DMCA. The ECU software is, of course, not intended to be user-accessible, which means that Volkswagen is allowed to lock it down. That, in turn, means that the EPA isn’t allowed to circumvent that security without violating the DMCA and potentially breaking the law. This kept the EPA’s hands tied, and Volkswagen protected. They were only found out because independent testing (that didn’t follow EPA procedure) revealed vastly different emissions levels.

Is your blood boiling yet? Add this to the stack of reasons why the EFF is trying to end the DRM parts of the DMCA.

[via /.]

Connecting Your Car to the Internet

Internet of Things? What about the Internet of Cars? It’s actually rather surprising how slow the auto industry is in developing all new vehicles to be connected to the net from the get go. Well if you can’t wait, you can always hack. [John Reimers] shows us how to use an Electric Imp combined with OBD-II to remotely monitor your vehicle.

Using the ever venerable OBD-II port on your vehicle (think USB for cars if you’re not familiar), you can pull all kinds of information off of your vehicle’s engine. Fuel economy, temperatures, load, timing, error codes, etc. There are many devices out there to do this for you, from auxiliary gauges like the ScanGauge II, to bluetooth OBD-II dongles which can send the data to your phone. Or you can build your own.

Continue reading “Connecting Your Car to the Internet”

How Those Hackers Took Complete Control of That Jeep

It was an overcast day with temperatures in the mid seventies – a perfect day to take your brand new Jeep Cherokee for a nice relaxing drive. You and your partner buckle in and find yourselves merging onto the freeway just a few minutes later.  You take in the new car smell as your partner fiddles with the central touch screen display.

“See if it has XM radio,” you ask as you play with the headlight controls.

Seconds later, a Taylor Swift song begins to play. You both sing along as the windows come down. “Life doesn’t get much better than this,” you think. Unfortunately, the fun would be short lived. It started with the windshield wipers coming on – the dry rubber-on-glass making a horrible screeching sound.

“Hey, what are you doing!”

“I didn’t do it….”

You verify the windshield wiper switch is in the OFF position. You switch it on and off a few times, but it has no effect. All of the sudden, the radio shuts off. An image of a skull and wrenches logo appears on the touchscreen. Rick Astley’s “Never Gonna Give You Up” begins blaring out of the speakers, and the four doors lock in perfect synchronization. The AC fans come on at max settings while at the same time, you feel the seat getting warmer as they too are set to max. The engine shuts off and the vehicle shifts into neutral. You hit the gas pedal, but nothing happens. Your brand new Jeep rolls to a halt on the side of the freeway, completely out of your control.

Sound like something out of a Hollywood movie? Think again.

[Charlie Miller], a security engineer for Twitter and [Chris Valasek], director for vehicle safety research at IOActive, were able to hack into a 2014 Jeep Cherokee via its wireless on-board entertainment system from their basement. A feature called UConnect, which allows the vehicle to connect to the internet via a cellular connection, has one of those things you might have heard of before – an IP address. Once the two hackers had this address, they had the ‘digital keys’ to the Jeep. From there, [Charlie] and [Chris] began to tinker with the various firmwares until they were able to gain access to the vehicle’s CAN bus. This gives them the ability to control many of the car’s functions, including (under the right conditions) the ability to kill the brakes and turn the steering wheel. You probably already have heard about the huge recall Chrysler issued in response to this vulnerability.

But up until this weekend we didn’t know exactly how it was done. [Charlie] and [Chris] documented their exploit in a 90 page white paper (PDF) and spoke at length during their DEF CON talk in Las Vegas. That video was just published last night and is embedded below. Take look and you’ll realize how much work they did to make all this happen. Pretty amazing.

Continue reading “How Those Hackers Took Complete Control of That Jeep”

Adding Tie Down Points To Almost Any Car

You know, sometimes it’s the simple hacks that get our attention.  If you have a roof rack, and use it often to shuttle things around, adding these stow-away, front tie downs might be for you.

Most all cars will have a few bolts along the top of the fender that ties into a semi-rigid or structural part of the vehicle. [Andrew Morrow] used about 12 inches of nylon strap, added a hole to the both ends, and attached them to the fender bolts. With the hood closed, he now has a convenient tie down location for what ever he’s hauling around.  We love that when not in use they simply can be stored beneath the hood. Hidden away, but not something you’ll forget to bring with you, or easily lost.  Just make sure that they don’t come in contact with moving engine parts, or hot exhaust manifolds.

Making Mario Kart Real

If you’ve ever had a casual go-kart experience, you might be able to relate to [HowToLou]. He noticed that whenever he tried to race, the same situation inevitably always happened. One racer would end up in front of the pack, and no one else would be able to pass them. The result was more of a caravan of go-karts than an actual race. That’s when he realized that video games like Mario Kart had already figured out how to fix this problem long ago. [Lou] took ideas from these games and implemented them onto a real life go-kart in order to improve the experience. The result is what he calls a Flash Kart.

The key to improving the experience was to add more features that you don’t normally get in a real word go-karting experience. The Flash Kart uses an electronic drive system that is controlled by computer. This setup allows the computer to limit the speed of the kart so they are all the same. The system includes a Logitech gaming steering wheel with built-in control buttons. There is also a color LCD screen mounted as a heads up display. The screen displays the racer’s speed in miles per hour, as well as multiple MP3 music tracks to choose from. The system provides the user with a limited number of speed boost tokens, listed on the heads up display. The user can also view their current ranking, their location on the track, or even get a view directly behind them.

The back of the kart includes a 23″ LCD screen that shows other players who you are and what team you are on. For added fun, the rider can display taunting messages to other racers using this screen. The front of the kart includes a laser cannon for shooting other karts as well as a “token scoop” sensor. This allows the riders to pick up virtual items such as laser cannon ammo, shields, or extra speed boost tokens.

To pack in all of this added functionality, [Lou] started with a typical go-kart chassis. From there, he built a custom fiber glass shell for the back-end. This houses most of the sensitive electronics. The system is powered by three 12V deep cycle batteries. A 15HP electric motor drives the rear wheels. The throttle is controlled with a gas pedal that simply feeds to a sensor that is hooked up to the control computer. The heart of the system is a computer that runs on a 2.6Ghz small footprint Zotac motherboard with Windows XP. The software is custom written in C#. The computer is plugged into a miniLAB 1008 interface board. This is how it communicates with all of the various sensors. The interface board is also used to control a number of relays which in turn control the speed of the kart.

Unfortunately [Lou] built this kart years ago and doesn’t include many details about what sensors he is using, or how the software works. Still, this was such a cool idea that we had to share it. Be sure to watch [Lou’s] video below to see the kart in action. Continue reading “Making Mario Kart Real”

Homebrew ECU Increases Mazda Zoom

A big problem with most modern cars is the sheer number of parts and systems that are not user serviceable. This is a big departure from cars of just decades ago that were designed to be easily worked on by the owner. To that end, [Anthony] aka [fuzzymonkey] has tackled what is normally the hardest thing to work on in modern cars: the Engine Control Unit. (Older posts on this project can be found at [Anthony]’s old project log.)

Every sensor in any modern car is monitored by a computer called the Engine Control Unit (ECU), and the computer is responsible for taking this data and making decisions on how the car should be running. In theory a custom ECU would be able to change any behavior of the car, but in practice this is extremely difficult due to the sheer number of operations required by the computer and the very specific tolerances of a modern engine.

The custom ECU that Anthony has created for his Mazda MX-5 (a Miata for those in North America) is based on the PIC18F46K80 microcontroller, and there are actually two units involved. The first handles time-sensitive operations like monitoring the engine cam position and engine timing, and the other generates a clock signal for the main unit and also monitors things like cooling temperature and controlling idle speed. The two units communicate over SPI.

[Anthony]’s custom ECU is exceptional in that he’s gotten his car running pretty well. There are some kinks, but hopefully he’ll have a product that’s better than the factory ECU by allowing him to change anything from throttle response and engine timing to the air-fuel ratio. There have been a few other attempts to tame the ECU beast in the past, but so far there isn’t much out there.

Continue reading “Homebrew ECU Increases Mazda Zoom”

Instrument Cluster Clock Gets The Show On The Road

While driving around one day, [Esko] noticed that the numbers and dials on a speedometer would be a pretty great medium for a clock build. This was his first project using a microcontroller, and with no time to lose he got his hands on the instrument cluster from a Fiat and used it to make a very unique timepiece.

The instrument cluster he chose was from a diesel Fiat Stilo, which [Esko] chose because the tachometer on the diesel version suited his timekeeping needs almost exactly. The speedometer measures almost all the way to 240 kph which works well for a 24-hour clock too. With the major part sourced, he found an Arduino clone and hit the road (figuratively speaking). A major focus of this project was getting the CAN bus signals sorted out. It helped that the Arduino clone he found had this functionality built-in (and ended up being cheaper than a real Arduino and shield) but he still had quite a bit of difficulty figuring out all of the signals.

In the end he got everything working, using a built-in servo motor in the cluster to make a “ticking” sound for seconds, and using the fuel gauge to keep track of the minutes. [Esko] also donated it to a local car museum when he finished so that others can enjoy this unique timepiece. Be sure to check out the video below to see this clock in action, and if you’re looking for other uses for instrument clusters that you might have lying around, be sure to check out this cluster used for video games.

The mechanics in dashboards are awesome, and produced at scale. That’s why our own [Adam Fabio] is able to get a hold of that type of hardware for his Analog Gauge Stepper kit. He simply adds a 3D printed needle, and a PCB to make interfacing easy.

Continue reading “Instrument Cluster Clock Gets The Show On The Road”