d35cdb510d
Sync: `commaai/opendbc:master` into `sunnypilot/opendbc:master` Sync: `commaai/panda:master` into `sunnypilot/panda:master` |
||
---|---|---|
.. | ||
assets | ||
chart | ||
dbc | ||
streams | ||
tests | ||
tools | ||
utils | ||
.gitignore | ||
README.md | ||
SConscript | ||
binaryview.cc | ||
binaryview.h | ||
cabana.cc | ||
commands.cc | ||
commands.h | ||
detailwidget.cc | ||
detailwidget.h | ||
historylog.cc | ||
historylog.h | ||
mainwin.cc | ||
mainwin.h | ||
messageswidget.cc | ||
messageswidget.h | ||
settings.cc | ||
settings.h | ||
signalview.cc | ||
signalview.h | ||
streamselector.cc | ||
streamselector.h | ||
videowidget.cc | ||
videowidget.h |
README.md
Cabana
Cabana is a tool developed to view raw CAN data. One use for this is creating and editing CAN Dictionaries (DBC files), and the tool provides direct integration with commaai/opendbc (a collection of DBC files), allowing you to load the DBC files direct from source, and save to your fork. In addition, you can load routes from comma connect.
Usage Instructions
$ ./cabana -h
Usage: ./cabana [options] route
Options:
-h, --help Displays help on commandline options.
--help-all Displays help including Qt specific options.
--demo use a demo route instead of providing your own
--qcam load qcamera
--ecam load wide road camera
--stream read can messages from live streaming
--panda read can messages from panda
--panda-serial <panda-serial> read can messages from panda with given serial
--socketcan <socketcan> read can messages from given SocketCAN device
--zmq <zmq> the ip address on which to receive zmq
messages
--data_dir <data_dir> local directory with routes
--no-vipc do not output video
--dbc <dbc> dbc file to open
Arguments:
route the drive to replay. find your drives at
connect.comma.ai
Examples
Running Cabana in Demo Mode
To run Cabana using a built-in demo route, use the following command:
cabana --demo
Loading a Specific Route
To load a specific route for replay, provide the route as an argument:
cabana "a2a0ccea32023010|2023-07-27--13-01-19"
Replace "0ccea32023010|2023-07-27--13-01-19" with your desired route identifier.
Running Cabana with multiple cameras
To run Cabana with multiple cameras, use the following command:
cabana "a2a0ccea32023010|2023-07-27--13-01-19" --dcam --ecam
Streaming CAN Messages from a comma Device
SSH into your device and start the bridge with the following command:
cd /data/openpilot/cereal/messaging/
./bridge &
Then Run Cabana with the device's IP address:
cabana --stream <ipaddress>
Replace <ipaddress> with your comma device's IP address.
While streaming from the device, Cabana will log the CAN messages to a local directory. By default, this directory is ~/cabana_live_stream/. You can change the log directory in Cabana by navigating to menu -> tools -> settings.
After disconnecting from the device, you can replay the logged CAN messages from the stream selector dialog -> browse local route.
Streaming CAN Messages from Panda
To read CAN messages from a connected Panda, use the following command:
cabana --panda
Using the Stream Selector Dialog
If you run Cabana without any arguments, a stream selector dialog will pop up, allowing you to choose the stream.
cabana
Additional Information
For more information, see the openpilot wiki
If you encounter any issues or have feature requests, please contribute bug reports or discussions at: new cabana feedback