Skip to content

fix(go2): route phone teleop command and video streams#2376

Open
kezaer wants to merge 1 commit into
dimensionalOS:mainfrom
kezaer:fix/go2-teleop-wiring
Open

fix(go2): route phone teleop command and video streams#2376
kezaer wants to merge 1 commit into
dimensionalOS:mainfrom
kezaer:fix/go2-teleop-wiring

Conversation

@kezaer

@kezaer kezaer commented Jun 6, 2026

Copy link
Copy Markdown

Summary

  • Route browser and Rerun tele_cmd_vel commands to the Go2 cmd_vel input in the direct teleop-phone-go2 stack.
  • Expose Go2 color_image over JPEG-LCM so the Rerun bridge can render camera frames.
  • Add focused blueprint transport tests for command and video routing.

Why

The direct Go2 phone teleop stack should be independently usable: the browser control path needs to reach the Go2 command stream, and the camera stream needs to be visible to Rerun without depending on a larger navigation stack.

Safety

  • No robot motion commands were sent while validating this change.
  • This PR changes stream wiring only; it does not auto-enable any browser control UI or publish nonzero velocity commands.

Validation

  • uv run pytest dimos/teleop/phone/test_blueprints.py -q
  • uv run ruff check dimos/teleop/phone/blueprints.py dimos/teleop/phone/test_blueprints.py

@greptile-apps

greptile-apps Bot commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes the teleop-phone-go2 stack by adding transport mappings to correctly route browser/Rerun tele_cmd_vel keyboard commands to the Go2's cmd_vel LCM topic, and exposes the Go2 color_image stream over JPEG-LCM for the Rerun bridge.

  • blueprints.py: Adds .transports(...) to teleop_phone_go2 with LCMTransport(\"/cmd_vel\", Twist) for command routing and JpegLcmTransport(\"/color_image\", Image) for camera frames.
  • test_blueprints.py (new): Adds two focused unit tests that verify the transport map keys and topic configuration for both routes directly, without needing a live robot connection.

Confidence Score: 5/5

Safe to merge — both transports are additive configuration on an existing blueprint, with no behavioral changes to other stacks.

The change is narrowly scoped: two transport entries are wired into teleop_phone_go2 and two corresponding tests verify the configuration. The fleet and standalone variants are untouched, the transport classes are already well-tested in the codebase, and the tests are deterministic (no I/O or LCM connections opened at assertion time).

No files require special attention.

Important Files Changed

Filename Overview
dimos/teleop/phone/blueprints.py Adds transport mappings to teleop_phone_go2 for command routing (tele_cmd_vel to /cmd_vel via LCM) and camera streaming (color_image to /color_image via JPEG-LCM); no issues found.
dimos/teleop/phone/test_blueprints.py New test file with two tests verifying transport map keys, topic names, and LCM types; uses type() is vs isinstance deliberately to distinguish base class from subclass.

Sequence Diagram

sequenceDiagram
    participant BrowserRerun as Browser / Rerun
    participant PhoneTeleop as SimplePhoneTeleop
    participant LCM as LCMTransport(/cmd_vel)
    participant Go2Conn as Go2Connection
    participant Camera as Go2 Camera
    participant JpegLCM as JpegLcmTransport(/color_image)
    participant RerunBridge as RerunBridge

    BrowserRerun->>PhoneTeleop: publish tele_cmd_vel (Twist)
    PhoneTeleop->>LCM: route via transport_map
    LCM->>Go2Conn: /cmd_vel (Twist over LCM)

    Camera->>PhoneTeleop: publish color_image (Image)
    PhoneTeleop->>JpegLCM: route via transport_map
    JpegLCM->>RerunBridge: /color_image (JPEG-encoded Image over LCM)
Loading

Reviews (2): Last reviewed commit: "Fix Go2 phone teleop routing" | Re-trigger Greptile

@kezaer kezaer force-pushed the fix/go2-teleop-wiring branch from a4055e6 to 7b71396 Compare June 8, 2026 06:40
@kezaer kezaer changed the title Fix Go2 phone teleop routing fix(go2): route phone teleop command and video streams Jun 8, 2026
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