openpilot is an open source driver assistance system. openpilot performs the functions of Automated Lane Centering and Adaptive Cruise Control for over 200 supported car makes and models.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Dean Lee 7aeabc37d0
cabana: add support to fetch preserved routes (#34146)
5 months ago
..
assets cabana: add window icon (#27109) 2 years ago
chart cabana: Insert newly split charts directly after the original chart (#33748) 7 months ago
dbc Toyota: adaptive ACCEL_NET for new long tune (#34034) 5 months ago
streams cabana: add support to fetch preserved routes (#34146) 5 months ago
tests cabana(DBCFile): handle escaped quotes (#31889) 1 year ago
tools cabana: bug fixes and improvements (#32934) 10 months ago
utils cabana: bug fixes and improvements (#32934) 10 months ago
.gitignore cabana: save settings to user-specific directory (#30328) 2 years ago
README.md cabana: fix README example for streaming CAN messages from device (#33781) 6 months ago
SConscript bump opendbc (#34088) 5 months ago
binaryview.cc fix all codespell issues (#33194) 9 months ago
binaryview.h cabana: use QStaticText to boost rending performance (#29900) 2 years ago
cabana.cc cabana: don't check for socketcan when not available (#34039) 5 months ago
commands.cc cabana: support ECU node names (#29897) 2 years ago
commands.h cabana: support ECU node names (#29897) 2 years ago
detailwidget.cc cabana: support suppress highlighted bits (#30336) 2 years ago
detailwidget.h cabana: support suppress highlighted bits (#30336) 2 years ago
historylog.cc cabana: bug fixes and improvements (#32934) 10 months ago
historylog.h cabana: some improvements (#32161) 1 year ago
mainwin.cc cabana: fix UI highlight for inactive items and crash in saveHeaderState() on closeEvent (#34135) 5 months ago
mainwin.h cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
messageswidget.cc cabana: fix UI highlight for inactive items and crash in saveHeaderState() on closeEvent (#34135) 5 months ago
messageswidget.h cabana: improve isMessageActive (#33563) 7 months ago
settings.cc cabana: increase cache limits (#32295) 1 year ago
settings.h cabana: support suppress highlighted bits (#30336) 2 years ago
signalview.cc cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
signalview.h cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
streamselector.cc cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
streamselector.h cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
videowidget.cc replay: eliminate qt dependency (#34102) 5 months ago
videowidget.h cabana: refactor video widget for simplified layout and enhanced rendering (#33909) 6 months ago

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 --zmq <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