nopenpilot/tools/replay
Ewout ter Hoeven 55390d273f
Convert format strings strings to f-strings (#23241)
* Convert all text strings to f-strings

Reformats all the text from the old "%-formatted" and .format(...) format to the newer f-string format, as defined in PEP 498. This requires Python 3.6+.

Flynt 0.69 was used to reformat the strings. 120 f-strings were created in 51 files.

F-strings are in general more readable, concise and performant. See also: https://www.python.org/dev/peps/pep-0498/#rationale

* revert pyextra changes

* revert ublox.py

Co-authored-by: Willem Melching <willem.melching@gmail.com>
2021-12-16 14:58:17 +01:00
..
lib Convert format strings strings to f-strings (#23241) 2021-12-16 14:58:17 +01:00
README.md Sphinx docs generation (#22697) 2021-10-28 15:14:37 +02:00
__init__.py merge in tools 2020-01-17 10:07:22 -08:00
can_replay.py can_replay: warning & clone cmd if jungle lib is missing 2021-11-23 23:33:26 -08:00
ui.py replay: do not clear ui image when paused (#22467) 2021-10-07 11:18:45 +02:00
unlog_ci_segment.py Hyundai radar parser (#22241) 2021-09-15 15:43:01 -07:00

README.md

Replay

Replay driving data

replay replays all the messages logged while running openpilot.

# Log in via browser to have access to non-public routes
python lib/auth.py

# Start a replay
selfdrive/ui/replay/replay <route-name>

# Example:
# selfdrive/ui/replay/replay '4cf7a6ad03080c90|2021-09-29--13-46-36'
# or use --demo to replay the default demo route:
# selfdrive/ui/replay/replay --demo

# watch the replay with the normal openpilot UI
cd selfdrive/ui && ./ui

# or try out a debug visualizer:
python replay/ui.py

usage

$ selfdrive/ui/replay/replay -h
Usage: selfdrive/ui/replay/replay [options] route
Mock openpilot components by publishing logged messages.

Options:
  -h, --help             Displays this help.
  -a, --allow <allow>    whitelist of services to send
  -b, --block <block>    blacklist of services to send
  -s, --start <seconds>  start from <seconds>
  --demo                 use a demo route instead of providing your own
  --dcam                 load driver camera
  --ecam                 load wide road camera

Arguments:
  route                  the drive to replay. find your drives at
                         connect.comma.ai

watch3

watch all three cameras simultaneously from your comma three routes with watch3

simply replay a route using the --dcam and --ecam flags:

# start a replay
cd selfdrive/ui/replay && ./replay --demo --dcam --ecam

# then start watch3
cd selfdrive/ui && ./watch3

Stream CAN messages to your device

Replay CAN messages as they were recorded using a panda jungle. The jungle has 6x OBD-C ports for connecting all your comma devices.

can_replay.py is a convenient script for when any CAN data will do.

In order to replay specific route:

MOCK=1 selfdrive/boardd/tests/boardd_old.py

# In another terminal:
selfdrive/ui/replay/replay <route-name>