Automotive

savvycan

savvycan is the graphical counterpart to can-utils. It captures CAN traffic and presents it visually — a live frame list, graphing of signal values over time, and analysis tools that help you pick a meaningful signal out of the flood of frames. Its strengths are the reverse-engineering aids: it can diff captures, decode frames against DBC definition files, replay and generate traffic, and flash firmware through supported adapters. For working out what an unknown vehicle’s messages mean, the visual tools make the job much faster than reading raw dumps.

SavvyCAN is a graphical application, launched into its own window from Security → Automotive → savvycan. Installed from the AUR.

Using it

  1. Connect an interface — SavvyCAN talks to SocketCAN devices (the same can0 you’d use with can-utils) and to serial CAN adapters like the CANtact/ESP32 family.
  2. Start a capture and watch the frame list populate.
  3. Find signals — use the frame-comparison and “sniffer” views to see which IDs and bytes change as you operate the vehicle, the graphical version of the cansniffer loop.
  4. Decode and graph — load a DBC file to label known messages, and graph a byte’s value over time to understand a continuous signal like speed or RPM.
  5. Replay or send frames to test your understanding.

SavvyCAN and can-utils read the same bus; use the command-line tools for scripting and captures, and SavvyCAN when you want to see the traffic to reverse-engineer it.