Easy-to-use C# library for parsing, filtering, analysis, and export of CAN & CAN-FD data including transport protocols like ISO-TP and UDS.
Note
CANalysis is still undergoing early development. It is subject to agiile breaking changes for upcoming features like DBC functionality.
CAN data can be fed into the library programatically, or via parsers for popular formats:
- SavvyCAN GVRET CSV
more formats coming soon
Lambda filters can be used to easily slim down to the desired data set for analysis
// Filtering by ID and data length
var filteredFrames = new CANFrameFilter()
.ByID(id => id == 0x123 || id == 0x456)
.ByLength(length => length == 2)
.Apply(frames);
Various built-in analysis tools are provided for common use-case scenarios
ISOTP.ReadTransmissions
identifies and parses all valid ISO-TP communications- Single-frame & multi-frame
- Ordered by first frame, can handle multiple concurrent transmissions
- It is suggested to filter input to known UDS/ISO-TP IDs to prevent false positives
more broadcast bit-based tools coming soon
Parsed or filtered/analyzed output can be used programatically, or exported to a file in any format that CANalysis can parse. If no operations are made, this means CANalysis can effecively be used as a file format converter.