I have hit on some weirdness with two of the gopigo3_node topics, and am thinking to comment them out. There are some other drastic commands of which I am questioning actual usage.
Does anyone use or know when a ROS bot would need the following:
/motor/position/left: std_msgs/msg/Int16
/motor/position/right: std_msgs/msg/Int16
The issues I have with them:
- Rotation speed is not controllable
- Restarting the node ( without powering down completely after using one of these) causes uncommanded movement of the bot to the last commanded encoder value.
Also of questionable use:
/power/off: std_srvs/srv/Trigger
/power/on: std_srvs/srv/Trigger
/reset: std_srvs/srv/Trigger
/spi: ros2_gopigo3_msg/srv/SPI
The topics and services I have working at this point are:
/gopigo3_node
Subscribers:
/cmd_vel: geometry_msgs/msg/Twist
/led/blinker/left: std_msgs/msg/UInt8
/led/blinker/right: std_msgs/msg/UInt8
/led/eye/left: std_msgs/msg/ColorRGBA
/led/eye/right: std_msgs/msg/ColorRGBA
/led/wifi: std_msgs/msg/ColorRGBA
/motor/dps/both: std_msgs/msg/Int16 <--- NEW
/motor/dps/left: std_msgs/msg/Int16
/motor/dps/right: std_msgs/msg/Int16
/motor/pwm/both: std_msgs/msg/Int8 <--- NEW
/motor/pwm/left: std_msgs/msg/Int8
/motor/pwm/right: std_msgs/msg/Int8
/servo/position/S1: std_msgs/msg/Float64
/servo/position/S2: std_msgs/msg/Float64
/servo/pulse_width/S1: std_msgs/msg/Int16
/servo/pulse_width/S2: std_msgs/msg/Int16
Publishers:
/battery_voltage: std_msgs/msg/Float64
/joint_state: sensor_msgs/msg/JointState
/motor/encoder/left: std_msgs/msg/Float64
/motor/encoder/right: std_msgs/msg/Float64
/motor/status: ros2_gopigo3_msg/msg/MotorStatusLR
/odom: nav_msgs/msg/Odometry
/tf: tf2_msgs/msg/TFMessage