[Unitree Go1] Robot - Issue with ROS topics

Hi guys… Does any can help me? Here is my problem:
My robot, GO1, is turned on successfully and I am controlling it with a joystick; however, I have a few problems with ROS topics. When I write rostopic list, the terminal shows these:
/camera1/point_cloud_face
/camera1/range_visual_face
/camera2/point_cloud_chin
/camera3/range_visual_left
/camera4/point_cloud_right
/camera4/range_visual_right
/camera5/point_cloud_rearDown
/cmd_odom
/cmd_vel
/cmd_vel_2
/joint_states
/lcm_node/obs_env
/lcm_node/ultrasonic_env
/map
/move_base/cancel
/move_base/feedback
/move_base/goal
/move_base/result
/move_base/status
/move_base_simple/goal
/odom
/pointcloud_process/ground_pointcloud
/range_front
/range_left
/range_right
/range_ultrasonic_face
/range_ultrasonic_left
/range_ultrasonic_right
/ros2udp/odom
/ros2udp_motion_mode_adv/joystick
/rosout
/rosout_agg
/scan
/slam_planner_node/DBLocalPlannerROS/global_plan
/slam_planner_node/DBLocalPlannerROS/local_plan
/slam_planner_node/DBLocalPlannerROS/obstacles
/slam_planner_node/DBLocalPlannerROS/parameter_descriptions
/slam_planner_node/DBLocalPlannerROS/parameter_updates
/slam_planner_node/DBLocalPlannerROS/teb_feedback
/slam_planner_node/DBLocalPlannerROS/teb_markers
/slam_planner_node/DBLocalPlannerROS/teb_poses
/slam_planner_node/DBLocalPlannerROS/via_points
/slam_planner_node/GlobalPlanner/parameter_descriptions
/slam_planner_node/GlobalPlanner/parameter_updates
/slam_planner_node/GlobalPlanner/plan
/slam_planner_node/GlobalPlanner/potential
/slam_planner_node/current_goal
/slam_planner_node/global_costmap/costmap
/slam_planner_node/global_costmap/costmap_updates
/slam_planner_node/global_costmap/footprint
/slam_planner_node/global_costmap/inflation_layer/parameter_descriptions
/slam_planner_node/global_costmap/inflation_layer/parameter_updates
/slam_planner_node/global_costmap/obstacle_layer/clearing_endpoints
/slam_planner_node/global_costmap/obstacle_layer/parameter_descriptions
/slam_planner_node/global_costmap/obstacle_layer/parameter_updates
/slam_planner_node/global_costmap/parameter_descriptions
/slam_planner_node/global_costmap/parameter_updates
/slam_planner_node/global_costmap/static_layer/parameter_descriptions
/slam_planner_node/global_costmap/static_layer/parameter_updates
/slam_planner_node/local_costmap/costmap
/slam_planner_node/local_costmap/costmap_updates
/slam_planner_node/local_costmap/footprint
/slam_planner_node/local_costmap/obstacle_layer/parameter_descriptions
/slam_planner_node/local_costmap/obstacle_layer/parameter_updates
/slam_planner_node/local_costmap/parameter_descriptions
/slam_planner_node/local_costmap/parameter_updates
/slam_planner_node/local_costmap/static_layer/parameter_descriptions
/slam_planner_node/local_costmap/static_layer/parameter_updates
/slam_planner_node/parameter_descriptions
/slam_planner_node/parameter_updates
/slamware_ros_sdk_server_node/add_line
/slamware_ros_sdk_server_node/add_lines
/slamware_ros_sdk_server_node/basic_sensors_info
/slamware_ros_sdk_server_node/basic_sensors_values
/slamware_ros_sdk_server_node/cancel_action
/slamware_ros_sdk_server_node/clear_lines
/slamware_ros_sdk_server_node/clear_map
/slamware_ros_sdk_server_node/global_plan_path
/slamware_ros_sdk_server_node/go_home
/slamware_ros_sdk_server_node/map_metadata
/slamware_ros_sdk_server_node/move_by_direction
/slamware_ros_sdk_server_node/move_by_theta
/slamware_ros_sdk_server_node/move_line
/slamware_ros_sdk_server_node/move_lines
/slamware_ros_sdk_server_node/move_to
/slamware_ros_sdk_server_node/move_to_locations
/slamware_ros_sdk_server_node/recover_localization
/slamware_ros_sdk_server_node/remove_line
/slamware_ros_sdk_server_node/robot_basic_state
/slamware_ros_sdk_server_node/robot_device_info
/slamware_ros_sdk_server_node/rotate
/slamware_ros_sdk_server_node/rotate_to
/slamware_ros_sdk_server_node/set_map_localization
/slamware_ros_sdk_server_node/set_map_update
/slamware_ros_sdk_server_node/set_pose
/slamware_ros_sdk_server_node/sync_map
/slamware_ros_sdk_server_node/virtual_tracks
/slamware_ros_sdk_server_node/virtual_walls
/tf
/tf_static
/ukd_triple/pose
/ukd_triple/state
/ukd_triple_2_goal/path_tag_line
/ukd_triple_2_goal/path_tag_window

Question 1: all the topics that are shown here are correct? Nothing is missing, right? Because I need to make sure that if any topics are missing, I should install the related packages (How can I do that?)

Question 2: When I run rostopic echo \cmd_odom (or /cmd_odom or /cmd_vel or /cmd_vel_2 or /joint_states or some other topics), the terminal does not show anything to me. I don’t how I can see or access these values. Why is this happening?

Question 3: When the robot is turned on and it is walking with a joystick, I run rostopic echo \odom I see this:

Why does the value of twist is 0 when the robot is walking or rotating 90 or 180 degrees? These should change, right? If yes, how I can fix this?

Dear @Amir_Mahdi,

Which ros repository are you using, this doesnt seem to belong to mybotshop or unitree real. Unless it is simulation. Please provide information on the system you are using, ros repositories, and system architecture.

On first glance I can say that this seems to be a custom ROS repository and you must consult the documentation from which repository this was taken from.

Regards,
S. O. Sohail

Q1: Custom repository, cannot provide information
Q;2 The ROS drivers are not running or the system is not connected to the robot.
Q;3 Custom Repository, but the answer is that the odom is being calculated on pre-defined gaits and not based on wheels most likely.

Dear Soheil,

Thank you for your email. Honestly, I am from hrl-lab (Bonn), which you have already shared your repository with us. I connected via SSH to the robot, and some packages were installed before I started working on this robot (by a former PhD student or already implemented by the company). I will try to gather this information and contact you again. However, I would like to know about this question:
Q1. On your website (GO1 Software Setup — GO1 Tutorials 1.0.0 documentation), you mentioned that we should either use ROS melodic or Neotic. Do you mean we have to install these on our PC and then connect to the robot (Rasberry Pi or NanoJetson) via LAN or wifi? Or do you mean ROS Melodic or Neotic should be installed on the (Rasberry Pi or NanoJetson)?

Dear Mahdi,

You can install it on your own PC and furthermore, you can change the go1_base to select either WiFi or LAN for connection options.

Also, if you have access to our repository and wish to install the ros controls on go1, you can view the melodic-robotis branch and install that on the go1 Nvidia board that has the ip 192.168.123.14.