Even as a non-C/C++ person, it was honestly easier than I expected to get raw data: A small breadboard with an ESP32 chip and a CAN transceiver chip, power them both from my phone's USB-C port, and run an app to log serial output coming back over the same cable. I just need to plug the transceiver's high/low CAN wires into the right spots to start recording raw messages.
The biggest frustration, besides removing stubborn car paneling, is that so much of the CAN bus traffic is undocumented (no DBC) so I need to change things and look for time-correlated patterns.
Taking a log and annotating the values while opening the window, stopping and starting the car is exactly how you go about reverse engineering components. The problem is you can never be sure you really found all messages.
2 min theory followed by 2 min of listening to an existing network followed by 2 min of common pitfalls when building your own network.
I built my own electric cars from 2018 - 2023 and am now sharing everything I learnt with you in a series of videos and on https://foxev.io/academy in a learning web app :)
I hope this helps someone!