Hi Pollen Robotics team,
I am having an issue with the Reachy 2 mobile base. The dashboard can open and I can SSH into the robot, but when the mobile base is enabled, the core logs repeatedly show:
service SetSpeed not available, waiting again...
The Python SDK also cannot properly connect to/control the robot when this happens.
Current setup
I am connected to Reachy through SSH:
ssh bedrock@reachy2-pvt01.local
The config file is located at:
/home/bedrock/.reachy_config/reachy.yaml
The mobile base section originally had:
mobile_base:
version_hard: 1.2
serial_number: MB-001
version_soft: 1.1
When I temporarily set:
mobile_base: null
and restart reachy2-core, the robot core works better for head/arms. But when I enable the mobile base again, the SetSpeed not available issue returns.
What I checked
I ran:
ls /dev | grep vesc
but nothing appears.
I also checked:
ls -l /dev/vesc_wheels
and it returns:
No such file or directory
So it seems /dev/vesc_wheels is not being created/detected.
I also checked the serial devices:
ls -l /dev/serial/by-id
and I can see two FTDI USB serial converters:
usb-FTDI_USB__-__Serial_Converter_FT94EN9J -> ../../ttyUSB1
usb-FTDI_USB__-__Serial_Converter_FT94ENR0 -> ../../ttyUSB0
I tried temporarily linking each one to /dev/vesc_wheels:
sudo ln -s /dev/ttyUSB0 /dev/vesc_wheels
sudo systemctl restart reachy2-core
and also:
sudo ln -s /dev/ttyUSB1 /dev/vesc_wheels
sudo systemctl restart reachy2-core
but both still resulted in the same SetSpeed not available issue.
I removed the temporary link after testing:
sudo rm -f /dev/vesc_wheels
Other logs noticed
At one point, I also saw Dynamixel timeout messages such as:
dynamixel_controller error
get_motors_temperature timeout
get_current_torque timeout
get_current_velocity timeout
left dx1 / right dx1 timeout
However, the main repeated issue when enabling the base is still:
service SetSpeed not available, waiting again...
Physical checks done
I checked the following:
- Mobile base power is on
- Emergency stop is released
- USB devices are detected as ttyUSB0 and ttyUSB1
- Reachy dashboard is reachable
- SSH access works
Question
Could you please advise what the correct expected device mapping should be for the mobile base on Reachy 2?
Specifically:
1. Should /dev/vesc_wheels be automatically created by a udev rule?
2. How can I identify which FTDI device is the mobile base controller?
3. Is there a service or udev rule I should restart to recreate /dev/vesc_wheels?
4. Could this be a mobile base firmware/power/USB hub issue instead?
5. Are there any official commands to test the mobile base controller directly?
For now, I can keep mobile_base: null to use the upper body, but I would like to restore the mobile base properly.
Thank you.
