Arduino CAN Bus Interface

Posted on Feb 5, 2014

Implementation of CAN for use in aircraft. The protocol is called CAN-FIX and is a part of the MakerPlane Open Source Airplane project. You can get more information on CAN-FIX here. The idea for this project is to build an Arduino shield that will let it communicate over the CAN bus. I had some Microchip MCP2515 and MCP2551 (CAN Controller and CANTransceiver, respectively)

Arduino CAN Bus Interface
Click here to download the full size of the above Circuit.

laying around so I decided to make my own little Arduino shield so that I could quickly try out some ideas. I started with the little ProtoShield that Sparkfun sells. I also had some header material laying around so just getting the PCB without the rest of the kit worked for me. An easier answer may be to get the full ProtoShield Kit. This will give you some buttons and LED`s to play with too. My intention for this particular device is to use it as a generic USB<->CAN converter. Once I have that working, I`ll have a CAN interface for a computer and could use the same code with an Arduino Mini, or something similar, to interface to a Beagleboard, Rasberry Pi or other SBC. The circuit is pretty simple. It`s just an SPI interface to the MCP2515 CAN Controller IC. This IC handles all of the low level details of the CAN protocol. Things like timing, arbitration, error detection etc are all offloaded to this IC. I purposely made mine similar to the CAN Shield that Sparkfun sells. The pins are the same but I choose to use a 20MHz ceramic resonator instead of the 16MHz oscillator that`s on the CAN Shield. The only reason I did that was because I had some. It might make it work better at higher bit rates too but I haven`t tested any of that to know. There are a couple of CAN Shields out there and they all have basically the same interface to the Arduino so this means that we should all be able to use the same software with all of...

Leave Comment

characters left:

Related Circuits

  • New Circuits



    Popular Circuits

    10Mhz universal counter
    Power pack for battery-powered devices
    Lithium Ion Lithium Poly Charger by LM317
    Triac Dimmer Circuit
    laser diode driver circuit
    magnet charger
    Doorbell for the Deafs
    Linear Light Dimmer by Power Mosfet
    ph d scientist infrared sensor
    Sensitive envelope detector circuit diagram