Commit Graph

32 Commits

Author SHA1 Message Date
Dean Lee
5f8b53be33 cabana: fix the panda serial selector disappeared after buildConfigForm() (#32342) 2024-05-04 09:40:54 -07:00
Dean Lee
fe4ad96701 cabana: support multiple cameras (#30339)
support multiple cameras
2023-10-29 07:05:59 -10:00
Dean Lee
b73329092c cabana: save settings to user-specific directory (#30328)
* save settings to user-specific directory

* include
2023-10-25 14:39:41 -07:00
Dean Lee
5e1b5b36e4 cabana: use applicationPath for settings (#29875) 2023-09-11 13:18:40 -07:00
Dean Lee
7f23e69cb1 cabana: fix stuck on exit (#29796)
fix ctrl+c can't exit when stream dialog displayed on startup
2023-09-06 10:34:15 -07:00
Willem Melching
2b0e4d46bb 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
2023-08-23 10:50:11 -07:00
Dean Lee
fe91ea1139 cabana: properly handle unix signals (#28657) 2023-06-23 15:27:51 -07:00
Dean Lee
7128daebba cabana: fix core dump when failed to connect to panda (#28529) 2023-06-13 10:49:59 -07:00
Dean Lee
3b9fdf206e cabana: fix hang on exiting with CTRL+C (#28455) 2023-06-08 13:30:19 -07:00
Dean Lee
d5d1ca11d4 cabana: support editing dbc files without a stream (#28294)
* no stream mode

* disable tools menu if no stream

* disable splitter

* cleanup

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

* use std::atomic::exchange

* emit streamStarted immediately
2023-05-24 20:47:37 -07:00
Dean Lee
590b1bc206 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
2023-04-19 10:49:06 -07:00
Willem Melching
475903e244 cabana: enable Hi-DPI support on MacOS (#27965) 2023-04-19 10:48:36 -07:00
Willem Melching
2a981f5531 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>
2023-04-17 15:37:26 -07:00
Dean Lee
e3a19ff074 cabana: support logging live stream (#27884)
support logging live stream
2023-04-13 19:53:39 -07:00
Dean Lee
c56872265a cabana: support toggle between light / dark theme (#27787)
add dark theme
2023-04-02 11:34:10 -07:00
Shane Smiskol
c7cc36d9ee 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
2023-02-20 13:15:59 -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
Willem Melching
f3a9dac93e cabana: add --dbc command line argument (#27132) 2023-01-30 17:42:38 -08:00
Dean Lee
50fc560b43 cabana: improve mainwin (#27053)
* open recent

* improve mainwin

* move to submenu

* new file & remind save before load

dd
2023-01-26 20:29:28 -08:00
Dean Lee
fa6e6a4eb5 cabana: add no-vipc flag (#26999) 2023-01-20 15:43:42 -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
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
7ae8792386 Cabana: make all panels dockable into each other (#26838) 2022-12-28 18:21:06 -08:00
Dean Lee
0d8254e959 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>
2022-12-12 14:47:27 -08:00
Dean Lee
7006230e08 Cabana: add --ecam flag to dispaly the wide road camera (#26727) 2022-12-08 11:19:57 -08:00
Dean Lee
57ad0c9458 Cabana: support multiple instances (#26286)
* multiple instance

* new file qtuitl.h

* Revert "new file qtuitl.h"

This reverts commit 19ef28945e8647724bbfc6c8469a664a58c09f16.
2022-12-06 21:17:37 -08:00
Dean Lee
4662f1e0be 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
2022-11-22 14:23:49 -08:00
Dean Lee
d4f9343a2c Cabana: load from high quality video by default (#26100) 2022-10-16 12:30:23 -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
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