Power & Electrical Issues
Troubleshooting power supply, servo power, and electrical problems
⚠️ Robot Won't Power On
Symptoms:
- No LED lights on Pico or PCA9685
- Computer doesn't recognize USB device
- Complete system unresponsive
Possible Causes:
- Power supply not plugged in or switched off
- Blown fuse or tripped breaker
- Damaged USB cable (power-only cable)
- Loose power connector
- Short circuit somewhere in wiring
Solutions:
1. Check power supply
- • Verify power supply is plugged into wall outlet
- • Check that outlet has power (test with another device)
- • Ensure power switch on supply is in ON position
- • Look for LED indicator on power supply (should be lit)
2. Test USB cable
- • Try a different USB cable (must be data cable, not charge-only)
- • Test cable with another device to confirm it works
- • Try different USB port on computer
3. Check for shorts
- • Disconnect all servos from PCA9685
- • Power on system - if it works, you have a short in servo wiring
- • Reconnect servos one at a time to find faulty servo
- • Use multimeter to check for continuity between VCC and GND (should be open)
4. Inspect connections
- • Check all screw terminals are tight
- • Verify barrel jack is fully inserted
- • Look for broken solder joints
- • Ensure no bare wires touching
⚡ Servos Jittering or Buzzing
Symptoms:
- Servos vibrate or twitch when supposed to be stationary
- Audible buzzing noise from servos
- Servos get hot even when not moving
- Erratic movement or failed commands
Possible Causes:
- Insufficient power supply current
- Voltage drop due to thin wires
- Wrong PWM frequency setting
- Mechanical binding or excessive load
- Noisy power supply (poor filtering)
Solutions:
1. Upgrade power supply
- • Use 5V 5A minimum (2A insufficient for multiple servos)
- • For 8 servos, use 5V 10A supply
- • Ensure power supply is regulated (not unregulated wall adapter)
2. Add capacitor
- • Solder 1000µF electrolytic capacitor across V+ and GND near servos
- • Mind polarity: negative leg (shorter, marked stripe) to GND
- • This filters voltage spikes from servo movement
3. Adjust PWM frequency
# In config.py, try different frequencies:
PWM_FREQ = 60 # Default is 50, try 60 or 333
# Re-upload and test4. Use thicker wires
- • Replace servo wires with 20 AWG or thicker
- • Keep power wires short (under 30cm if possible)
- • Use star topology (power supply → PCA9685 → each servo)
🔌 Some Servos Not Working
Symptoms:
- 1-2 servos don't respond to commands
- Other servos work fine
- Problem servos are cold (not receiving power)
Solutions:
1. Check servo connections
- • Verify servo is plugged into correct PCA9685 channel
- • Check connector orientation (signal/power/ground correct order)
- • Try swapping with a working servo to test channel vs servo
2. Test individual servo
# Connect via REPL and test specific channel:
from servo_controller import ServoController
sc = ServoController()
sc.set_angle(3, 90) # Test channel 3 (0-15)3. Check for dead servo
- • Connect suspect servo directly to working channel
- • If still doesn't work, servo may be damaged
- • Replace with spare servo