RP2040 pico CAN-BUS ACAN2515.h-library how to change from loopBackMode to normal mode?

Hi @horace ,

thank you very much for posting this demo-code.

If I run your code on my MCP2515-board with Vcc of the MCP2515-board connected to 3.3V
I get this in the serial monitor

11:05:47.668 -> 
11:05:47.668 -> 
11:05:47.668 -> RP2040 CAN MCP2515 shield Send/Receive test - MCP2515 Initialize
11:05:47.702 -> Entering Configuration Mode Successful!
11:05:47.702 -> Setting Baudrate Successful!
11:05:47.702 -> CAN Receive - MCP2515 Initialized Successfully!
11:05:47.702 -> MCP2515 Library CAN Send/Receive Example
11:05:47.702 ->  enter space to send a frame
11:05:56.792 ->  0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=7
11:05:58.948 ->  0x01 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=7
11:05:59.886 ->  0x02 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=7
11:06:00.730 ->  0x03 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=6
11:06:01.948 ->  0x04 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=6
11:06:02.933 ->  0x05 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=6
11:06:04.011 ->  0x06 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=6
11:06:05.886 ->  0x07 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Error Sending Message sndStat=6

On my MCP2515 the CAN-tranceiver-chip is a NXP TJA1050-chip.
As user @mikb55 has already mentioned the TJA1050 needs a minimum supply-voltage of 4.75V

I have read that the RP2040 is not 5V-tolerant.
I disconnected the MCP2515-board from the pico supplied the MCP2515-board with 5V and measured voltages on the Pins.
The interrupt-pin had 5V. So it is no option to supply the board with 5V.

What is strange is that with an Arduino Uno and the MCP2515-board supplied with 3.3V everything works as you can see in this picture of the DSO
image

If the MCP2515-board is completely DIS-connected the code reports
0x03 0x01 0x02 0x03 0x04 0x05 0x06 0x07 Message Sent Successfully!

Well if the MCP2515 is completely DIS-connected how can this be?
It seems that the error-checking of the library is rather poor.

Can you post a link / datasheet to that CAN-BUS-board that you are using?

best regards Stefan