Adding CAN Bus (can0) device to BeagleBone

Well, still more problems… Going back to my very first post about adding can0 by typing “ip link add dev can0 type can”, I still get the same error message. However, vcan works just fine (I enabled this in the config as well). I even tried marking yes to everything in the CAN section, but still no luck. Am I missing something else? My config is shown below:

You need platform data to init the can bus. Or as has been popular recently, emulate a can cape with an eeprom :slight_smile:

Platform data? I'm not familiar. I figured I could add an eeprom to
my cape to make this work, but if this can be fixed with software, I
would prefer that route.

Can you tell me how to initialize the can bus? Thanks,

I may have it working now, but won’t be able to test for sure until tomorrow. can0 is now showing up… here is what I did:

Added these two lines somewhere in the beaglebone_cape_setup() function in the /arch/arm/mach-omap2/board-am335xevm.c file.
setup_pin_mux(uart1dcan1_pin_mux);
am33xx_d_can_init(1);

A bit of a hack, but it seems to have done the trick. I’ll know for sure when I plug it into my can bus tomorrow.

Nope, not working. I’ve been fighting this too long and I’m ready to give up. I’ll just order the cape from Tower Technologies and pay out the nose…

For anyone reading this post, the method I used to initialize the can bus did work. I had a (very stupid) wiring problem which is why I thought it was not working. I used a standard 3.3V CAN Transceiver: TI SN65HVD231 and everything works perfectly.

No, everything is working great. Let me know if you have any problems.

Hello Brent,

Is it possible for you to share your schematic?

I have worked with other hardware platforms, but not the Beagleboard…

Thanks
Chris