Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More Configurable Test Play #1896

Closed
kasohrab opened this issue May 5, 2022 · 0 comments · Fixed by #1899
Closed

More Configurable Test Play #1896

kasohrab opened this issue May 5, 2022 · 0 comments · Fixed by #1899

Comments

@kasohrab
Copy link
Contributor

kasohrab commented May 5, 2022

Description

Making an issue again cause it helps me remember to do it eventually.

As we learned from the scrim, configurable params are great.

We should be able to swap between test plays via cli for testing. We already have a python side param client we can use for this or it can just be a gameplay node param since it doesn't need to be shared. At the same time we should resolve #1666. Actually following yagni, let's just make the test play configurable for now.

Requirements

  • Can switch between test plays with cli
  • Then add this to the UI
  • (and other params like plus/minus and other configurable values). <- future pr should do this

Design -- Sources

The design should basically be:
Test play is a gameplay node param string.
Test play is a string topic which the ui will publish to gameplay node.
Must also add a callback to gameplay node to reject test plays if they do not exist in a set of valid plays.
This way we don't pollute global param server when only these two nodes need it. Also it allows the the ui to update with a gameplay node subscription callback.

User can change test play with ui or use cli (ui will just be a wrapper for that ros2 param cli cmd).

https://github.com/ros2/launch/blob/master/launch/launch/actions/opaque_function.py
https://github.com/jrgnicho/collaborative-robotic-sanding/blob/3902e4f0e76bde226b18a997fd60fc30e1961212/crs_application/launch/perception.launch.py#L21
https://docs.ros.org/en/foxy/Tutorials/Using-Parameters-In-A-Class-Python.html#write-the-python-node

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant