Skip to content

Suggestions from the #47 review: teleop docs, neutral trim for testing - #55

Merged
caguero merged 11 commits into
caguero/joy_calibrate_owns_joy_nodefrom
bsb/docs_pr47_review
Sep 11, 2026
Merged

Suggestions from the #47 review: teleop docs, neutral trim for testing#55
caguero merged 11 commits into
caguero/joy_calibrate_owns_joy_nodefrom
bsb/docs_pr47_review

Conversation

@bsb808

@bsb808 bsb808 commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

Suggestions that came out of reviewing #47, targeted at its branch so they can be folded in or cherry-picked. These suggestions are outside the scope of #47, but came up as part of the review, so I thought it was appropriate to do the modifications instead of suggesting them in #47

Teleop how-to. Worked through things step-by-step in teleop.md. This is how I interpreted what was there, so feel free to edit if it wasn't as intended.

BlueROV2 neutrally trimmed, spawned mid water. This one may be a little controversial ;) For messing with ROV motion it is more convenient to have it neutrally buoyant, so I made that the default - and had it spawn mid-depth in the pool.

Shipped pad mapping replaced It looked like the yaml configs included were a default. The files are now the result of running the joy_map config utility with a USB F310. You might make sure these settings work for you if you have the same gamepad.

bsb808 and others added 8 commits September 9, 2026 15:15
A convenience for testing, outside the scope of PR #47; the idea came up while reviewing that PR. The shipped config was 0.002 kg positive, so a teleop session began with the vehicle rising to float awash at the surface, where there is nothing to drive.

net_buoyancy is now 0.0 and sim.launch.xml spawns at z -2.5, mid water in the 5 m pool; the playground's own spawn pose moves to match. The sim test that asserted a slow rise now asserts the vehicle holds depth.

The sensor wrapper links, 1e-5 kg each and outside the assembled mass the displacement is solved from, leave the trim a few 1e-5 kg negative, a fraction of a millinewton; the comment that relied on the 0.002 margin now says so. A real vehicle's slightly positive trim is a one line config change, and the configuration page says how.

Verified: colcon test on bluerov2_description and bluerov2_gazebo, 93 tests green including the headless sim suite.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Adds the ROS graph of the teleop pipeline, moves gamepad mapping ahead of the run examples as an optional step with the shipped mapping described and its two files linked, gives each vehicle its own run block, and adds a troubleshooting section that walks from device enumeration to /joy traffic. Fixes an inverted diagnosis in that last section: a pad that enumerates but publishes nothing points at device access, not downstream.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
004f64f replaced the shipped mapping with the one joy_map recorded, which puts surge and yaw on axes 7 and 6. The SDL game controller layout defines axes 0 to 5 only, so the sentence saying the shipped mapping follows it no longer holds.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
004f64f copied the mapping joy_map wrote, which carries no comments, so the headers describing the files' role went with it. They describe the role, not the values, and are unchanged from the originals.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@bsb808
bsb808 marked this pull request as ready for review September 10, 2026 05:21
@bsb808
bsb808 requested a review from caguero September 11, 2026 03:53
caguero and others added 3 commits September 11, 2026 21:48
Copying a mapping into config/pad and committing is a maintainer step,
not something a pilot does; the shipped config headers and the joy_map
docstring already say it. The how-to now stops at the user facing part:
the mapping under $ROS_HOME wins, delete it to fall back.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EK8rFrqH5ggeFaand8nXBb
…op the D pad one recorded here

The mapping this branch shipped was recorded with the F310's Mode LED on,
so it drove surge and yaw from the D pad; #47 now ships the ArduSub
layout and joy_map warns about that state. The pad files take #47's
version, the rewritten how-to stays.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EK8rFrqH5ggeFaand8nXBb

# Conflicts:
#	bluerobotics_teleop/config/pad/joystick.config.yaml
#	docs/how-to/teleop.md
…PA ceiling

The mapping section listed the layout of a pad file this branch no
longer carries; it now lists the shipped ArduSub layout (left stick
heave and yaw, right stick surge and sway, D pad EPA), names the F310
state it is for, and the Run section says why a first drive feels
sluggish: the ceiling starts at 20% and the D pad raises it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EK8rFrqH5ggeFaand8nXBb
@caguero

caguero commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Thanks @bsb808 !

I ended up using two of the three recommendations here: the Teleop how-to, and the BlueROV2 neutrally trimmed, spawned mid water. The new default pad mapping wasn't working as expected for me and I decided to do remap again in #47 following the Ardu convention, which hopefully will serve as a more natural approach for Ardu pilots. I modified this PR directly, I hope it's OK.

Out of curiosity, is your keypad configured with the back switch in X and the mode light off?

@bsb808

bsb808 commented Sep 11, 2026

Copy link
Copy Markdown
Contributor Author

That (going with the Ardu default) is even better @caguero !

@bsb808

bsb808 commented Sep 11, 2026

Copy link
Copy Markdown
Contributor Author

Out of curiosity, is your keypad configured with the back switch in X and the mode light off?

Yes - confirmed. Working in the drydock container - if that matters.

@caguero
caguero merged commit ec361d7 into caguero/joy_calibrate_owns_joy_node Sep 11, 2026
2 checks passed
@caguero
caguero deleted the bsb/docs_pr47_review branch September 11, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants