Troubleshooting
Robots are complex. Common issues are listed below. Contact our support team at support@clearpathrobotics.com if the issue persists.
Our Support team may ask you to create a rosbag. This is a tool that saves ROS data to a file, so we can review it after the robot has been turned off.
For example, we may ask you to record the /status topic so we can review motor temperatures, and other diagnostic data. To create this rosbag, you would:
- Log into the robot's computer.
- Run the command
rosbag record /status
- Use your robot as you typically would, trying to recreate the issue you have been experiencing.
- Once done, in the terminal, press
ctrl+c
to stop the command. - Enter
ls
, and find the new file that was created. It will have a file extension of .bag - Copy this file to your development computer, using a command like
scp
. Send this .bag file to Clearpath Robotics in your Support email request.
Status lights
COMM
light on the rear panel is red
A red COMM light means the Husky's computer to microcontroller serial connection is not established. This serial connection requires:
- The computer to be on
- The USB-Serial cable to be functioning properly.
A functioning cable will appear in Ubuntu as
/dev/ttyUSB
or/dev/ttyACM
- The serial port has been given permissions in Linux.
- The MCU's microcontroller is on.
- The MCU has Husky's firmware installed on it.
- Functioning connections from the USB-Serial cable to the MCU's microcontroller. (soldered connectors, PCBA traces, microcontroller's soldered pins)
If your robot was functioning recently, the most common causes are:
- The robot's computer is not powered, or is still booting. Wait 60 seconds after startup to see if the computer-to-MCU connection starts after the computer turns on. If not, connect to the computer with SSH, or using a computer monitor to see if the computer is running.
- The USB-Serial cable is not connected. Check that the USB end is seated in the robot's computer. Check that the DE-9 end is seated on it's jack in the Husky user bay.
- Someone has changed ROS environment variables. You can review Husky's environment variables by running:
nano /etc/ros/setup.bash
COMM
light is yellow
A yellow COMM light indicates that there is a functioning Serial connection between the robot's computer and MCU's microcontroller, but there is a ROS software error on the computer. The common causes for this error are:
- The Husky's motion-stop button has been pressed. Twist the red button on the back of the Husky clockwise to release the motion-stop.
You can confirm the motion-stop state in ROS by running:
rostopic echo /status
- The Husky's lockout keyswitch is in the Locked position. Use the included key to turn the lockout to the Unlocked position.
COMM
light flickers
This frequently happens when the MCU is not receiving motion commands fast enough. Increase your published motion command in ROS to at least 10 Hz.
rostopic pub -r 10 /cmd_vel ...
The maximum command frequency that Husky accepts is 50 Hz.
ERR
light is on
This light indicates a General Error. It is red when the Husky is in a motion-stop state, has insufficient battery voltage, or an if there is unspecified software error.
STOP
status light is on
- Twist the red stop button at the back of the Husky.
- Confirm that the robot is not locked out.
- Confirm that all external stop devices are functioning, and that their related switches and relays are closed. You may need to use a multimeter to test voltage between the external stop connector and each of these external stop switches. Refer to the External Stop section for details.
You can confirm the motion-stop state in ROS by running:
rostopic echo /status
Power button's blue light is not on
The power button on the back of Husky has a blue light that turns on when the button is pressed, indicating that the Husky is receiving power. This light will turn on if the switch is receiving power, there is no sofware controlling it. For the button to turn on:
- The Husky needs to have a charged battery installed.
- The main fuse on the Husky's MCU needs to be functioning.
- The ribbon cable between the MCU and switch PCBA needs to be fully seated on both ends.
- The connector on the switch's cable needs to be fully seated on the switch's PCBA.
We have not seen these connections fail, even in applications with lots of vibration. The most common fix for this issue is to check that battery is charged, and that it's power cable is seated in the Husky's MCU.
Battery indicator is flashing
- Battery voltage is too low for Husky to drive the motors.
- Charge the battery and try again.
Battery indicator only shows 50% charge with a fresh battery
The battery indicator is controlled by the Husky MCU's microcontroller, based on a voltage measurement of the battery. The controls program was designed for a lithium battery. 24 V lithium batteries reach a peak voltage of 29 V. Our Standard 24 V lead-acid battery does not reach as high of a voltage, so the MCU's microcontroller thinks the battery is not fully charged.
There is no way to change this behaviour on your Husky.
Mobility
Husky experiences momentary drops in communication, or Husky's velocity has an inconsistent jumping motion
It's possible the robot has reached the thermal limit, or current limit. The maximum current limits are set to 26 A, however, as the motors are only rated for 10.7 A continuous, anything above that will trigger the current limit eventually, the higher above this limit, the more quickly it will trigger. If you are unsure whether this is the case, feel free to contact support@clearpathrobotics.com with a rosbag of your system.
Clearpath Robotics also offers a high torque upgrade if more torque is required for your project.
Husky rolls on a slope
Husky's wheels are always connected to the motors.
When you send a motion command with /cmd_vel
, the Husky's MCU subscribes to that message, and relays a command to the Husky's motor controllers.
These motor controllers change the voltage across the DC brushed motors, causing a mechanical torque at the wheels.
When you stop publishing to /cmd_vel
, ROS starts publishing a default value to /cmd_vel
of zero velocity.
At this point, the motor controllers are not attempting to change the Husky's velocity using electrical power.
When the Husky's velocity is near 0 m/s, the motor controllers will use the motor's copper windings as a resistor.
This is why your Husky will roll on a slope, since the resistive torque of the copper windings is less than the gravitational force on the robot.
The /twist_mux
topic controls to priority of /cmd_vel
messages.
If this amount of rolling is unacceptable, you can update the motor controller's firmware to a version that applies holding torque. The process to update the firmware is detailed on our Husky Maintenance page.
Your Husky will roll if:
- The Husky's motion-stop button is pressed.
- Husky's motor controllers are receiving a zero velocity command, rather than a small value like 0.01 m/s.
- The MCU is not functioning. This will appear as other issues, such as the status lights not illuminating.
- The computer is not communicating with the MCU. This will appear as a red COMM light on the rear panel.
- A motor shaft is broken.
Networking
Not getting Wi-Fi internet connection
Refer to the Networking page.
Cannot connect to the robot's computer over a network cable
Reter to the Networking page.
Computer
The computer does not automatically start
Refer to the Mini ITX troubleshooting page.
The computer keeps reverting to old BIOS settings
Refer to the Mini ITX troubleshooting page.
ROS
ROS package is not starting
Verify the upstart logs, /var/log/upstart/husky_core.log
, to see if there are any error during upstart.
Sensors are not turning on
- Check that the sensor's User Power connector has the correct voltage.
- If the voltage is correct, then review the Troubleshooting section for the related sensor.
A ROS package isn't starting
- Verify the upstart logs,
/var/log/upstart/husky_core.log
to see if there are any error during upstart.
If the Issue Persists
Clearpath is committed to your success. Please get in touch with us and we will do our best to get you rolling again quickly: support@clearpathrobotics.com.
To get in touch with a salesperson regarding Clearpath Robotics products, please email research-sales@clearpathrobotics.com.
If you have an issue that is specifically about ROS and is something which may be of interest to the broader community, consider asking it on https://robotics.stackexchange.com. If you do not get a satisfactory response, please ping us and include a link to your question as posted there. If appropriate, we will answer in the ROS Answers context for the benefit of the community.