openpilot icon indicating copy to clipboard operation
openpilot copied to clipboard

cabana: add support for load&save extra dbc info

Open deanlee opened this issue 2 years ago • 8 comments

closed https://github.com/commaai/opendbc/pull/739, https://github.com/commaai/openpilot/pull/26372, https://github.com/commaai/openpilot/pull/26377. load/save extra info in dbcManager.

Screenshot from 2023-02-04 03-10-00

deanlee avatar Feb 03 '23 19:02 deanlee

refactor dbcmanager to not depends on the class definitions in opendbc. so that it can better support for extra dbc info and Multiplexed Signals (https://github.com/commaai/opendbc/pull/777) in the future.

This refactor also removes all conversions between std::string and QString, so there are many code changes in 23b7bf4

deanlee avatar Feb 08 '23 03:02 deanlee

I was working on this a bit as well, and represented the values as an std::vector<std::pair<int, std::string>> val in opendbc. This should make working with the values later much easier.

pd0wm avatar Feb 08 '23 21:02 pd0wm

got a coredump after https://github.com/commaai/openpilot/pull/27258#event-8473003462. I'm fixing it

deanlee avatar Feb 08 '23 21:02 deanlee

Hmm, must have missed something when rebasing my changes on latest master. Where do you need to check for sig not being a nullptr?

pd0wm avatar Feb 08 '23 21:02 pd0wm

normally we don't need to check if sig==null, the only exception is in updateSeries, the sig may be null (for read all signals), we need get signal pointer from s.sig

fixed in https://github.com/commaai/openpilot/pull/27265

deanlee avatar Feb 08 '23 21:02 deanlee

What do you think of storing the description as a list of key value pairs? That allows us to show the correct description in the signal widget, and implement a table based editor.

pd0wm avatar Feb 17 '23 09:02 pd0wm

good idea

deanlee avatar Feb 17 '23 09:02 deanlee

view/edit signal value description in table:

Screenshot from 2023-02-17 21-07-54

deanlee avatar Feb 17 '23 13:02 deanlee