Commit Graph

19 Commits

Author SHA1 Message Date
Dean Lee
ac0dbf74bc cabana: add support for load&save extra dbc info (#27203)
* support extra info

* support undo/redo

* fix undo/redo

* cleanup

* fix regexp

* refactor dbcmanager

* replace text in headerview

* fix binary::refresh

* cleanup

* use QRegularExpression

* add desc validation

* edit val description in table

* cleanup
2023-02-17 19:31:54 -08:00
Dean Lee
29d9d03759 cabana: add dialog to open route from remote or local (#27183)
* add OpenRouteDialog

* cleanup

* failed_to_load

* fix load

* clear message list and stream after open new route

* show message

* remove all tabs and charts after open

* use textEdited

* check route format

* cleanup loadRoute
2023-02-03 12:47:26 -08:00
martinl
fdc4a7f84c MacOS: build fixes (#27143)
* MacOS: exclude common/gpio.cc

* MacOS: no spi for boardd

* MacOS: loggerd: no v4l_encoder.cc

* MacOS: update libdbc path for cabana
2023-01-29 13:55:17 -08:00
Dean Lee
b2675cef9a cabana: colorful logs based on activity (#27008)
* color logs

* remove space

* update in updateColors
2023-01-24 11:36:40 -08:00
Dean Lee
f9490739ab Cabana: support live streaming (#26946)
* support live streaming

* update live stream's time

* cleanup stream classes

* disable video control in live streaming mode

* emit streamStarted() in LiveStream::streamThread

* disable some features in live streaming mode

* refactor charts to support live streaming mode

* disable dynamic mode checkbox in live streaming mode

* updateDispalyRange

* thread safe events

* TODO: add support for ZMQ

* atomic time stamp

* only keep settings.cached_segment_limit*60  seconds data in liveStream

* make charts work better in live mode

* cleanup ChartView

* fix toolbar

* cleanup

cleanup

* disable openpilotPrefix and useOpenGL on macos

* add comment

* exit gracefully

* support ZMQ

* use ::operator new/delete

* cleanup streams

* cleanup

* align stream buffers

* check looping back

* check if series is empty

* cleanup

* add TODO: write stream to log file to replay it

* upper_bound

* remove class member event_range

* change default settings value

* cleanup updateDisplayrange

* fix merge error
2023-01-19 15:26:00 -08:00
Dean Lee
c21d9408a1 cabana: use bootstrap icons (#26981)
* use bootstrap icons

* typo

* build into asset_obj

* add to files_common
2023-01-18 13:19:23 -08:00
Willem Melching
5cc192be4d cabana: MacOS fixes (#26973)
* make qtcharts a framework

* cabana: dfisable openpilot prefix on macos

* cabana: disable opengl on charts

* fix linux build

* no newline

* add comments
2023-01-15 22:13:16 -08:00
Dean Lee
65509669b6 Cabana: add tool to find similar bits (#26834)
* find similar bits

* set window title
2022-12-28 16:51:02 -08:00
Dean Lee
f9bb024a46 Cabana: execute generate_dbc_json.py after building (#26620)
* use env.command to generete json after build

* Update tools/cabana/SConscript

Co-authored-by: Shane Smiskol <shane@smiskol.com>
2022-11-29 11:42:56 -08:00
Dean Lee
7c922eafe9 Cabana: Added support for undo & redo (#26440)
* undo/redo

* display command list to rolling the state backwards or forward

* update detailview after rolling states

* add * to title bar to indicate dbc has changed

* fix signal pointer address changed after removed

* cleanup

* fix id error

* clear undo stack after dbc file changed

* cleanup

* use map

* cleanup

* typo
2022-11-10 10:37:38 -08:00
Dean Lee
80b088c332 Cabana: add save DBC dialog (#26282)
* export DBC to text edit

* added saveAs & Copy To Clipboard

* cleanup

* cleanup include

* add test case

* rename variable

* fix precision
2022-10-30 07:31:12 -07:00
Dean Lee
4bf86742e6 Cabana: move settings to seperate files (#26173) 2022-10-20 11:22:09 -07:00
Dean Lee
2ed51e3151 Cabana: load DBC from car fingerprint (#26158)
* auto load DBC from fingerprint

* generate json in scons
2022-10-19 14:18:28 -07:00
Dean Lee
99b16151fc Cabana: show MSB/LSB of signals in the BinaryView (#26103)
* dispaly msb and lsb in binary view

* draw at bottom

* move binaryview to seperate files

* increase the width of vertical header

* re-draw changed cells only

* correct lsb/msb position

* check bounds

* todo
2022-10-17 17:19:41 -07:00
Cameron Clough
8b5ebbddf6 build extras together (#26051)
* build extras together

* don't check here either
2022-10-12 15:14:02 -07:00
Dean Lee
0fa1588f6c Cabana: stable initial release (#26004)
* increase form size & fix wrong charts number

* set max axisy to 1.0 if no value

* show 'close' button in floating window

* alwasy show scroll bar

* complete the logs

* more

* increase size to 50

* keep logs for all messages

* more

* rename signal

* better height

* avoid flicker

* dont call setupdatesenabled

* filter dbc files bye typing

* remove all charts if dbc file changed

* fix wrong idx

* bolder dbc filename

* update chart if signal has been edited

* new signals signalAdded,signalUpdated

* split class Parser into CanMessages and DBCManager

* cleanup

* updateState after set message

* cleanup

* emit msgUpdated

* clear history log if selected range changed

* always update time

* change title layout

* show selected range

hide title bar if no charts

less space between title and chart

* custome historylogmodel for extreme fast update

* move historylog to seperate file

* 2 decimal

* cleanup

cleanup

* left click on the chart to set start time

* todo

* show tooltip for header item&cleanup binaryview

add hline to signal form

* better paint

* cleanup signals/slots

* better range if min==max

* set historylog's minheight to 300

* 3x faster,sortable message list.

* zero copy in queued connection

* proxymodel

* clear log if loop to the begin

* simplify history log

* remove icon

* remove assets

* hide linemarker on initialization

* rubber width may less than 0

* dont zoom char if selected range is too small

* cleanup messageslist

* don't zoom chart if selected range less than 500ms

* typo

* check boundary

* check msg_id

* capital first letter

* move history log out of scrollarea

* Show only one form at a time

* auto scroll to header

d

* reduce msg size
entire row clickable

rename filter_msgs
2022-10-12 13:55:17 -07:00
Dean Lee
a6ba073231 canbana: complete basic functions (#25965)
* add chart header

* get all signal val from logs

* loop in selected range

* clear list before append

* automatically zoom on yaxis

* cleanup

* sync charts

* fix event_begin_sec

* set the color of rubber

* add TODO

* sync slider with charts

* keep video aspect ratio

* sync plot buttons

* reduce flickers

* cleanup

* refactor detail view

* clear counters

* more

use qcamera
2022-10-05 21:17:22 -07:00
Cameron Clough
4404cb42b4 fix build without extras (#25957) 2022-10-03 16:45:00 -07:00
Dean Lee
1b8324af87 c++ cabana: Initial version (#25946)
* draft

* continue

* fix QChart unresponsive with large points

* build with --extras

* add filter

* save DBC button

* more buttons

* add flag to use qcamera

* stop replay in dctor

* README

* use getMsg

* video control

* edit signal

* add colors

* correct ts

* add/edit signals

* use bus:address as key
2022-10-03 15:19:42 -07:00