Fix Go2 phone teleop routing#2376
Conversation
Greptile SummaryThis PR fixes the
Confidence Score: 5/5Safe to merge — the change is a small, targeted addition to a single blueprint with matching unit tests, and no robot motion was affected during validation. Both transport entries are consistent with how the rest of the codebase wires LCM topics: LCMTransport('/cmd_vel', Twist) correctly targets the same topic that GO2Connection.cmd_vel resolves to at runtime, and JpegLcmTransport('/color_image', Image) replaces the platform-specific pSHMTransport override from unitree_go2_basic on macOS — JPEG compression more than compensates for the UDP bandwidth concern that motivated the original pSHMTransport workaround. The two unit tests cover both entries with precise assertions on topic name and LCM type. No files require special attention. Important Files Changed
Sequence DiagramsequenceDiagram
participant Browser as Browser / Rerun UI
participant TV as tele_cmd_vel stream<br/>(LCMTransport /cmd_vel)
participant Go2 as GO2Connection<br/>cmd_vel: In[Twist]
participant Phone as SimplePhoneTeleop<br/>cmd_vel: Out[Twist]
participant CI as color_image stream<br/>(JpegLcmTransport /color_image)
participant RR as RerunBridge<br/>(LCM subscriber)
Browser->>TV: keyboard / joystick Twist
TV-->>Go2: LCM /cmd_vel → move()
Phone->>Go2: direct in-process Twist (cmd_vel)
Go2->>CI: publish Image frame
CI-->>RR: JPEG-compressed frame on /color_image
Reviews (1): Last reviewed commit: "Fix Go2 phone teleop routing" | Re-trigger Greptile |
Summary:
tele_cmd_velcommands to the Go2cmd_velinput in the directteleop-phone-go2stack.color_imageover JPEG-LCM so the Rerun bridge can render camera frames.Tests:
/Users/kezaer/Git/dimos/.venv/bin/python -m pytest dimos/teleop/phone/test_blueprints.py -q/Users/kezaer/Git/dimos/.venv/bin/ruff check dimos/teleop/phone/blueprints.py dimos/teleop/phone/test_blueprints.pyNo robot motion commands were sent while validating this change.