Commit Graph
142 Commits
Author SHA1 Message Date
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
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
Bertrand 6b5d733533 looking for message in all DBCs in graphdialog
this is not perfect, since two different DBCs can still have messages with the same name. still an improvement though
2021-02-26 07:45:53 +01:00
Collin Kidder 2a03b4f35d Added many additional graphing modes. They are loaded/saved in graph
definitions as well.

Incremented version number.
2021-02-18 21:41:42 -05:00
Collin Kidder b345495178 Fix compilation on Windows, fix glitch that could cause windows to appear off the actual screen with no way to get them back. 2020-11-15 01:30:13 -08:00
Collin Kidder 6dddee0e6c Add IDs everywhere messages are reported in the DBC comparison window. 2020-07-29 21:52:12 -04:00
Collin Kidder a5b7410629 Add tracking of DBC editing in order to warn when exiting without saving, add sorting to DBC routines, add a new screen that allows one to compare two DBC files for changes/differences. 2020-07-29 20:45:36 -04:00
Collin Kidder 067292108d Fixed several problems with Sniffer window. Incremented version number 2020-07-15 21:25:28 -04:00
Collin Kidder ccbdacde56 Changed another graph on the Frame Info screen to logarithmic mode.
This makes it far easier to see bits that were set only limited times. Now they show up plainly
even if the other bits are seen tens of thousands of times
2020-07-15 20:18:29 -04:00
Collin Kidder 717228a091 Added searching to DBC window to make it easier to find messages. Replaced deprecated random number calls with new method. 2020-07-15 18:23:18 -04:00
Collin Kidder 43979a6d58 Many fixes to the IsoTP Viewer and UDS internal code. 2020-04-02 19:53:35 -04:00
Collin Kidder 27b5d156b7 Bug fixes for ISOTP and UDS interpretation. 2020-03-17 21:26:17 -04:00
Collin Kidder 367c072b45 Various fixes to issues caused by recent transition to QCanBusFrame 2020-02-18 21:31:18 -05:00
Collin Kidder 909710fcfa Add text boxes to Fuzzing window to make it easy to set the bytes
directly and to show feedback while fuzzing is running.
2020-02-15 21:25:32 -05:00
Collin Kidder e4a3854af4 Many little changes to get rid of compile-time warnings.
There now should be no warnings when compiling on LINUX. YMMV elsewhere.
2020-02-15 19:52:18 -05:00
Collin Kidder d550fa79a0 Changed a lot of pointer references to const (it's more correct and
fixes a weird problem), fixed a problem with JSON to DBC, a few other
fixes
2020-02-13 22:01:06 -05:00
Collin Kidder 8beb0e31a0 Converted more code to be easier to generalize to larger CAN payloads
for CAN-FD. Improved some code to be faster. Fixed up some compile
time warnings.
2019-12-15 15:02:06 -05:00
Collin Kidder ef24036d1c Finished switching over everything to the new can format (I hope). It
seems to function now but much more testing is needed.
2019-12-13 21:06:48 -05:00
Collin Kidder 0baffa300f A partial commit that changes CANFrame over to be based on
QCanBusFrame so that things are more compatible with other Qt based
CAN bus code. Not complete yet but getting there.
2019-12-11 21:17:33 -05:00
Mark Schulte 902a82c318 [graphing] Ignore RTR messages
RTR messages will be incorrectly graphed as "0", even though it's not
a real message.
2019-12-05 17:14:27 -08:00
Collin Kidder 4a591f9279 Fixes to ISO-TP decoding 2019-09-19 19:45:20 -04:00
Collin Kidder ca9b83ddc9 Switched from QtHelp to using straight HTML files for help.
This is because AppImage (for linux) is readonly and QtHelp requires
write access. But, HTML files shouldn't.
2019-08-18 18:52:15 -04:00
Collin Kidder b6a15a28cd More fixes for compiler warnings - cleaning up code and making assumptions more clear 2019-08-12 22:02:07 -04:00