An Arduino library for sending and receiving data using ISO 15765-2 or ISO-TP (Transport Protocol) over CAN-Bus protocol. Support segmented communication point-to-point between CAN nodes via two defined CAN Identifiers. Base on 11 bit CAN identifier scheme address.
_____________
| |
| CanIsoTp |
|(ISO 15765-2)|
|_____________|
| |
| CAN |
|(ISO 11898-1)|
|_____________|
|
|--------------------| CAN bus
The CAN-ISO-TP soport in transmision and reception:
- Single Frames (SF).
- First Frame (FF).
- Flow Control Frame (FC), Block Size (BS) and mimimum Separation Time (STmin).
- Consecutive Frames.
- Timeout Session.
- Timeout FlowControl.
- Timeout WFTmax (Maximum limit number of CANTP_FC_WAIT).
This proyect use the library arduino-CAN from Adafruit and it is compatible with the following hardware:
- Adafruit Feather M4 CAN Express with ATSAME51
- SAM E5x microcontrollers
- Microchip MCP2515 based boards/shields
- Arduino MKR CAN shield
- Espressif ESP32's built-in SJA1000 compatible CAN controller with an external 3.3V CAN transceiver
This protocol has been developed and tested wiht:
cd ~/ProjectFolder
git clone https://github.com/MLeganes/arduino-CAN-ISO-TP.git
Check the folder /example.
This library is licensed under the MIT Licence.