CAN BUS

I'm trying to read my cars CAN BUS data so i can use it to control a few relays and PWM SSR. I have a CAN BUS sniffer connected to the Arduino and the ECU Via the twisted can wires along with the 120 ohm resisters.

I cant seem to receive any data, does anyone have a proven program or link to one and it corresponding library.

Once I get the CAN data such as speed and gear position it will allow me to to control the power steering and clutch valve. (Among other things)

You first need to find the bitrate at which the CAN bus operates. There are some standard CAN rates that are derived from a 8MHz clock frequency, but some buses have a frequency that cannot be created from the standard 8MHz. There are two options.

Use an oscilloscope to measure the speed or try to run through all the standard frequencies ( 1MBit, 500, 250, 125, 100, 50, 25, 10, 5kbit/s) and listen to the CAN messages. You should only do this with a CAN module that has listen only mode, otherwise you can disturb the bus. Every CAN node monitors the bus and creates error frame when it sees CAN messages that are not correct. Your node will believe all messages to be incorrect when it is set to the wrong speed. So, do not drive while you test this. :)

You should not add any resistors to the CAN network. Every operating CAN network has two termination resistors, one at each end. When you add your node to the network no additional resistor is necessary.