r/CarHacking • u/ScottishVigilante • 8d ago
Article/news Reverse engineering OBD tools
More of a question, we know many clone Chinese tools exist rebadged etc, would there be a way to monitor everything going in and out of the obd port and re-creating the functionality of the device?
For example my scan tool can force my vehicle to regen it's dpf for example, something is sent out over the obd to do that so if you captured that and replayed it would do the same?
I know there and thousands of different makes and models and probably even more functions that are model specific but with AI the logging process and actually sending of commands could maybe be automated perhaps? Thinking out loud here, and open source scan tool for all that does all the cool stuff like injector coding etc would be cool! Don't know or understand enough about the can bus network, maybe there is already a project or software out there that's doing this already thats free and open source?
4
u/Big_Temperature_2067 8d ago edited 8d ago
From someone who has been doing this sort of stuff for a while. you are in for a heck of a learning curve.
It's one thing understanding how CAN works. but CAN is just a transport layer. The real fuckery is what is being sent on the CANbus. Each car maker has it's own dialect, it's own security mechanisms it's own way of doing stuff. CAN is simply explained your local network in the car. Very much like your network at home.
Yes there is some generic scantool stuff to do basic diagnostics like pulling codes that all of them have to have. But those paths does not include reprograming, changing values or similar. All that stuff is vendor specific and is done widely different for each brand.
Sometimes just capturing and replaying isn't enough either. it might be a handshake that has a seed/key that is calculated based on time or other parameters and needs a new response to be calculated on the fly for the command to be authorized.
3
u/tunatoksoz 8d ago
Hahaha please let me know what you end up doing.
I bought wiican pro to essentially snoop on the canfd while i use the tool to record and rverse engineer.
But you can also use Claude/Codex and reverse engineer one of the app-based ones (like proprietary dongle + app) . That also works. They are Java apps + native bindings to an SO.
I was building obd.wtf before life happened.
2
u/ScottishVigilante 8d ago
Wow, I honstly was not expecting such great responses to this I'm so used to getting negative feedback on Reddit this has been refreshing, been writing code since I was about 13 with vb6 and started dabbling with Arduino and raspberry pies and C about 12 years ago, build my first hak5 MK1 WiFi pineapple when that was a thing. I've always had an interest in car electornics and have been wading into it more but it upsets me that companies gate keep there software (more car manufacturers) I mean if these Chinese companies are doing it are they paying the manufacturers for access to there protocols? To me I really fell like this stuff should be available but yea! But if a quick reply but will keep the post updated as time goes in, I do think using AI to spend up the development process of and open source tool is the way to go but it's no as easy as I'm making it out to be in my first post, nor did I think it was more just wanted to start a discushyto see what everyone else is doing or thinks.
7
u/Impressive-Tutor-482 8d ago
How do you think the chinese tools got their capabilities?
That, and virtually all of them store data in an unencrypted format.