Hi,
Please refer the below steps.
These are the steps can be followed to enable and check CAN on TX2.
-
Enable kernel support for mttcan(Other required modules are already supported)
CONFIG_MTTCAN = m (Here mttcan is compiled as a module) -
Insert CAN BUS subsystem support module.
modprobe can -
Insert Raw CAN protocol module (CAN-ID filtering)
modprobe can_raw -
Real CAN interface support (for our case, it is: mttcan)
modprobe mttcan (dependent module is can_dev: can driver with netlink support) -
CAN interface settings for both the controllers
ip link set can0 type can bitrate 500000 dbitrate 2000000 berr-reporting on fd on
ip link set up can0
ip link set can1 type can bitrate 500000 dbitrate 2000000 berr-reporting on fd on
ip link set up can1
CAN interfaces are up now. Use ifconfig to list all the interfaces which are up.
-
Installation of user app to check CAN communication
sudo apt-get install can-utils -
Commands to run to check CAN packet send/receive
broadcasting a can data packet:
cansend <can_interface> <can_frame>
e.g. cansend can0 123#abcdabcd
Receiving a can data packet:
candump can_interface
e.g. candump can1
Different tools (i.e. cangen, cangw etc) can be used for various filtering options.
- To check the interface statistics
ip -details -statistics link show can0
ip -details -statistics link show can1
Thanks & Regards,
Sandipan