SHOP News & Articles Contact Impressum

[Unitree GO1] Information about the unltrasonic sensors


Is there any further information about the built in ultrasonic sensors?
I would like to use the provided ranges in RViz, which uses the sensor_msgs/Range message.

These fields are unknown to me:

float32 field_of_view   # the size of the arc that the distance reading is
                        # valid for [rad]
                        # the object causing the range reading may have
                        # been anywhere within -field_of_view/2 and
                        # field_of_view/2 at the measured range. 
                        # 0 angle corresponds to the x-axis of the sensor.

float32 min_range       # minimum range value [m]
float32 max_range       # maximum range value [m]

It would be great to know these three parameters!

Thanks in advance


1 Like

Does somebody at least know, which sensors are used in the Robot?

Pardon the late reply,

I’ve asked the manufacturers about the ultrasonic sensors, and the data which it sends, in short, they have discontinued the ultrasonic sensors in the latest versions of the GO1, for the existing versions we’ve gotten a manual which I have added to the docs, however, they are yet to send the SDK. I will update the docs with the SDK link as soon as we get it.

The SDK should be available in the pi directly if your GO1 has the ultrasonic sensors.


Where exactly do I find the manual in the docs? At first glance I wasn’t able to spot them.

Its in the GO1 Manual section

1 Like

@jgrube if you ssh into the robot(any of the boards), inside Unitree/autostart have a nice example for a ros specific handle for ultrasound sensors. I hope this can be useful.

1 Like

I don’t know, if I have a different software version, or if I’m just to stupid, but I don’t see any nice examples in the autostart directory.

Do you have a file name I can look for?

Apologies my bad its not in autostart but inside SDK. The path is Unitree/sdk/ultraSoundSDK_Nano/ its not a ROS package but a small C++ demo atleast to get started.

So the main.cpp file shows, as far as I understand, how to use the UltraSound_UART library to get distances from the sensors.

But that is something you don’t have to do manually since the HighState message includes this information.

My goal would be to use the range visualization, built into RViz, to display the measured distances.
This on the other hand requires the parameters stated above.
From the Datasheet, I was at least able to get the information, that the sensor provides distances between 0 and 2 meters. This then leaves only the field_of _view parameter to fiddle with.

Thank you for your time!

Footer With Address And Phones