Hi all, I am facing some data streaming issues from the go2 dog. I am not able to echo /sportmodestate but I can echo all the low level state topics like /lf/sportmodestate /lowstate, /lowcmd. The low state topics all have a single publisher and multiple subscribers, the /sportmodestate has no publishers and I don’t know how I can enable it.
For context:
I am on running on ubuntu 22.04 with ROS2 humble.
I have an external sensor payload (jetson orin), connected on the expansion dock of the go2 dog and communicating with it via ethernet (jetson to dog ethernet tethering, eno1). I am able to network between these two systems.
I have set the RMW_IMPLEMENTATION as cycloneDDS in my bashrc and exported the CYCLONEDDS_URI to be my cyclonedds.xml file that detailed my Network interface as “eno1”. I have also added an additional line for “AllowMulticast” to true.
My low level DDS path seems to work just fine, but when it comes to echoing the actual high level estimated odometry like position and velocity, all of it is zeroed out with Mode 1 and Gait type 0. I have ran the unitree_ros2_examples to read the motion state and the same is showing with zeroed position and velocity. ./read_low_state is able to output latest sensor data streams.
I am controlling the unitree go2 dog with a R3-1 controller and explicitly setting the dog to be in “High speed sports mode: L2 + start”. I have tried running the read motion state example while moving my dad via controller to see if any params/values change and nothing changes. So far I can only get accel, gyro, quaternion, euler angles, foot force etc, but not position or velocity.
I would like some guidance/suggestions on this thanks ya’ll.