Files
sunnypilot/tools/sim
Shane Smiskol 5ed587ebef controls: block resume if cruise not previously engaged (#25402)
* see if this works at all

* can revert this

* think adding a no entry conditionally is nicer

* then we can revert this

* 0 makes more sense

* Revert "0 makes more sense"

This reverts commit efc89e8a2389ef58fbc0cec0a2872d24db524867.

* gm CC uses > 70

* bump cereal

* comment

* test on Honda

* whoops

* works

* add exception with todo

* moved button enable events to controlsd

* get rid of that

get rid of that

* different values for now

* car interfaces add enable event, controlsd can block it

* Regen and update refs

* delete if not set

* One place

one place

* regen routes are uninitialized first few frames

* Trim start of segment so it's like original segment

* stash

* regen

* not working

* clean up

* more cleanup

* revert

* bump ceral

* actually check resume button

* whoops

* pcmCruise cars don't use setSpeed, so we're good

* engage correctly in sim

* Update ref_commit

* Update refs
2022-08-17 18:03:33 -07:00
..
2022-08-07 17:10:14 -07:00
2022-04-22 18:00:49 +02:00
2022-06-02 16:45:11 -07:00

openpilot in simulator

openpilot implements a bridge that allows it to run in the CARLA simulator.

System Requirements

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 a 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.

Running the simulator

Start Carla simulator, openpilot and bridge processes located in tools/sim:

# Terminal 1
./start_carla.sh

# Terminal 2 - Run openpilot and bridge in one Docker:
./start_openpilot_docker.sh

# Running the latest local code execute
    # Terminal 2:
    ./launch_openpilot.sh
    # Terminal 3
    ./bridge.py

Bridge usage

Same commands hold for start_openpilot_docker

$ ./bridge.py -h
Usage: bridge.py [options]
Bridge between CARLA and openpilot.

Options:
  -h, --help            show this help message and exit
  --joystick            Use joystick input to control the car
  --high_quality        Set simulator to higher quality (requires good GPU)
  --town TOWN           Select map to drive in
  --spawn_point NUM     Number of the spawn point to start in

To engage openpilot press 1 a few times while focused on bridge.py to increase the cruise speed. All inputs:

key functionality
1 Cruise up 1 mph
2 Cruise down 1 mph
3 Cruise cancel
q Exit all
wasd Control manually

Further Reading

The following resources contain more details and troubleshooting tips.