Improbable-AI / VisionProTeleop

VisionOS App + Python Library to stream head / wrist / finger tracking data from Vision Pro to any robots.
MIT License
308 stars 17 forks source link

unitree B1 and Z1 connection issue #1

Closed acoudgo closed 3 months ago

acoudgo commented 4 months ago

The robots used in the demo is unitree B1 and Z1 as I know, are they connected by wired network and communicate with AVP through the wifi powered by B1?

acoudgo commented 4 months ago

I do not find contents about connection and control for unitree B1 and Z1. If the app already includes this part for robots? What can I do to make sure the connection has been ready?

gmargo11 commented 4 months ago

Hi @acoudgo ,

The AVP is connected to the B1 through its onboard wifi network. Here are the steps:

  1. Turn on the B1
  2. Connect the AVP to the wifi network, the name will be something like "B1-209-5G".
  3. Now run the Tracking Streamer app on the Vision Pro. The AVP will be automatically assigned an IP address on the B1's subnet: 192.168.123.xxx
  4. Now you can obtain the hand tracking data on any of the B1's onboard computers by instantiating a VisionProStreamer object as in https://github.com/Improbable-AI/VisionProTeleop?tab=readme-ov-file#step-3-receive-the-stream-from-anywhere. For example, in my system the AVP is assigned 192.168.123.55 which displays when I run the Tracking Streamer app. So the code I run onboard the B1 looks like:
from avp_stream import VisionProStreamer
avp_ip = "192.168.123.55"   # example IP 
s = VisionProStreamer(ip = avp_ip, record = True)

while True:
    r = s.latest
    print(r['head'], r['right_wrist'], r['right_fingers'])