by Polux RSV on Fri Mar 02, 2012 11:17 pm
Using MCP2515 on a micro-controller like ATmega, etc... connected with SPI will difficult. Handling SPI will be time consumming, so the risk to loose CAN packets is high.
I would suggest using more powerfull micros with integrated CAN controllers. Either STM32 or LPC1700 will do the job, they have 1 or 2 integrated CAN controllers with powerfull filtering scheme. They can handle CAN bus and use some wireless module from Xbee, Wifly, etcc. They are fast enough, 72MHz for STM32F103, 120MHz for STM32F2 and LPC17XX.
As an example, I created an interface using a LPCXPresso LPC1769 evaluation board. The IDE is free and powerfull with full debugger and so on. The interface is connected between my M800 and a Marelli MT940 dash. It received CAN packets from the M800 on CANBUS1, translated the data and resend them with a new protocol on CANBUS2. On top of that, it reads a 10Hz GPS module on UART1, resend the data at 5Hz on UART2 to the M800, and send "BR2 like" messages on CANBUS 1 to M800 for lap timming. All this without tricky code, assembly or special compiler directives.
Angelo