Skip to content

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

License

Notifications You must be signed in to change notification settings

Lukilink/arduino-CAN

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 99.1%
  • C 0.9%