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.
 
 
 
 
 
 
Shane Smiskol bc422a0738
juggle: use DBC dict generator (#34772)
2 months ago
..
assets cabana: add window icon (#27109) 2 years ago
chart cabana: real-time cursor and video frame sync for chart and video (#34301) 4 months ago
dbc juggle: use DBC dict generator (#34772) 2 months ago
streams cabana SocketCanStream: support CAN-FD (#34728) 2 months ago
tests cabana(DBCFile): handle escaped quotes (#31889) 1 year ago
tools cabana: issue filtering by addresses in FindSignal tool (#34283) 4 months ago
utils cabana: miscellaneous bug fixes and enhancements (#34297) 4 months ago
.gitignore cabana: save settings to user-specific directory (#30328) 2 years ago
README.md cabana: simplify streaming arguments (#34730) 2 months ago
SConscript bump opendbc (#34088) 5 months ago
binaryview.cc cabana: miscellaneous bug fixes and enhancements (#34297) 4 months ago
binaryview.h cabana: miscellaneous bug fixes and enhancements (#34297) 4 months ago
cabana.cc cabana: simplify streaming arguments (#34730) 2 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: miscellaneous bug fixes and enhancements (#34297) 4 months ago
detailwidget.h cabana: add live and time-window heatmap modes for enhanced signal analysis (#34296) 4 months ago
historylog.cc cabana: bug fixes and improvements (#32934) 10 months ago
historylog.h cabana: some improvements (#32161) 1 year ago
mainwin.cc cabana: real-time cursor and video frame sync for chart and video (#34301) 4 months ago
mainwin.h cabana: simplify stream management and remove problematic autosave feature (#32945) 10 months ago
messageswidget.cc cabana: miscellaneous bug fixes and enhancements (#34297) 4 months ago
messageswidget.h cabana: improve isMessageActive (#33563) 7 months ago
settings.cc cabana: miscellaneous bug fixes and enhancements (#34297) 4 months ago
settings.h cabana: support suppress highlighted bits (#30336) 2 years ago
signalview.cc cabana: miscellaneous bug fixes and enhancements (#34297) 4 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 cabana: fix crash in live streaming mode by skipping thumbnail display (#34302) 4 months ago
videowidget.h cabana: real-time cursor and video frame sync for chart and video (#34301) 4 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
  --msgq                         read can messages from msgq
  --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 <ip-address>             read can messages from zmq at the specified ip-address
                                 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 --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