Step-by-step guide
Software Setup:
Kernel:
Apply the CAN patches to the linux source code: 0002-mvf-fixed-flexcan-driver-and-added-support-for-flexc.patch and 0003-pcm052-added-flexcan-support-for-the-phyCORE-Vybrid.patch
cd build_armv7l-timesys-linux-gnueabi/linux-3.0/ patch -p1 < 0002-mvf-fixed-flexcan-driver-and-added-support-for-flexc.patch patch -p1 < 0003-pcm052-added-flexcan-support-for-the-phyCORE-Vybrid.patch
Rebuild the kernel:
make kernel-restage; make kernel-build; make kernel-install-image
- Root filesystem
The root filesystem must include iproute2 and can-utils. Use the menuconfig command in the Timesys Factory to select them:
make menuconfig ¦ -> Target Software ¦ ¦ -> Software Packages ¦ ¦ -> Networking ¦ ¦ -> Miscellaneous ¦ ¦ [*] iproute2 ---> ¦ -> Target Software ¦ ¦ -> Software Packages ¦ ¦ -> Networking ¦ ¦ CAN Bus ---> ¦ ¦ [*] canutils --->
Build these packages:
make
Test the CAN Interface:
We recommend using PCAN-USB and PCAN-View Software to test the CAN interface.
Download the device driver for PCAN-USB here: http://www.peak-system.com/PCAN-USB.199.0.html?&L=1
Open PCAN-View, install from here: http://www.peak-system.com/PCAN-View.242.0.html?&L=1 (set to 1Mbit/s)
- Open PCAN view on your host computer and configure the bitrate. In this example it is set to 1Mbit/s.
Setup the CAN interface on the Vybrid, from the Linux target console run:
ip link set can0 down ip link set can0 type can bitrate 1000000 triple-sampling on ip link set can0 up
Make sure that the bitrate set here matches the one set on your host computer in PCAN-View.
Transmit a message to the host computer. Type the following from the target console:
cansend can0 222 173 190 239 202 254 186 190
You should see the following in the 'Receive' section of PCAN-View:
Should view the following: Message DLC Data 01h 8 DE AD BE EF CA FE BA BE
Receive a message from the host computer. Type the following from the target console:
candump [CTRL+C to quit candump
On PCAN-View 'Transmit':
Right Click -> New Message
Create a message
Click OK
Double Click the message in the 'Transmit' window
When running candump - should see the message in target console
CAN Not Working?
See this message: "ip: either "dev" is duplicate, or "type" is garbage"
http://www.armadeus.com/wiki/index.php?title=CAN_bus_Linux_driver
Solution: Run "which ip", if it states "/bin/ip" - make sure you are using the correct filesystem (iproute2) -- should result in "/sbin/ip"
Related articles
There is no content with the specified labels