Skip to content
An Arduino library for sending and receiving data using CAN bus.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples Remove OBD-II examples, add link to new OBD2 library Aug 12, 2018
src Fix persistently set abort transmission flag after first error Jul 25, 2018
.travis.yml Remove OBD-II examples, add link to new OBD2 library Aug 12, 2018
API.md
LICENSE Initial commit Dec 13, 2017
README.md
keywords.txt Add new filter API's and implementations Jan 4, 2018
library.properties Version 0.3.1 Jul 25, 2018

README.md

Arduino CAN

Build Status

An Arduino library for sending and receiving data using CAN bus.

Compatible Hardware

Microchip MCP2515 wiring

Microchip MCP2515 Arduino
VCC 5V
GND GND
SCK SCK
SO MISO
SI MOSI
CS 10
INT 2

CS and INT pins can be changed by using CAN.setPins(cs, irq). INT pin is optional, it is only needed for receive callback mode. If INT pin is used, it must be interrupt capable via attachInterrupt(...).

NOTE: Logic level converters must be used for boards which operate at 3.3V.

Espressif ESP32 wiring

Requires an external 3.3V CAN transceiver, such as a TI SN65HVD230.

CAN transceiver ESP32
3V3 3V3
GND GND
CTX 5
CRX 4

CTX and CRX pins can be changed by using CAN.setPins(rx, tx).

Installation

Using the Arduino IDE Library Manager

  1. Choose Sketch -> Include Library -> Manage Libraries...
  2. Type CAN into the search box.
  3. Click the row to select the library.
  4. Click the Install button to install the library.

Using Git

cd ~/Documents/Arduino/libraries/
git clone https://github.com/sandeepmistry/arduino-CAN CAN

API

See API.md.

Examples

See examples folder.

For OBD-II examples, checkout the arduino-OBD2 library's examples.

License

This library is licensed under the MIT Licence.

You can’t perform that action at this time.