Are these knock-off boards from AliExpress or Temu any good ?
Or better to pay a little more for genuine stuff
The Uno does not have an I2C address when you run your sketch but if the scanner found a device a 0x40 then it is almost certainly the PCA9685
Your problem is almost certainly power related. Power the servos from your external supply using the screw connectors and power the PCA9685 from 5V and GND on the Uno. That is what I did and it works
As a matter of interest, are any LEDs of the PCA turned on when you power it as you describe ?
That's exactly how mine is powered up
Let's try something naughty
- Disconnect the external power supply from the PCA
- Disconnect all but one of the servos from the PCA and leave that one on channel 0
- Make sure that the servo can move freely so that there is no load on it
- Connect the V+ pin at the end of the PCA to 5V on the Uno
- Run the sketch that you posted
This is naughty because the servo is being powered from the Uno, which is not desirable, but I would be interested in knowing the outcome
If the servo sweeps as it should then remove power from the Uno after a few sweeps as we don't want to damage the Uno by having it supply too much current. Having said that, I have never had a servo cause a problem to an Arduino board when powered this way for testing but it is not a long term solution
Yep it works
So the PCA board, Uno and connections/communications between them are OK
Go back to your external supply. Don't forget to disconnect v+ from the Uno, and measure the voltage between the 5V and GND pins on the servo connectors. What do you see ?
My power is the issue. It would appear that voltage is there and showing correct voltage, but it's only putting out 100 milliamps. It's rated and adjustable for 10 amps. So I've just gone out and purchased a new one online. Hopefully in a few days it arrives. Many thanks to UKHeliBob. Solved all the issues. Cheers from myself and my daughter. It's great to be a part of a very good forum. All the best
You are welcome and thanks for the feedback
Best wishes to you and your daughter with this and future projects
If the output voltage is correct and you only have 100mA of load current, then your power supply is okay.
It is your load, your circuit not consuming enough current.
Get out a pen(cil), paper and ruler and DRAW your circuit, REVERSE engineer your project.
Tom....
![]()
There is no issue with the circuit. Proven already by suppling power via the Arduino 5 volts Pin to VCC on the PWM9685 and running each of the servo's one at a time with the code for the Program it's running as a 5 DOF Robotic arm
I believe that you mean by suppling power via the Arduino 5 volts Pin to V+ on the PCA9685
No
That naughty test you suggested this morning, and I replied yes it works with that setup.
Your post at #46
V+ Correct my typo error
There is something else that you could try which is equally naughty. Instead of powering the servo by connecting Uno 5V to the V+ pin connect it to the positive screw terminal
Same rules apply as for the previous test, ie make sure that the single servo can move freely and don't leave it running for more than a couple of sweeps if it works

