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.
		
		
		
		
		
			
		
			
				
					
					
						
							53 lines
						
					
					
						
							2.1 KiB
						
					
					
				
			
		
		
	
	
							53 lines
						
					
					
						
							2.1 KiB
						
					
					
				# PlotJuggler
 | 
						|
 | 
						|
We've extended [PlotJuggler](https://github.com/facontidavide/PlotJuggler) to plot all of your openpilot logs. Check out our plugins: https://github.com/commaai/PlotJuggler.
 | 
						|
 | 
						|
## Installation
 | 
						|
 | 
						|
Once you've cloned and are in openpilot, download PlotJuggler and install our plugins with this command:
 | 
						|
 | 
						|
`cd tools/plotjuggler && ./install.sh`
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
```
 | 
						|
$ ./juggle.py -h
 | 
						|
usage: juggle.py [-h] [--qlog] [--can] [--stream] [--layout [LAYOUT]] [route_name] [segment_number] [segment_count]
 | 
						|
 | 
						|
PlotJuggler plugin for reading openpilot logs
 | 
						|
 | 
						|
positional arguments:
 | 
						|
  route_name         The route name to plot (cabana share URL accepted) (default: None)
 | 
						|
  segment_number     The index of the segment to plot (default: None)
 | 
						|
  segment_count      The number of segments to plot (default: 1)
 | 
						|
 | 
						|
optional arguments:
 | 
						|
  -h, --help         show this help message and exit
 | 
						|
  --qlog             Use qlogs (default: False)
 | 
						|
  --can              Parse CAN data (default: False)
 | 
						|
  --stream           Start PlotJuggler without a route to stream data using Cereal (default: False)
 | 
						|
  --layout [LAYOUT]  Run PlotJuggler with a pre-defined layout (default: None)
 | 
						|
```
 | 
						|
 | 
						|
Example:
 | 
						|
 | 
						|
`./juggle.py "4cf7a6ad03080c90|2021-09-29--13-46-36"`
 | 
						|
 | 
						|
## Streaming
 | 
						|
 | 
						|
Explore live data from your car! Follow these steps to stream from your comma device to your laptop:
 | 
						|
- Enable wifi tethering on your comma device
 | 
						|
- [SSH into your device](https://github.com/commaai/openpilot/wiki/SSH) and run `cd /data/openpilot && ./cereal/messaging/bridge`
 | 
						|
- On your laptop, connect to the device's wifi hotspot
 | 
						|
- Start PlotJuggler with `ZMQ=1 ./juggle.py --stream`, find the `Cereal Subscriber` plugin in the dropdown under Streaming, and click `Start`.
 | 
						|
 | 
						|
If streaming to PlotJuggler from a replay on your PC, simply run: `./juggle.py --stream` and start the cereal subscriber.
 | 
						|
 | 
						|
## Demo
 | 
						|
 | 
						|
For a quick demo, go through the installation step and run this command:
 | 
						|
 | 
						|
`./juggle.py "https://commadataci.blob.core.windows.net/openpilotci/d83f36766f8012a5/2020-02-05--18-42-21/0/rlog.bz2" --layout=demo_layout.xml`
 | 
						|
 | 
						|
 | 
						|

 | 
						|
 |