CAN-BUS is a common industrial bus because of its long travel distance, medium communication speed and high reliability. It is commonly found on modern machine tools and as an automotive diagnostic bus. Thanks for CAN-BUS, makers are able to hack their cars more conveniently. In order to make it more convenient to interact with cars, we released the CAN-BUS Shield which adopts MCP2515 CAN-BUS controller with SPI interface and MCP2551 CAN transceiver to give you Arduino/Seeeduino CAN-BUS capability.
Previously we have made two versions of CAN-BUS Shield, the V1.0 and V1.2. They are all awesome shields that widely liked by our users. In order to make it better, several months ago we conducted a survey about CAN-BUS Shield V1.2 and received many valuable advices (Thanks to all the users who replied to us), so we decided to make an update and here it is - CAN-BUS Shield V2.
The CAN-BUS Shield V2 still uses MCP2515 as CAN-BUS controller and MCP2551 as CAN transceiver. Despite of that, there are really many updates. First and most importantly, OBD-II or CAN standard pinout can be selected by switching jumpers on DB9 interface, the default pinout is OBD-II. Secondly we add a TF card slot for data storage and the CS pin can be either set to D4 or D5. The INT pin can also be set to D2 or D3 by switching jumpers on the back of the shield. If you want to use more than 2 CAN-BUS Shield, it is needed to cut P1 pad. In V2, we moved the P1 pad from front to the back of the shield to make it easier to cut and solder. All in one, there are more options for customization.
Consider that the D0/D1 pin are usually used for downloading code, we changed the serial Grove connector to pin A0/A1. The I2C grove connector is also changed to more reasonable standard SDA/SCL pin instead of previous A4/A5. The two grove connectors are both changed to horizontal rather than vertical to the shield so that it would be more convenient when connecting to other grove modules.
Features:
-
Implements CAN V2.0B at up to 1 Mb/s
-
Industrial standard 9 pin sub-D connector
-
OBD-II and CAN standard pinout selectable.
-
Changeable chip select pin
-
Changeable CS pin for TF card slot
-
Changeable INT pin
-
Screw terminal that easily to connect CAN_H and CAN_L
-
Arduino Uno pin headers
-
2 Grove connectors (I2C and UART)
-
SPI Interface up to 10 MHz
-
Standard (11 bit) and extended (29 bit) data and remote frames
-
Two receive buffers with prioritized message storage
Version Tracker
Features | V1.2 | V2.0 |
CAN-BUS Controller | MCP2515 | MCP2515 |
CAN Transceiver | MCP2551 | MCP2551 |
Default OBD Pinout | OBD-II Standard | OBD-II Standard |
CAN Standard Pinout | Not compatible | Compatible (jumper) |
INT Pin | Not changeable | D2 or D3 (jumper) |
CS pin for TF card slot | No TF card slot | D4 or D5 (jumper) |
P1 pad | Front of the shied | Back of the shield |
Serial Grove | D0/D1 | A0/A1 |
I2C Grove | A4/A5 | SDA/SCL |
Grove Orientation | Vertical | Horizontal |
Note:
CAN BUS Shield Work well with Arduino UNO (ATmega328), Arduino Mega (ATmega1280/2560) as well as Arduino Leonardo (ATmega32U4) and LinkIt One, if you want to use it with the others board, please contact us for more details.
| Arduino UNO | Arduino Mega | Arduino Leonardo | LinkIt One |
CAN-Bus Shield V2 | Compatible | Compatible | Compatible | Compatible |
Documents
-
For libraries and documents, please visit our Wiki page.
-
For technical discussion, please come to our Forum.
-
For projects that you would like to share with the community, please visit Recipe.