BeagleBone Black CAN problems


I’ve got a problem with my BeagleBone Black. I am using Debian 7.9 with the 3.8.13-bone70 kernel and the stock can-utils which were delivered with my BBB rev C.

I try to use the CAN interface on pin P9.24 and P9.26 to communicate with a given counterpart.

Now the problem: Everytime I try to send on the BUS via cangen or cansend in normal mode, it throws the following error or warning:

write: No buffer space available
If I try to send in loopback mode, it works fine. In this case, candump is able to receive the frames and CANAlyzer and my Oscilloscope show the outgoing frames on the tx pin too.

Additionally, I am not able to receive anything over the CAN when I try to send something from CANAlyzer to my BBB (with loopback mode disabled).

Even in listen-only mode, it isnt possible to receive anything.

Is there anyone who experienced a similar problem or could give me a hint?

This is my devicetree-overlay:


/ {
compatible = “ti,beaglebone”, “ti,beaglebone-black”;

/* identification */
part-number = “BB-DCAN1”;
version = “00A0”;

/* state the resources this cape uses /
exclusive-use =
the pin header uses /
“P9.26”, /
dcan1: dcan1_tx /
“P9.24”, /
dcan1: dcan1_rx /
the hardware ip uses */

fragment@0 {
target = <&am33xx_pinmux>;
overlay {
bb_dcan1_pins: pinmux_bb_dcan1_pins {
pinctrl-single,pins = <
0x180 0x12 /* P9.26 uart1_rxd.can1_tx INPUT_PULLUP | MODE2 /
0x184 0x32 /
P9.24 uart1_txd.dcan1_rx RECV_ENABLE | INPUT_PULLUP | MODE2 */


fragment@1 {
target = <&dcan1>;
overlay {
status = “okay”;
pinctrl-names = “default”;
pinctrl-0 = <&bb_dcan1_pins>;


Best Regards