Commit Graph
68 Commits
Author SHA1 Message Date
Collin Kidder 9d545d44d1 Merge pull request #245 from collin80/WIP
Wip
2020-09-30 18:42:57 -07:00
Sam Nobs b556016bba Use integer formatting where possible when interpreting signal.
Numbers are formatted as floating point numbers, which looks
a bit crap for things like e.g. serial numbers (we don't need
mantissa and exponent). This change checks the scaling factor,
and if it is integer representable, the resulting number is
formatted as an integer number as that's most likely what's
intended, particularly if the factor is 1.
2020-09-18 15:39:08 +12:00
Collin Kidder fbfc1f8c64 Now the DBC Message editor can change the parent node of a message and you can create new nodes simply by typing something new into the sender field. 2020-07-30 21:44:36 -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 4cfb4b903a Added ability to delete nodes, messages, signals within tree. 2020-07-26 14:49:08 -04:00
Collin Kidder 1a1ccb5fec Initial implementation of adding nodes, messages, signals with new tree style. 2020-07-23 21:52:43 -04:00
Collin Kidder 1a5010fca6 Editing of nodes, messages, signals all works now.
Dynamically updates DBC tree if info changes.
2020-07-22 20:57:22 -04:00
Collin Kidder c89bc43795 Added more functionality for new DBC editing system. Tweaked graphics of CANDataGrid a bit. 2020-07-22 19:15:16 -04:00
Collin Kidder fc6dc4ea55 Vast reworking of DBC editing system.
Currently not functional but the overall graphical layout is more or less complete.
2020-07-19 20:29:14 -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 ccab975a70 Fixes for loading tesla json files (if you somehow get some) 2020-04-02 19:55:04 -04: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 1a5d67d09e Merge branch 'WIP' of github.com:collin80/SavvyCAN into WIP 2020-02-12 21:18:11 -05:00
Collin Kidder 7f8411f47f Fixes to hopefully make signal colors look proper. 2020-02-12 21:16:02 -05:00
Collin Kidder 48d7dfa97c Add ability to load Tesla ODIN JSON files. Where will you get such a
file? State secret.
2020-02-12 19:56:43 -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
Collin Kidder 29b635a009 Merge branch 'master' of github.com:collin80/SavvyCAN 2019-12-11 19:35:15 -05:00
Collin Kidder 10f9f29a14 Fix an off by one error with signal sizes. 2019-12-11 19:35:01 -05:00
Tobin Hall 9fb61507a7 Adding types to allow for saving and loading of little endian floats 2019-12-11 11:36:22 +13:00
Tobin Hall 8021710871 Removing limitations to allow for floating point endianess 2019-12-11 11:35:20 +13: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
mjuhanne cd5fe6da02 DBC settings and bugfixes
- Changes in DBC file manager are immediately propagated to the main window (frames, filter labeling)
- Prevent DBC file manager from saving settings too often and too early (this also fixes a bug where sometimes the settings of all but the first DBC file are lost)
2019-08-12 18:29:33 +03:00
mjuhanne 428b19c5c4 - Save DBC file configuration when changed, and restore it when restarting the application (no need for manual entry everytime app is launched)
- Add GMLAN 29bit filtering feature. In addition to J1939 matching, it is now possible to match DBC messages using only the Arbitration Id (bits 14-26 of CAN Address), since  Priority id (higher bits) and Sender Id (lowest 13 bits) are not relevant when interpreting the CAN message content. This allows to use the excellent GM Global A DBC files on https://github.com/commaai/opendbc. Just remember to select the "GMLAN" matching criteria on DBC File manager.
- Add "Filter labeling" feature. Using loaded DBC files, it matches the filter Ids with DBC messages and shows them in filter windows. Labeling works in the main window (no need to set "Frame interpret" on, since this is a separate feature), as well as in Flow view, Frame data analysis, Playback and Fuzzzing windows. This makes it so much easier to concentrate on those CAN messages that matter. To use this feature, select global "Label filters using messages from DBC files" on Main Configuration page, and then enable the feature on individual DBC files (on DBC file manager) as needed. This is needed if there's overlap in CAN addresses between DBC files, and because the filter labeler cannot tell apart anymore which Filter ID is associated to which bus, it might label them incorrectly. But usually it's ok to just enable the labeling with all the DBC files.
- In Frame data analysis window, in addition to J1939 decoding show also GMLAN (Priority bits, Arbitration Id, Sender Id) decoding.
- FilterUtility static class used for centralized ListWidgetItem creation and for other helper functions
- DBC handler: To allow setting bus numbers even before connection is configured, do not enforce "valid" bus numbers
2019-08-11 23:16:02 +03:00
Collin Kidder 0567d5ef14 More changes meant just to fix up compiler warnings. 2019-08-08 22:09:02 -04:00
Collin Kidder e7e65b7216 Fixed up a bunch of compiler warnings.
There should be no functional difference, just less noise when compiling
2019-08-08 21:15:51 -04:00
Mark Webb-Johnson 492b08d4f3 Address crash (OSX platform, at least) when deleting empty node or message 2019-07-21 20:35:12 +08:00
Collin Kidder d4a735a710 Allow many places to load and save the last directory used for that functionality so it can easily be used again.
All frame file I/O uses the same directory load/save location but DBC files store separately as do filter files, graphing definitions, and stored text files from the various reverse engineering windows.
2019-06-17 20:58:56 -04:00
Collin Kidder a0cc88ede2 Fix for a few issues with DBC file loading and the ability to reorder DBC files. 2019-05-28 21:26:33 -04:00
Collin Kidder c12031158e Implemented the signal viewer and enabled it in the menu. 2019-04-15 20:56:39 -04:00
Collin Kidder 428eab683e Add a new function to DBC handler to make it easier to find messages
by name
2019-04-14 18:27:25 -04:00
Collin Kidder f08430c812 Add proper parent reference to the creation of DBC edit windows. This
fixes an annoyance where the main window would gain focus improperly.
2019-04-14 16:59:30 -04:00
Collin Kidder 15460f70e3 Fix inappropriate default color that made DBC messages default to a
bad color scheme for dark themes
2019-03-19 21:02:35 -04:00
Collin Kidder f16660ba52 Add ability to clone DBC signals. F2 will also do this from the
keyboard (very handy!)
2019-03-11 21:42:19 -04:00
Collin Kidder c9880be2c5 Add caching to the DBC signal system so that we can show all the
signals in overwrite mode.
2019-03-11 20:53:45 -04:00
Collin Kidder d4f52311f7 Fix to correct a few places where 2 buses were hard coded as the
limit. There is no hard and fast limit to the number of buses you can
have now.
2019-02-19 21:19:51 -05:00
Collin Kidder 7988b1f02b Fix for issue #163 where DBC messages would get set all black. 2019-02-19 20:14:45 -05:00
Collin Kidder 20cd1559e4 Change layout of signal editor to be not quite so tall. It now fits
better in a variety of screen resolutions.
2019-02-17 17:19:27 -05:00
Collin Kidder 2b871c625b Ask for confirmation before closing a DBC file open for editing. If
closing the file also close editing windows as well. Fix for issue #149
2019-02-17 16:54:03 -05:00
Collin Kidder 151217bc3f Merge branch 'master' of github.com:collin80/SavvyCAN into WIP 2019-02-13 21:00:19 -05:00
MartinX 52f04791dd add setWindowFlags(Qt::Window) to improve window management
* improves window handling a lot
	(on Linux GNOME 3 at least: quickly resizing windows left/right, not forced in foreground anymore etc.)
	setWindowFlags() inserted in all *window.cpp files except mainwindow
    * some whitespace at EOL trimmed
2019-02-13 20:08:41 +01:00
Collin Kidder b3a5f2498f Ensure one cannot save DBC files with blank message and signal names,
fix up some warnings.
2018-09-18 19:23:38 -04:00
Collin Kidder 6ee5a7f7d7 Add checks to ensure that references to nonexistant nodes are handled 2018-07-24 21:35:42 -04:00
Collin Kidder a10388d652 Remove extraneous check that caused last signal to not be able to be deleted. 2018-07-09 13:48:47 -04:00
Collin Kidder 8842152346 Fix signal interpretation when signals get near the end of the 64 bits. 2018-06-18 22:02:42 -04:00
Collin Kidder 80d7b8a993 Refactored DBC loading code a bit to get some of the complication out of the main loop. Fixed loading DBC files where the nodes are on separate lines. Updated version num. 2018-01-15 22:45:20 -05:00
Collin Kidder a31d56ce2f Add integrated help to DBC windows as well - they were forgotten in last commit
Increment version too to show that progress has been made.
2017-11-30 21:22:56 -05:00
Collin Kidder 3b9c793e99 Make CAN id's either be 3 hex digits or 8 hex digits when displayed - depending on whether a frame uses standard or extended id mode. 2017-11-26 16:30:48 -05:00