Connect CBT to MCP2515 CAN Bus Monitor Demo Board

Hi,

Before using the CBT on my car, I wanted to check it with the demo board - MCP2515 CAN Bus Monitor Demo Board - http://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=MCP2515DM-BM

The MCP2515 CAN Bus Monitor Demo Board kit contains two identical boards which can be connected together to create a simple two node CAN bus.

On the network there is a D9 socket that can be used for sniffing.

I connected the CBT to the D9 connector (pin 2,7) for canH and canL
but didn't see any traffic.

Did anyone try it?

Cheers,

It seems like you are trying to make a workbench canbus.

First thing is first, there must be ~120 ohms total on the bus, that means 60 ohm termination resistors at each end of the bus, otherwise the controllers will have huge problems sending & receiving data.

Second thing, make sure that all nodes on the bus are operating at the same baud rate. This baud rate is NOT the baud rate of the CBT's serial port, that is for RS232 only.

Third thing, make sure you have your pins connected correctly, here is some reference:
http://res.cloudinary.com/ddbgan4vk/image/upload/v1430871773/CBT_Pinouts_Diagram_eqr9fi.jpg

by the way, there won't be any data on your workbench bus unless a node is sending

Hi,

Thanks for your reply,

First, as far as I know, the total resistance of the bus should be 60 ohms, thus we usually put 2 120ohms resistors on the ends , 2 parallel 120 ohms results total 60 ohm.
please refer to :
http://www.ni.com/white-paper/9759/en/
alt text

In the MCP2515 CAN bus monitor the 120 ohm resistor connectivity is determined by a FET transistor , which is controlled by the PIC18 MCU ,
So I decided to skip this part, and try to sniff the OBD2 port of my car.

I'm using Togglebit OBD2 cable from :
http://togglebit.net/product/arduino-due-car-kit/#

I connected the wire by colors :
CBT orange to wire green/black ,
CBT yellow to wire white/black ,
CBT green to wire blue/black,
CBT blue to wire yellow/black

I didnt connect the ground or power wires (Do I need to do that?)
I didnt add 120 ohms resistor, since I thought that its not needed when you connect CBT to a car bus.

The CBT couldn't detect any bus ( I used the serial API) I run the command :
010801
010802
010803

I know that the serial commands work because I get info for 0101

Do you have any idea?

Cheers,

Why are you using 08 as the second octave? Try 010102

I'm using http://docs.canb.us/firmware/api.html
as reference for the serial commands:
I want first to set the baud rate , so I tried:
0x01 0x08 0x0N Auto detect baud rate for bus N (Bus must be active for successful detection)

Then I tried :
0x03 0x01 0x01 NA Enable logging on bus 1 (do not touch current filter)

but got a single char and then nothing

Where did you take the 010102 ?

last edited by issakd

make sure you are sending raw HEX data to the serial port, not ASCII.

If you send 01 using ascii the CBT will receive (in decimal) 41 42

Looks like your connection to CANBus Triple was lost, please wait while we try to reconnect.