Open Source Solutions for Your Automotive Projects and Prototypes

March 05, 2017 by Chantelle Dubois

Welcome to the rapidly evolving open-source automotives trend.

Open-source automotives are a rapidly evolving trend that opens up a universe of possibilities. Check out these hardware and software projects that work with existing vehicles.

Whether you're a designer, a car enthusiast who wants to do more than just get under the hood, or a future entrepreneur looking for ways to develop prototypes and products, there are now ways to get into the very hardware and software of the modern car. 

Macchina M2

The Macchina M2 board was announced on February 21st as the newest addition the Arduino’s AtHeart program, an initiative for companies and organizations to use the Arduino platform for their products. The Macchina M2 allows the user to read their vehicle’s electronic signals and reverse engineer them.

Embedded systems are now an essential part of the modern car, and the Macchina M2's aim is to allow users to do more than play with the mechanics; the device will let the user get down into the software and electronics. Not only is this sort of access invaluable for tuning and diagnostics, but it opens up a wide range of possibilities for projects or products through customization and prototyping.

The creators of the Macchina M2 have also teamed up with Craig Smith, author of the Car Hacker’s Handbook, which provides readers with a basis in the understanding of the CAN interfacing of modern vehicles.

The Macchina M2 is based on the Arduino Due architecture, utilizing a SAM3X8E. The main board is 2.22”x1.6”x0.62” and can be connected to various sockets enabling GPS, GSM/3G/LTE, Wi-Fi, Bluetooth, XBee (DIGI XBee boards provided by Digi-Key), and Ethernet. The Macchina M2 can also be used as a breakout board, allowing the use of the processor of your choice.

By using the Arduino platform, the Macchina M2 takes advantage of the already established developer community and resources.

Below is a video demonstrating how the device can be used. 

Automotive Grade Linux (AGL)

AGL is an open-source project which focuses on utilizing the Linux kernel to develop open-source software for automotives. Currently, it can be used for development of in-vehicle-infotainment systems, but there are plans to continue developing it for use with telematics and instrument clusters. The project strives to provide a way for developers, hobbyists, and entrepreneurs to take advantage of onboard electronics and create better software. 

AGL has an impressive line-up of members, including a number of major automotive and tech companies such as Honda, Toyota, Panasonic, ARM, and Intel (just to name a few).

AGL has five expert groups which focus on different areas of development:

  • AGL System Architecture Team (SAT) 
    • Requirements Team
  • FOSS Compliance Expert Group
  • Remote Vehicle Interaction Expert Group
  • Functional Safety Expert Group

Below is a video demonstrating a user remotely controlling their vehicle’s HVAC using applications developed with AGL.



OpenXC is another open-source automotive software and hardware concept supported by Ford Motors. A Vehicle Interface device can be purchased or built from open-source schematics which, once integrated, allows users to access to the vehicle’s data by translating CAN messages into an OpenXC message format. These messages can then be sent to a host device using Bluetooth, USB, Ethernet, Wi-Fi, or a 3G network. Finally, applications can be developed on a host device with Android or Python to utilize these messages.

One project that can be created using OpenXC is a “night vision” forward collision warning camera, created on the Android platform, and using off-the-shelf hardware and components. 


The Nighttime Forward Collision Warning project, using edge detection to detect objects. Image courtesy of OpenXC.

Feature image courtesy of Automotive Grade Linux.