Car dashbord communication with MCP 2515

When I connect the dashboard, these are the results with the loop message and with a total resistance about 55ohms:

The signal at the osciloscope stays with the noise of that mensage. It looks like it added the noise of the message to the typical CAN signal that the dashboard has.

when i try to run the receive_can stub with these settings, i detect the signal on the oscilloscope but i still don't receive anything on the Serial Monitor. Just this message:

12:04:56.570 -> Entering Configuration Mode Successful!
12:04:56.618 -> Setting Baudrate Successful!
12:04:56.618 -> MCP2515 Initialized Successfully!
12:04:56.618 -> MCP2515 Library Receive Example...

The signals should look like the one from your dashboard (e.g., reply #12).

Did you send a message? Your loop code can be empty. Just send a message with any ID and some data at the end of setup.

I suspect that eronbraids is using the CAN_loopback.ino loopback test program.
This only does the loopback within the MCP2515, therefore no data would appear on the CAN bus.
To send data as per post #3 would need the CAN_send.ino program from the same library.

If there is really no activity on the transceiver Rx when the CAN bus is active, this would indicate a hardware problem as the data sheet shows the Rx of the transceiver continuously monitors the CAN bus regardless of whether it is currently transmitting or listening.

thank you Klaus_K and mikb55

Yes I'm using just the loopback. And then I used the "receive". I have posted the images. Nobody had said to use "Send" yet. Only the "Loop" and the "Receive".

(I don't know if I already said it but I'm a beginner in CAN networks. I just know enough based on what I read of the OBD2 protocol diagnostic machines.)

I need help figuring out if the problem is mine or if I have any of the modules broken.
Is it possible to see from the values ​​obtained on the Chips if they are normal?
Are they normal? Can I test the "Send" sketch? What kind of message then should I write to the "serial monitor"?
Can you send an example of what a message would be like for me?

thanks in advance.

To do the transmit test as per message #3 disconnect the CAN bus and set the data rate to 50 kpbs and the crystal to 8 MHz in the CAN_send.ino program
MCP_CAN_lib/CAN_send.ino at master · coryjfowler/MCP_CAN_lib · GitHub

OK.
I loaded the "send" sketch with the respective speed and frequency changes.
Opening the "serial monitor" is the message that starts to appear. To send a message you need to open the "serial monitor" and write what? Or does the program already have a predefined looping message?

The sending message is already defined in the program.
The error messages are expected.

Use the oscilloscope to look at CAN High and Low. Measure the width of the shortest bit.
Also check for activity on pin 4 (Rx) of the transceiver.

The RX on UNO is blinking and both CAN measures 20µs.
I try another value (200kbps) instead and both CAN measures 5µs.
So the MCP and UNO modules are ok?
At pin4 of the transceiver (from your image on message #17), I have CAN signal. The same at Pin2 of the MCP2515.
Now your image makes sense to me. Both values are the same.

Using the oscilloscope do you see activity on pin 4 of the transceiver?

Do you see the same activity on pin 2 of the MCP2515?

OK, now both your module and the dashboard should have 50kbits/s. Connect the dashboard and run the sketch from reply #26. You should get "Message Send Successfully" instead.

Please confirm.

A strange thing happens: when I try to load the sketch on the arduino with the communications turned on with the dashboard, UNO doesn't load the sketch. Turning off the dashboard, it already lets it load.
Could it be a problem on the dashboard? Did the values on the dashboard transceiver look right(#19)?

How is your project going? Did you get it working?

Nope until now.
Anyone could help? new ideas or sugestions?

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.