If you’ve been even remotely aware of the sorts of things geeks and makers and tinkerers and basement cyborg-makers have been doing over the past few years, you’re likely familiar with the Arduino, a small, cheap, general-purpose computer designed to interface with real-world stuff. It’s a fantastic thing. And now, finally, there’s an Arduino designed specifically to interface to your car.
It’s called Macchina M2, and it’s just finished a round of Kickstarter funding, so it’s on its way to becoming something you can actually buy. While you have always been able to integrate an Arduino into a car in a variety of ways (I’m sort of, and very slowly, doing that with this project) getting one to work with a modern car, and interface with the car’s internal computers via a standard like OBD-II and the car’s internal CAN bus has always been tricky.
There’s a number of ways to do it, but none are especially simple, and there’s certainly no standardized way. Here’s how Josh, one of the founders of Macchina, described it:
... we took one of the faster processors used by Arduino and added several automotive interface circuits, a durable power supply, extra memory, a wireless socket and that sort of thing..
The origin of this project is kinda interesting. The concept came about while I was working with some friends to build an electric car out of a broke-down Ford Contour. Actually, we wrote a quick summary of the whole thing here.
Overall, we’d like to see all sorts of things done with M2. Safety and security are important to us. The whole idea of being able to repair and modify your own car is also important - which is why we’re fans of the EFF and Right-to-Repair initiatives. We sort of felt that by being an open source project, we’d help out in all areas.
For me personally, I’d like to build another electric car - I’ve seen a couple Tesla battery pack reverse engineering projects that I’d like to get involved with.
So, if it helps, you can think of it as an Arduino designed to handle the 12V system of a car, and able to directly connect (via the underdash connector or hard-wired somewhere else) with the OBD-II port and the car’s CAN bus.
For older cars that pre-date computers and silicon chips and electronic brains, Macchina has 12 general-purpose 12V I/O pins, which is useful.
The tool is also modular, and allows for the ability to be able to upgrade to faster CPUs as they improve. Also, Macchina accepts Arduino-compatible add-ons, like cellular communication modules, which would allow you to connect your car to the internet, phones, satellites, maybe even the Voyager probes leaving our solar system.
They have some good sample videos showing how you can interface to your car’s CAN bus, and showing how you can read all the messages going back and forth.
I’m pretty excited about the potential of something like this. Arduinos have been amazing for hackers and experimenters and artists and tinkerers of all kinds, and being able to apply that base of knowledge easily into the car platform seems like a great idea.
The M2's pricing seems pretty reasonable, too. It looks like the base tool is $45, with an additional $34 for their shrunk-down, 12V Arduino-based processor board. Add-on modules are sold and priced separately.
Maybe now I can finally get my Beetle to tweet me the number of each cylinder as it fires. That seems like a good use of this.