Hi all! I'm trying to do some CAN Bus sniffing with an Arduino and I'm running into some trouble...
Here's what I have for hardware for starters:
This OBD to Serial cable
This CAN Bus Shield:
https://robotdyn.com/can-bus-shield-for-arduino.html
And this UNO clone:
I'm trying to sniff the CAN on a 2016 Subaru through the OBD port. I am certain I can do it through this port because I already have a head unit that can read (and configure) the car's CAN functions through this port.
I followed this tutorial:
https://learn.sparkfun.com/tutorials/can-bus-shield-hookup-guide/all
And I used this basic demo to see if I could get unfiltered codes to dump out:
(I made sure to use the library that belongs with this code too).
I was able to get an "INIT OK" out of this code, and despite fooling with the CAN speeds, and the read pin in the code I was never able to get any CAN data.
I also tried this library and demo code: (along with the associated libraries)
I wasn't able to get a result out of this one either. Interestingly, just to rule out having the wrong pin defined I changed that number to pins 0-13 and I only got an "init OK" on pin 10, but never any CAN data.
As a last ditch effort I tried this code:
http://www.blackhurst.co.uk/RX8/readcanbus.txt
Which I saw being used in this video:
From the research I've done it looks like dumping out CAN codes is easy, and that precisely the thing I'm stumbling on... I feel like I'm missing something very obvious here, so if anyone could steer me in the right direction I'd very much appreciate it!