Commit Graph

31 Commits

Author SHA1 Message Date
Dean Lee 897a62dcfc cabana: support multiple cameras (#30339)
support multiple cameras
old-commit-hash: fe4ad9670179b6f823b7332d5a903a7049a3ac03
2023-10-29 07:05:59 -10:00
Dean Lee 03ba671b96 cabana: save settings to user-specific directory (#30328)
* save settings to user-specific directory

* include
old-commit-hash: b73329092c1eeb9b7472db97fcdf5544ee848156
2023-10-25 14:39:41 -07:00
Dean Lee 5bac1f771c cabana: use applicationPath for settings (#29875)
old-commit-hash: 5e1b5b36e48f3b7c776b843993071e24a9d1466e
2023-09-11 13:18:40 -07:00
Dean Lee 8673038aa1 cabana: fix stuck on exit (#29796)
fix ctrl+c can't exit when stream dialog displayed on startup
old-commit-hash: 7f23e69cb126941ad736cf100e28fb67f5827f48
2023-09-06 10:34:15 -07:00
Willem Melching 6b98b83ad4 cabana: socketcan support (#27952)
* empty socketcan class

* works on linux with vcan

* add open stream widget

* fix MacOS build

* update readme

* unused

* no socketcan on C3

* fix in cabana sconstruct

* serial -> device
old-commit-hash: 2b0e4d46bbbb0ccbf028c975c3345d05765a7213
2023-08-23 10:50:11 -07:00
Dean Lee d1c19dfda9 cabana: properly handle unix signals (#28657)
old-commit-hash: fe91ea1139a5ff3f832a73f09bbdd77a78533acc
2023-06-23 15:27:51 -07:00
Dean Lee 3cd5609257 cabana: fix core dump when failed to connect to panda (#28529)
old-commit-hash: 7128daebba7032d3a63f50b7875643e9905f52ae
2023-06-13 10:49:59 -07:00
Dean Lee 97e62cf6c5 cabana: fix hang on exiting with CTRL+C (#28455)
old-commit-hash: 3b9fdf206efc0d014da617e60950304e3b1c95c2
2023-06-08 13:30:19 -07:00
Dean Lee 6cc979a258 cabana: support editing dbc files without a stream (#28294)
* no stream mode

* disable tools menu if no stream

* disable splitter

* cleanup

* refactor matchMessage
old-commit-hash: d5d1ca11d4a5ba5ffcb067fd842540d5334e9360
2023-05-25 10:51:28 -07:00
Dean Lee c1fecfb6dd cabana: supports switching streams on the fly (#28081)
* open stream

* use std::atomic::exchange

* emit streamStarted immediately
old-commit-hash: a26e6d1633b994029e67611f7954250517f71acd
2023-05-24 20:47:37 -07:00
Dean Lee 1045c7d836 cabana: startup stream chooser dialog (#27938)
* new StreamDialog

* choose dbc file

* update last_dir

* move to /streams

* cleanup

* add stretch

* catch panda exception

* cleanup

* cleanup

* small cleanup

* fix pandaStream crash caused by a failed connection

* static function to create stream widget

* cleanup
old-commit-hash: 590b1bc2062d8a7f1ec253e0d0c5ab94799524c1
2023-04-19 10:49:06 -07:00
Willem Melching d4cea1f024 cabana: enable Hi-DPI support on MacOS (#27965)
old-commit-hash: 475903e24486be0a5be2bb935db221832c9cd239
2023-04-19 10:48:36 -07:00
Willem Melching 484eed0acf cabana: support direct streaming from panda over USB (#27936)
* refactor livestream into devicestream

* add panda stream

* unused

* whitespace

* move logging to base class

* add cmdline args

* Update selfdrive/boardd/boardd.cc

---------

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 2a981f553162ff41dd50ed6921b90ac512efa3d2
2023-04-17 15:37:26 -07:00
Dean Lee 6a98fd2bfd cabana: support logging live stream (#27884)
support logging live stream
old-commit-hash: e3a19ff074857876dca3c730f6ddc3c6e191aaf5
2023-04-13 19:53:39 -07:00
Dean Lee 07e11f1331 cabana: support toggle between light / dark theme (#27787)
add dark theme
old-commit-hash: c56872265a126a0e8feda8bb21225e885ea6e941
2023-04-02 11:34:10 -07:00
Shane Smiskol 05d0ff0f6e cabana: add window icon (#27109)
* add logos

* most zoomed in

* add alt

* slightly zoomed more

* add images

* add draft images

* best image

* not working

* 96px icon image to reduce compiled size

* remove from selfdrive assets

* fixes
old-commit-hash: c7cc36d9ee22aea2e07aab61d51f0f949b64bcf5
2023-02-20 13:15:59 -08:00
Dean Lee 7af5741071 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
old-commit-hash: 29d9d037590d2db33b7d49c44120d83307ec6568
2023-02-03 12:47:26 -08:00
Willem Melching e814b0f9f7 cabana: add --dbc command line argument (#27132)
old-commit-hash: f3a9dac93e0d1a9058e94d60b48ae5a189841d6c
2023-01-30 17:42:38 -08:00
Dean Lee 8d4a81c97d cabana: improve mainwin (#27053)
* open recent

* improve mainwin

* move to submenu

* new file & remind save before load

dd
old-commit-hash: 50fc560b43bb24570400834edcaaa84d7270f38c
2023-01-26 20:29:28 -08:00
Dean Lee 182ab2a31e cabana: add no-vipc flag (#26999)
old-commit-hash: fa6e6a4eb52010466efb5a65d3b9ee7b59e86a58
2023-01-20 15:43:42 -08:00
Dean Lee 504453c3e4 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
old-commit-hash: f9490739ab37ae680aef272d51eb3cf2b36b4103
2023-01-19 15:26:00 -08:00
Willem Melching 2c22914bf8 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
old-commit-hash: 5cc192be4d994d26e385f03a1945d810d465eb00
2023-01-15 22:13:16 -08:00
Dean Lee 7f783e79d5 Cabana: make all panels dockable into each other (#26838)
old-commit-hash: 7ae87923864af4cd1378eeccc23c002fc66447e5
2022-12-28 18:21:06 -08:00
Dean Lee 725e0665df common: add new class OpenPilotPrefix (#26753)
* new class OpenPilotPrefix

* move random_string to util

* rename file

* style

Co-authored-by: Adeeb Shihadeh <adeebshihadeh@gmail.com>
old-commit-hash: 0d8254e95935f27d7c371ecc4c2d6c9ff8c204d0
2022-12-12 14:47:27 -08:00
Dean Lee 2d49d819d3 Cabana: add --ecam flag to dispaly the wide road camera (#26727)
old-commit-hash: 7006230e0885d3da26c034517660f566c8dd37e9
2022-12-08 11:19:57 -08:00
Dean Lee 773024cc93 Cabana: support multiple instances (#26286)
* multiple instance

* new file qtuitl.h

* Revert "new file qtuitl.h"

This reverts commit 19ef28945e8647724bbfc6c8469a664a58c09f16.
old-commit-hash: 57ad0c94586d12df54d5ab4a65d0e47945a35065
2022-12-06 21:17:37 -08:00
Dean Lee 4a67971c61 Cabana: auto theme, detect from system. (#26563)
* auto theme

* cleanup

* get font color from ForegroundRole

* fix label color

* add padding for header

* smaller warning icon

* fix bg of binary view

* hightlight after init
old-commit-hash: 4662f1e0be77d6636ef7e3f663fb839448d86af6
2022-11-22 14:23:49 -08:00
Dean Lee 3d39cb1682 Cabana: load from high quality video by default (#26100)
old-commit-hash: d4f9343a2c1f5345dec07a93b25594b588cd9963
2022-10-16 12:30:23 -07:00
Dean Lee 62adf87f40 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
old-commit-hash: 0fa1588f6c0bf9c9f1bebde91e02699506389ecd
2022-10-12 13:55:17 -07:00
Dean Lee f93f4e9f9b 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
old-commit-hash: a6ba073231761e06ac6f070a01b434243d9d0693
2022-10-05 21:17:22 -07:00
Dean Lee 292d55cf8a 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
old-commit-hash: 1b8324af876e66630b5f4e50623e3136a39f6ecb
2022-10-03 15:19:42 -07:00