Moved from CAN_BCM to CAN_RAW. Restored basic functionality that BCM had natively. There are likely bugs due to some non functionality between how the original program operated with CAN_BCM and now, but it is working on my bench with a NMEA 2000 GPS. Update README.md Restored add/remove ID Restored ability to remove or add active CAN frames. The CAN_ID must already exist in sniftab for this to work. Update cansniffer.c Fixed a potential for a segmentation fault to occur with the sniftab array. Changed arbitrary max array value to defined name for flexibility with increasing the array size. Other polish I forgot about. Settings file operations work Aligned settings file operations for use with 29bit IDs. Instead of saving all 800 "slots" (or 11 bits IDs for the program as originally written), it now saves in use slots based on CAN ID and will load that ID into a slot for the program to potentially match upon. Truncate when overwritting settings Need to truncate settings file... Update README.md Update cansniffer.c Cleaned up some unused commented code. |
||
|---|---|---|
| config/m4 | ||
| include/linux | ||
| .gitignore | ||
| .travis.yml | ||
| Android.mk | ||
| GNUmakefile.am | ||
| Makefile | ||
| README.md | ||
| asc2log.c | ||
| autogen.sh | ||
| bcmserver.c | ||
| can-calc-bit-timing.c | ||
| can-j1939-kickstart.md | ||
| can-j1939.md | ||
| canbusload.c | ||
| candump.c | ||
| canfdtest.c | ||
| canframelen.c | ||
| canframelen.h | ||
| cangen.c | ||
| cangw.c | ||
| canlogserver.c | ||
| canplayer.c | ||
| cansend.c | ||
| cansniffer.c | ||
| configure.ac | ||
| isotpdump.c | ||
| isotpperf.c | ||
| isotprecv.c | ||
| isotpsend.c | ||
| isotpserver.c | ||
| isotpsniffer.c | ||
| isotptun.c | ||
| jacd.c | ||
| jspy.c | ||
| jsr.c | ||
| lib.c | ||
| lib.h | ||
| libj1939.c | ||
| libj1939.h | ||
| log2asc.c | ||
| log2long.c | ||
| page.theme | ||
| slcan_attach.c | ||
| slcand.c | ||
| slcanpty.c | ||
| style.css | ||
| terminal.h | ||
| testj1939.c | ||
README.md
SocketCAN userspace utilities and tools
This repository contains some userspace utilities for Linux CAN subsystem (aka SocketCAN):
Basic tools to display, record, generate and replay CAN traffic
- candump : display, filter and log CAN data to files
- canplayer : replay CAN logfiles
- cansend : send a single frame
- cangen : generate (random) CAN traffic
- cansniffer : display CAN data content differences
(just 11bit CAN IDs)
CAN access via IP sockets
- canlogserver : log CAN frames from a remote/local host
- bcmserver : interactive BCM configuration (remote/local)
- socketcand : use RAW/BCM/ISO-TP sockets via TCP/IP sockets
CAN in-kernel gateway configuration
- cangw : CAN gateway userpace tool for netlink configuration
CAN bus measurement and testing
- canbusload : calculate and display the CAN busload
- can-calc-bit-timing : userspace version of in-kernel bitrate calculation
- canfdtest : Full-duplex test program (DUT and host part)
ISO-TP tools ISO15765-2:2016 for Linux
- isotpsend : send a single ISO-TP PDU
- isotprecv : receive ISO-TP PDU(s)
- isotpsniffer : 'wiretap' ISO-TP PDU(s)
- isotpdump : 'wiretap' and interpret CAN messages (CAN_RAW)
- isotpserver : IP server for simple TCP/IP <-> ISO 15765-2 bridging (ASCII HEX)
- isotpperf : ISO15765-2 protocol performance visualisation
- isotptun : create a bi-directional IP tunnel on CAN via ISO-TP
Log file converters
- asc2log : convert ASC logfile to compact CAN frame logfile
- log2asc : convert compact CAN frame logfile to ASC logfile
- log2long : convert compact CAN frame representation into user readable
Serial Line Discipline configuration (for slcan driver)
- slcan_attach : userspace tool for serial line CAN interface configuration
- slcand : daemon for serial line CAN interface configuration
- slcanpty : creates a pty for applications using the slcan ASCII protocol