QT based cross platform canbus tool
C++ Other
Switch branches/tags
Nothing to show
Clone or download
Latest commit e63cac6 Jun 20, 2018
Permalink
Failed to load latest commit information.
bus_protocols Allow ISOTP and UDS to send extended frames as well as standard. Jun 19, 2018
connections Fix silly mistake Jun 15, 2018
dbc Fix signal interpretation when signals get near the end of the 64 bits. Jun 19, 2018
docs Add script used to build documentation for SavvyCAN Apr 18, 2018
examples Add some scripting examples Dec 10, 2017
icon A silly icon for SavvyCAN to spice things up. Jul 19, 2015
images More implementation of the signal editor. It is nearly 100% functiona… Jul 11, 2015
re Order output of range state window in order of ascending frame ID, so… Jun 4, 2018
test add main for tests Jun 24, 2016
ui Overwrite mode was accidentally grayed out. That is fixed now. Whoops. Apr 24, 2018
utils add lock free queue Jun 15, 2016
.gitignore Ignore generated files. Oct 22, 2017
LICENSE Initial commit Apr 28, 2015
README.md Readme: Fix spelling of Qt Nov 25, 2017
SavvyCAN.desktop Added an "installer" for Linux that creates desktop and application Jul 19, 2015
SavvyCAN.pro Add support for loading BLF files. Only loads CAN frames at this point. Feb 9, 2018
SavvyCAN.qch Add compiled help files as an aid to anyone who'd like to have them w… Apr 24, 2018
SavvyCAN.qhc Add compiled help files as an aid to anyone who'd like to have them w… Apr 24, 2018
SavvyCAN.qhcp Add compiled help files as an aid to anyone who'd like to have them w… Apr 24, 2018
SavvyCAN.qhp Add compiled help files as an aid to anyone who'd like to have them w… Apr 24, 2018
bisectwindow.cpp Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
bisectwindow.h Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
blfhandler.cpp Merge branch 'master' of github.com:collin80/SavvyCAN into WIP Jun 3, 2018
blfhandler.h Added debugging lines to BLF Handler, fixed a glitch in loading (well… May 20, 2018
can_structs.cpp Another fix for a graphing crash, added some prelim. stuff for UDS Feb 8, 2016
can_structs.h Make SavvyCAN aware of remote frames. Apr 29, 2018
can_trigger_structs.h Added bitwise not and modulus division to the list of operations you Nov 23, 2015
candatagrid.cpp Fixes for OSX Jan 6, 2017
candatagrid.h Added ability for candatagrid to show the currently used bits in gray. Jan 11, 2016
canfilter.cpp Fixed up ability to send frames while not connected and to show frames Dec 1, 2015
canfilter.h Many changes to improve UDS decoding. Oct 12, 2017
canframemodel.cpp Make SavvyCAN aware of remote frames. Apr 29, 2018
canframemodel.h Added ability to change time format string for when you're in System Jul 13, 2017
config.h Bump version number Jun 20, 2018
firmwareuploaderwindow.cpp A bit better debugging messages, fix up filtering for firmware updater Jan 2, 2017
firmwareuploaderwindow.h Changed the way the filter system works in the CAN connection objects… Dec 30, 2016
framefileio.cpp Fixes for several small bugs in file loading that messed things up. Jun 19, 2018
framefileio.h implement reading CANHacker trace files Apr 14, 2018
frameplaybackobject.cpp Reimplemented the ability to chain multiple log files and run them in… Nov 9, 2017
frameplaybackobject.h Moved a lot of the frame playback window functionality to a new class… Nov 9, 2017
frameplaybackwindow.cpp Fix setting of ID filtering with keyboard Jun 4, 2018
frameplaybackwindow.h Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
framesenderwindow.cpp Fix to allow custom frame sender window to send frames with ID = 0 Jun 4, 2018
framesenderwindow.h Fix crash when loading grid in custom sender. Fix a few other issues … Dec 15, 2017
helpwindow.cpp Fix to loading of online help system. May 18, 2018
helpwindow.h Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
helpwindow.ui Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
icons.qrc Addition of a playback form - used to play back a log file onto one o… May 6, 2015
images.qrc More implementation of the signal editor. It is nearly 100% functiona… Jul 11, 2015
install.sh Added an "installer" for Linux that creates desktop and application Jul 19, 2015
jsedit.cpp Removed dependency on QScintilla, switched to jsedit Aug 7, 2017
jsedit.h Removed dependency on QScintilla, switched to jsedit Aug 7, 2017
main.cpp Added ability to change the font size. Dec 11, 2017
mainsettingsdialog.cpp Add UI elements for a new remote connection system. Just UI and setti… Feb 11, 2018
mainsettingsdialog.h Small fix to ensure that settings are saved to their default values w… Dec 11, 2017
mainwindow.cpp Fix for some operating systems (mostly windows) where size calculatio… Jun 4, 2018
mainwindow.h Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
motorcontrollerconfigwindow.cpp Fixed compile errors in motor config window. But, it's broken anyway Aug 18, 2017
motorcontrollerconfigwindow.h Changed motor controller config window to target Rinehart Motion cont… Aug 11, 2017
qcustomplot.cpp Update QCustomPlot version. Feb 10, 2018
qcustomplot.h Update QCustomPlot version. Feb 10, 2018
scriptcontainer.cpp send non remote frames in scripts. Apr 29, 2018
scriptcontainer.h ISOTP and Scripting bug fixes Feb 4, 2018
scriptingwindow.cpp ISOTP and Scripting bug fixes Feb 4, 2018
scriptingwindow.h Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
signalviewerwindow.cpp Integrated help into the system. Most all the sub-screens that are ac… Dec 1, 2017
signalviewerwindow.h Implementation of message and signal name compiling into comboboxes o… Jan 20, 2017
utility.cpp Some bug fixes, much more work on ISOTP/UDS decoder window. Oct 13, 2017
utility.h Fix signal interpretation when signals get near the end of the 64 bits. Jun 19, 2018

README.md

SavvyCAN

Qt based cross platform canbus tool (C) 2015-2017 EVTV and Collin Kidder

A Qt5 based cross platform tool which can be used to load, save, and capture canbus frames. This tool is designed to help with visualization, reverse engineering, debugging, and capturing of canbus frames.

Really requires at a resolution of at least 1024x768. Fully multi-monitor capable.

You are highly recommended to use the CANDue board from EVTV.

The CANDue board must be running the GVRET firmware which can also be found within the collin80 repos.

It is now possible to use any SocketCAN compatible device under LINUX. There may, however, be some loss of some functionality as some functions of SavvyCAN are designed for use directly with the EVTVDue and CANDue 2.0 boards.

It should, however, be noted that use of a capture device is not required to make use of this program. It can load and save in several formats:

  1. BusMaster log file
  2. Microchip log file
  3. CRTD format (OVMS log file format from Mark Webb-Johnson)
  4. GVRET native format
  5. Generic CSV file (ID,D0 D1 D2 D3 D4 D5 D6 D7)
  6. Vector Trace files
  7. IXXAT Minilog files
  8. CAN-DO Logs
  9. Vehicle Spy log files
  10. CANDump / Kayak (Read only)
  11. PCAN Viewer (Read Only)

Dependencies

Now this code does not depend on anything other than what is in the source tree or available from the Qt installer.

Uses QCustomPlot available at:

http://www.qcustomplot.com/

However, this source code is integrated into the source for SavvyCAN and one isn't required to download it separately.

This project requires 5.8.0 or higher because of a dependency on QSerialBus.

Instructions for compiling:

Download the newest stable version of Qt directly from qt.io (You need 5.8.x or newer)

cd ~

git clone https://github.com/collin80/SavvyCAN.git

cd SavvyCAN

~/Qt/5.8/gcc_64/bin/qmake

make

Now run SavvyCAN

./SavvyCAN

What to do if your compile failed?

The very first thing to do is try:

qmake

make clean

make

Did that fix it? Great! If not, ensure that you selected SerialBUS support when you installed Qt.