Hi there!
I don’t know how to get BBB’s DCAN1 working, though I’ve been striving for quite a long time.
I installed the OS from a Debian image available at http://beagleboard.org/ and followed the guide http://dev.ardupilot.com/wiki/building-the-code/building-for-beaglebone-black-on-linux/ to make the kernel RT-Preempt:
root@beaglebone:~# uname -a
Linux beaglebone 3.8.13-rt9-00899-g3d8f2b1 #1 SMP PREEMPT Sat Jan 31 12:22:12 CET 2015 armv7l GNU/Linux
To work with DCAN1, I also followed the guide http://www.embedded-things.com/bbb/enable-canbus-on-the-beaglebone-black/ using the suggested device tree overlay:
root@beaglebone:~# modprobe can
root@beaglebone:~# modprobe can-dev
root@beaglebone:~# modprobe can-raw
root@beaglebone:~# echo BB-DCAN1 > $SLOTS
root@beaglebone:~# cat $SLOTS
0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—
4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
6: ff:P-O-- Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN
7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-DCAN1
root@beaglebone:~# /sbin/ip link set can0 up type can bitrate 500000
root@beaglebone:~# ifconfig can0 up
root@beaglebone:~# ifconfig can0
can0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
UP NOARP MTU:16 Metric:1
RX packets:3 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:10
RX bytes:24 (24.0 B) TX bytes:0 (0.0 B)
Interrupt:71
Pins seem to be muxed correctly:
root@beaglebone:~# cat $PINS | grep 984
pin 97 (44e10984) 00000032 pinctrl-single
root@beaglebone:~# cat $PINS | grep 980
pin 96 (44e10980) 00000012 pinctrl-single
Now, as I run a simple cansend-candump test on can0, candump doesn’t get anything. Is there anyone who can help me out?
Thank you
Frudak