Skip to content

fix: publish Twist instead of TwistStamped, improve keyboard HUD#10

Merged
spomichter merged 1 commit intomainfrom
fix/twist-type-and-overlay
Mar 6, 2026
Merged

fix: publish Twist instead of TwistStamped, improve keyboard HUD#10
spomichter merged 1 commit intomainfrom
fix/twist-type-and-overlay

Conversation

@spomichter
Copy link
Copy Markdown

fixes type mismatch that prevented keyboard controls from moving the robot.

changes

LCM type fix:

  • publish geometry_msgs/Twist instead of TwistStamped on /cmd_vel
  • matches DimOS convention (GO2, G1, planner, teleop all use plain Twist)
  • 56 bytes per message (was 82) — no Header overhead
  • fingerprint: 0x2e7c07d7cdf7e027 (verified against python lcm reference)

keyboard overlay:

  • dark semi-transparent HUD panel (was tiny green text)
  • visual key grid: Q/W/E row, A/S/D row, STOP bar
  • green highlight on active keys, dim when idle
  • red flash on e-stop (space)
  • shift speed indicator
  • always visible, dims when inactive
  • fix egui deprecations (Rounding -> CornerRadius)

all 27 tests pass.

…ard overlay

- Change LCM message type from TwistStamped to Twist (matches DimOS convention)
- Channel: /cmd_vel#geometry_msgs.Twist (was geometry_msgs.TwistStamped)
- Twist encoding: 56 bytes (hash + 6 doubles), no Header overhead
- Fingerprint hash: 0x2e7c07d7cdf7e027 (verified against Python LCM reference)

Keyboard overlay improvements:
- Dark semi-transparent background panel (HUD style)
- Visual key grid showing Q/W/E/A/S/D with active state highlighting
- Green highlight on pressed keys, dim when idle
- STOP bar (space) with red flash on e-stop
- Shift speed indicator
- Always visible (dims when no keys active)
- Fix egui deprecation: Rounding -> CornerRadius, .rounding() -> .corner_radius()

All 27 tests pass.
@spomichter spomichter merged commit b7e586a into main Mar 6, 2026
20 of 29 checks passed
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.

1 participant