I tried to get the dsPIC to work with internal CAN a while ago and failed.. I decieded to go basic to basics today but I am still mystified.
I have an ECIO40P16 in a ECIO breakout board + EB018 CAN board and a second CAN device to respond to the messages. Its all monitored with a CANalyser and Decoding scope.
The CAN board is supplied 5V.
Using the CAN E-block and MCP2515 External CAN controller chip the following Flowcode works as expected. So to my mind I now have a proved and working test setup.
Then...In Software
Flowcode CAN component to channel Internal 1
Set Pin D6 to Tx, Pin D5 to Rx For the Hardware
Remove the MCP2515 controller chip
Link Pin D6 to Transceiver Pin 1 (via pin1 of MCP2515 socket)
Link Pin D5 to Tranciever Pin 4 (via Pin2 of MCP2515 socket)
But the output on the bus is now garbage, the other CAN device is not happy because it does not get any acknowledgement of its frames.
There is output on Pin D6 but it does not look much like the CAN message data.
I tried swapping the RX/Tx pins in hardware, No change.
has anyone got dsPIC and internal CAN working or can you see anything stupid I have done?

Cheers, J.