Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This pull request adds keyboard control functionality to the web interface. There is a new customizable component called “Keyboard Control” that, when added to the layout, enables keyboard inputs for controlling the stretch robot.
Keyboard Controls
Base Mode
W - Base Forward
A - Base Rotate Left
S - Base Backward
D - Base Rotate Right
Arm Mode
W - Arm Lift
A - Arm Retract
S - Arm Lower
D - Arm Extend
Wrist Mode
Q - Wrist Roll Left
E - Wrist Roll Right
W - Wrist Pitch Up
A - Wrist Rotate In
S - Wrist Pitch Down
D - Wrist Rotate Out
Gripper
J - Close Gripper
K - Open Gripper
Camera
Up Arrow - Camera Tilt Up
Left Arrow - Camera Pan Left
Down Arrow - Camera Tilt Down
Right Arrow - Camera Pan Right
Testing procedure
ngary/keyboard_teleop
and launch the web interface🪲 Bugs - Test Cases (Checked means bugs are fixed)
The keyboard input toggle button doesn't stop any running input commands when clicked off
Switch to Press-and-Hold or Click-Click mode
The toggle button is still clickable while in customizing state, but not while component is selected.
When in customizing mode:
When leaving the customizing mode, no key inputs are processed regardless of what state the toggle is in
Before opening a pull request
From the top-level of this repository, run:
pre-commit run --all-files
To merge
Squash & Merge