Common Issues and Solutions
This document addresses frequently encountered problems with the RCR Common Robotics Platform and their solutions.
Communication with Teensy 4.0 Microcontroller
View debug output
SERIAL_TEENSY_DEVICE=`find /dev/serial/by-id/ -name "usb-Teensyduino*if02"|head -1`
python3 -m serial.tools.miniterm ${SERIAL_TEENSY_DEVICE} 115200
Power Issues
Robot Won’t Power On
Symptoms:
No LED indicators
No response to power switch
Dead system
Possible Causes & Solutions:
Battery Issues
Cause: Dead or low battery
Solution: Check battery voltage, charge if needed
Prevention: Regular battery maintenance
Power Switch Failure
Cause: Faulty power switch
Solution: Test switch continuity, replace if needed
Prevention: Handle switch gently
Loose Connections
Cause: Poor battery connections
Solution: Check and tighten all power connections
Prevention: Regular connection inspection
Intermittent Power Loss
Symptoms:
Robot shuts down unexpectedly
System resets during operation
Unstable power indicators
Solutions:
Check battery voltage under load
Inspect power cables for damage
Verify power distribution board connections
Test with known good battery
Communication Issues
ROS2 Nodes Not Starting
Symptoms:
Missing nodes in
ros2 node listLaunch failures
Communication timeouts
Solutions:
Network Issues
# Check network connectivity ping <robot_ip> # Verify ROS2 environment echo $ROS_DOMAIN_ID
Launch File Problems
# Test launch file syntax ros2 launch --dry-run common_platform launch_robot.launch.py
Dependency Issues
# Check for missing packages rosdep check --from-paths src --ignore-src
Sensor Communication Errors
Symptoms:
No sensor data on topics
Error messages about sensor connections
Inconsistent sensor readings
Solutions:
USB Connection Issues
Check USB cable integrity
Try different USB ports
Verify device permissions
Serial Communication Problems
Check baud rate settings
Verify serial port assignments
Test with serial terminal
I2C Bus Issues
Check I2C device addresses
Verify pull-up resistors
Test I2C bus with tools
Motor and Movement Issues
Motors Not Responding
Symptoms:
No movement on command
Motors make noise but don’t move
Uneven motor performance
Solutions:
Motor Driver Issues
Check motor driver connections
Verify driver power supply
Test driver functionality
Encoder Problems
Check encoder wiring
Verify encoder counts
Test encoder resolution
Control Loop Issues
Check PID parameters
Verify control loop timing
Review motor specifications
Uneven Movement
Symptoms:
Robot drifts to one side
Uneven wheel speeds
Curved movement when going straight
Solutions:
Calibration Issues
Recalibrate wheel diameters
Check wheelbase measurements
Verify encoder counts per revolution
Mechanical Issues
Check wheel alignment
Verify tire pressure
Inspect for mechanical binding
Diagnostic Commands
System Health Check
# Check system resources
htop
# Check disk space
df -h
# Check network connectivity
ip addr show
ROS2 Diagnostics
# List all nodes
ros2 node list
# Check topic rates
ros2 topic hz /${ROS_NAME}/topic_name
# Monitor system performance
ros2 run rqt_graph rqt_graph
Hardware Diagnostics
# Check USB devices
lsusb
# Check serial devices
ls /dev/tty*
# Check I2C devices
i2cdetect -y 1
When to Seek Help
Contact the PARTS team if:
Issues persist after trying solutions
Hardware appears damaged
Error messages are unclear
System behavior is dangerous
Prevention Tips
Regular Maintenance
Clean sensors regularly
Check connections monthly
Update software regularly
Proper Operation
Follow startup/shutdown procedures
Use appropriate operating environments
Monitor system during operation
Documentation
Keep logs of issues and solutions
Document any modifications
Share solutions with community
For more detailed troubleshooting, see Recovery Procedures For error code reference, see Error Codes