Commit Graph
163 Commits
Author SHA1 Message Date
Andy Huska ab476c746e Added fully qualified dbc, node, and msg searching
...to graphing window and signal viewer so complex systems with message
name duplication (eg "Status") works well.  DBCHandler class has a new
function to find a msg by fully qualified node name...Utility class defines
the qualified name seperator, right now it is :: and is used thusly
filenameNoExtension::nodeName for display in the node dropdown (because
nodes can be common between dbc files).  To get the message from the
system you use the findMessage function in dbchandler and pass the
msgName and the fully qualified node name.  This is about as unique as we
can get, second only to message ID.

Added node comboBox to graph signal editor for easier data filtering
(took the same implementation that was in signal viewer, and tuned up
both of them)
2023-05-17 17:23:27 -05:00
Collin Kidder 1e5f5c7a94 Fixes to UDS Scan window to make it function properly while also
loading/saving successfully
2023-03-20 22:09:39 -04:00
Collin Kidder 39b43ebf38 Switched up the way time stamp formatting is done. Now tracked by an
enum for easier determination. Also changed graphing window to respect
"system clock" style timestamps and display them properly.
2023-03-15 19:50:58 -04:00
diekleinekuh 499d683ad6 uds scan tool improvements
- color id,subfunc and service fields red if they caontain invalid ranges
- do not change user input anymore
- set default extension when saving
- allow setting lower bounds for subfuncs > 0xFF
2023-02-21 15:00:17 +01:00
Collin Kidder 579957aaa6 Transition yellow color on graphs to a darker tone for better
visibility.
2023-02-16 19:14:37 -05:00
Collin Kidder 329f1162ac Merge branch 'master' of github.com:collin80/SavvyCAN 2023-02-14 19:48:07 -05:00
Collin Kidder 728f8c9e4e Better handling of range boundaries in UDS window. Now allows the
starting value to push ending value along with it for easier setting
of values.
2023-02-14 19:47:30 -05:00
diekleinekuh 60888e6a86 Use selected can bus in uds scanner.
Before it always used the first bus no matter what.
2023-02-14 19:00:49 +01:00
Collin Kidder ffc9278380 Allow hiding / showing byte graphs in Frame Info. Double click on
graphs for magic.
2023-01-17 22:09:39 -05:00
Collin Kidder 18a9dbdfb6 Fix up graph zooming for all the graphs on Frame Info. Now possible to
scroll or zoom one axis at a time.
2023-01-15 22:42:49 -05:00
Collin Kidder 74ec42a720 Add new heatmap mode to CAN data grid widget, put that widget onto
Frame Info Window. Made Frame Info Window able to have the two sides
resized relative to each other
2023-01-15 17:05:43 -05:00
Collin Kidder bbb5c99e78 Reworked the Info Window to use separate graphs for each byte and also
allow dynamic drag based resizing of the two sides of the window
2023-01-15 15:18:35 -05:00
Collin Kidder 816dc70b60 Fix crash when the Frame Info window is used then closed then a new
file is loaded.
2023-01-12 20:54:53 -05:00
Collin Kidder 03d9f04e21 Added a bitchange heatmap to frame info window, incremented version
number.
2023-01-12 20:35:04 -05:00
Collin Kidder 6bb980920f Fix swapped bytes when sending a "Request DTCs" message in UDS scanner. 2023-01-12 20:01:09 -05:00
Collin Kidder 329a5016cc Add graph fixes to flowview and frame info windows
Prev commit fixed graphing window but these other two had the same problem on hiDPI screens
2022-12-25 18:16:01 -05:00
Collin Kidder bc2b759152 Merge pull request #358 from pyjamasam/openglgraphfixes
Fix up double sized opengl graph rendering on high res screens
2022-12-25 13:27:51 -05:00
Collin Kidder edc210c336 Only code clean up to remove many warnings. There should be no changes
to program operation.
2022-12-05 19:33:47 -05:00
Collin Kidder 549113f9e1 Flowview will now automatically set the grid to support the frame data
length even for CAN-FD frames (Use Middle Mouse Button to force it to
different sizes)
2022-12-04 22:29:46 -05:00
Collin Kidder 79678af7ba Much more implementation of CANDataGrid for CAN-FD. More or less works
now for both changed bit and signal views. There are still some
graphical tweaks to do. Probably doesn't quite work in fuzzing window
just yet.
2022-12-04 13:15:02 -05:00
Collin Kidder e1c4046bf1 Graphing window now respects bus number. Set to -1 to allow any bus or
to 0 or a positive number to lock a graph to a specific bus.
2022-11-29 21:15:38 -05:00
Andy Huska 01d793f21f Merge branch 'master' into fix_customsendcrash 2022-11-02 16:52:20 -05:00
Andy Huska 1b41decd20 Custom sender is no longer crashing
There are a TON of explorations I did here, many may be unnecessary, but this is a stake in the ground.

The main issue was the strange queue logic in canconmanager::sendFrame which puts the tx data in the rx
queue so it will show up in the displayed data.  It caused SIGABRT and SIGSEG to show up everywhere.
It is NOT fixed yet, but TX works over the wire you just can't see it in the tableview.

I thought at first it was only when overwrite data was active, so I put in a a pile of changes to keep
frames and filtered frames as two seperate copies of data where frames was always complete and filtered
was only what was seen in the mainwindow.  It made it so the graphing window would work with overwrite
data active which is an improvement.  I wouldn't roll these changes back.  Because of these changes I
had to update the frame sorting code adjust the refresh function in canframemode.cpp

I also thought it was related to UI updates, but its not, that's been confirmed.

I put a mutex around the custom sender tick timer so that the 1ms timer wouldn't re-enter its callback.
This didn't fix the crash, but it sure seems to make a lot of sense, and the way I did it no elasped
time is lost for tracking purposes, and in reality theres no way 1ms was consistent anyway.

I put a mutex around the shrinking of frames and filteredframes to make sure we weren't deleting at
the same time as accessing, but honestly we acccess those lists in many places without semaphores so
that probably did nothing.

Fixed a bug in FrameSenderWindow:DoModifiers that was improperly parsing and sometimes crashing when
looking for the ~ operator before a symbol.

Also added some minor work to keep row expansion functioning when changing filters or sorting.  Need
to make some tweaks so it stops trying so hard when overwrite is not active

Theres also code in main.c taht makes debugging output super verbose.

Committing now to start cleanup
2022-11-01 15:01:07 -05:00
Andy Huska c6c19b38aa for clint 2022-10-14 16:25:03 -05:00
Collin Kidder 7678a498db Merge branch 'master' of github.com:collin80/SavvyCAN 2022-10-04 19:59:46 -04:00
Collin Kidder 61b49c9126 Changed the UDS Scan window quite a bit. Now there are more options
for scan types and the ability to create a list of scans to run.
2022-10-04 19:54:55 -04:00
Ludovic LANGE bcbe3d38bd Use enums from Qt::ItemFlags
It seems that one my compiler we need to use an explicit enum instead of
the constant it represents.
It shouldn't cause any issue as the value is the same.
2022-09-27 21:29:03 +02:00
Ludovic LANGE 5a18c611e1 replace QTime with QElapsedTimer when possible (qt6)
Since Qt5, some methods of QTime [are deprecated](https://doc.qt.io/qt-5/qtime-obsolete.html).

Qt6 remove those methods, thus in two instances we need to use
a [QElapsedTimer](https://doc.qt.io/qt-6/qelapsedtimer.html) instead of a QTime.

QElapsedTimer is available since Qt5.4, and is already used in the source
code.
2022-09-24 17:54:51 +02:00
Collin Kidder ed84e7e9f8 Fix to sniffer when viewing bits, output formatting change for ID 2022-06-21 21:12:22 -04:00
Collin Kidder a8f4a51131 A quick fix to make frames with less than 8 data bytes not show
garbage after their valid bytes
2021-12-29 21:08:25 -05:00
Dominik Bayerl 26823e7c18 GraphingWindow: improve interpolation for CSV-export.
Fixes #320.

Note: Interpolation is still not quite correct and may have remaining artifacts at the epsilon-T region.
2021-12-02 22:53:14 +01:00
Viktor Verebelyi f6f9db9d7f Fix Sniffer Frequency column label 2021-11-26 05:31:53 +00:00
Viktor Verebelyi c69f77630a Add timeline slider to flow view 2021-11-26 05:24:54 +00:00
Viktor Verebelyi 907312f12d Add selection of graph charts to Frame info window 2021-11-26 03:34:11 +00:00
Viktor Verebelyi 3a4f9c6699 Add selection of graph charts and slider to change chart range to flow view 2021-11-26 03:32:54 +00:00
Viktor Verebelyi efe1247bbb Add sniffer window frequency & 0x to address 2021-11-26 01:24:30 +00:00
Collin Kidder f6568c330f Add ability to set notch and expire intervals for Sniffer Window. 2021-09-29 21:39:08 -04:00
Collin Kidder 1f421c5d2c Added hex labeling option to graphs in flowview and frame info windows, a few tweaks for potential QT6 support 2021-09-06 19:25:59 -04:00
Chris Whiteford bd538febe8 Fix up double sized opengl graph rendering on high res screens 2021-05-31 12:52:25 -04:00
Collin Kidder f53ad8a65a Fixed help system.
Also switched from Sphinx generated HTML to GitHub markup help files.

This improves compatibility and will allow the help files to more easily be viewed on github as well.
2021-05-30 23:40:47 -04:00
Collin Kidder 45193c1fad Added signal comparison to the file comparison window. Very poor, slow
proof of concept inplementation - will be improved soon.
2021-05-04 22:36:09 -04:00
Collin Kidder 93f6d1f6cd Add DBC signals to frame data analysis window. 2021-05-03 22:01:47 -04:00
Collin Kidder 0d34958c63 Fixes to make graphing of multiplexed signals work properly 2021-05-02 20:58:23 -04:00
Collin Kidder e4da6237ae Additional work on "Value Table" signals while graphing. Now supports
realtime addition of value table labeling as well as bracketing
2021-05-02 18:55:06 -04:00
Collin Kidder 35c1ef5387 Added ability to create multiple graphing windows that act separately.
Added ability to right check on signals in main view and graph them
directly.
2021-05-02 12:48:47 -04:00
Collin Kidder 1844695a78 Added DBC signal value table strings to graphs of signals with value
tables, incremented version number.
2021-05-01 09:39:02 -04:00
Collin Kidder e64e84d6fa Bug fixes for extended IDs in DBC files, fix one off error in a few
places (Corrects fuzzing window ID range), re-enabled overwrite mode
showing all signals in a message
2021-04-28 21:41:33 -04:00
Brian T. Rice 3014002574 extract method 2021-03-14 13:44:47 -07:00
Brian T. Rice 26df0173e8 GraphingWindow: add a menu option 2021-03-13 16:33:54 -08:00
Brian T. Rice 59a29e765c GraphWindow: support double-clicking the axis to resize it to the data 2021-03-13 15:38:01 -08:00