openpilot implements a bridge that allows it to run in the MetaDrive simulator or CARLA simulator.
First, start openpilot.
# Run locally
./tools/sim/launch_openpilot.sh
$ ./run_bridge.py -h
usage: run_bridge.py [-h] [--joystick] [--high_quality] [--dual_camera] [--simulator SIMULATOR] [--town TOWN] [--spawn_point NUM_SELECTED_SPAWN_POINT] [--host HOST] [--port PORT]
Bridge between the simulator and openpilot.
options:
-h, --help show this help message and exit
--joystick
--high_quality
--dual_camera
--simulator SIMULATOR
--town TOWN
--spawn_point NUM_SELECTED_SPAWN_POINT
--host HOST
--port PORT
- To engage openpilot press 2, then press 1 to increase the speed and 2 to decrease.
- To disengage, press "S" (simulates a user brake)
| key | functionality |
|------|-----------------------|
| 1 | Cruise Resume / Accel |
| 2 | Cruise Set / Decel |
| 3 | Cruise Cancel |
| r | Reset Simulation |
| i | Toggle Ignition |
| q | Exit all |
| wasd | Control manually |
Start bridge processes located in tools/sim:
./run_bridge.py --simulator metadrive
CARLA is also partially supported, though the performance is not great. It needs to be manually installed with:
poetry install --with=carla
openpilot doesn't have any extreme hardware requirements, however CARLA requires an NVIDIA graphics card and is very resource-intensive and may not run smoothly on your system. For this case, we have the simulator in low quality by default.
You can also check out the CARLA python documentation to find more parameters to tune that might increase performance on your system.
Start Carla simulator and bridge processes located in tools/sim:
# Terminal 1
./start_carla.sh
# Terminal 2
./run_bridge.py --simulator carla
The following resources contain more details and troubleshooting tips.