Author Topic: PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.  (Read 612 times)

0 Members and 1 Guest are viewing this topic.

Offline ToffeTopic starter

  • Newbie
  • Posts: 9
  • Country: no
PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.
« on: September 25, 2021, 10:43:29 pm »
Hi

I have a PCA9685PW LED Driver which I'm going to use to drive 5V PWM servos and speed controllers (RC). I am going to use a Raspberry PI which has 3v3 logic level. Since I have multiple other 3v3 only components I thought I'd drive the PWM controller at 3V3 aswell.

Question 1:

If I supply 3v3 to the chip, will the PWM signal also be 3v3? And will that work with the servos? I am guessing the "high" level is above a certain default threshold for PWM so it should be ok? But anyone know or can confirm? The servos and speed controllers will be connected to an external 5V source with common ground.

Question 2:

Is it so that it only draws 10mA? I see the Raspberry Pi has 500mA available for the 3v3 line and it seems like this PCA only draws 10mA ? Or am I missing something in the datasheet (e.g. does each pwm output also draw something?). I see something about 400mA which blows the budget since I have a few other components connected. But I dont understand how or where? :)

Datasheet: https://cdn-shop.adafruit.com/datasheets/PCA9685.pdf
 

Offline Manul

  • Super Contributor
  • ***
  • Posts: 1109
  • Country: lt
Re: PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.
« Reply #1 on: September 26, 2021, 11:04:41 pm »
I have a PCA9685PW LED Driver which I'm going to use to drive 5V PWM servos and speed controllers (RC).

Be aware, that current capability of PCA9685PW output is 25mA sink and 10mA source, so not much. Also it migh be sensitive to inductive loads and get damaged. Driving servos by using LED PWM driver? You mean directly driving servo motors? How you came up with such idea? Given some aditional circuitry it can be done, but it is a bit weird decision.

If I supply 3v3 to the chip, will the PWM signal also be 3v3?

Yes. Input logic and PWM outputs are driven from same supply.

Is it so that it only draws 10mA?

That is what chip uses for its own internal functioning (quiescent current). If you take current from it's outputs that of course adds up and the total will be more. If 16 outputs all source 10mA then it will be 16 * 10mA + 10mA (quiescent current) = 170mA total approximately.
 

Offline ToffeTopic starter

  • Newbie
  • Posts: 9
  • Country: no
Re: PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.
« Reply #2 on: September 28, 2021, 07:21:22 pm »
Hi

Thanks Manul!

LED Driver is also used for PWM in many controllers e.t.c. Not sure why it should not be used for Servos e.t.c. The reason I found it is that Adafruit has a PWM servo board to control "16 servos". I've also prototyped it with 5V to run servo's and speed controllers to control a RC car and plane. So I think it is used for PWM driver aswell.

You say it can "sink 25mA" and source 10mA * 16. I tried to google it but will do some more but I dont really understand it. If it is 170mA total it can draw from the 3v3 source then it is no problem. I have 500mA available. (Raspberry Pi 3V3 hat I'm building).

Also another question: The input logic and pwm output are driven from the same supply. Will the 5V servos be able to understand it? I guess 3v3 high and 0v low should work for most? If not I can put in 5V on it and add a 3v3 level converter for the I2C to work with the PI.
 

Online Ian.M

  • Super Contributor
  • ***
  • Posts: 12856
Re: PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.
« Reply #3 on: September 28, 2021, 08:46:52 pm »
A RC servo is very different from an industrial servomotor.  The former is a compact module consisting of motor, gearbox, position sensor, and electronics usually with a Futaba compatible 1ms - 2ms pulse control signal, whereas the latter consists of a low inertia motor, tacho generator, and usually an encoder all on the same shaft, with a completely separate servo controller.

The PCA9695 output levels are determined by its supply voltage, and as 3.3V pulses may not work with all RC servos, it would be preferable to run it with 5V supply and level shift the two I2C input signals rather than having to level shift 16 output channels.
 
The following users thanked this post: Manul

Offline Manul

  • Super Contributor
  • ***
  • Posts: 1109
  • Country: lt
Re: PCA9685PW - 3V3 Power supply (& i2c) but 5V consumers.
« Reply #4 on: September 28, 2021, 11:51:05 pm »
LED Driver is also used for PWM in many controllers e.t.c. Not sure why it should not be used for Servos e.t.c. The reason I found it is that Adafruit has a PWM servo board to control "16 servos". I've also prototyped it with 5V to run servo's and speed controllers to control a RC car and plane. So I think it is used for PWM driver aswell.

Nevermind, I imagined something really different. All is well.

You say it can "sink 25mA" and source 10mA * 16. I tried to google it but will do some more but I dont really understand it. If it is 170mA total it can draw from the 3v3 source then it is no problem. I have 500mA available. (Raspberry Pi 3V3 hat I'm building).

170mA is maximum, if all outputs source max current as per datasheet. In your application, if the ouputs will only be driving input logic of the servos, then you should expect way less (10-15mA?).

Also another question: The input logic and pwm output are driven from the same supply. Will the 5V servos be able to understand it? I guess 3v3 high and 0v low should work for most? If not I can put in 5V on it and add a 3v3 level converter for the I2C to work with the PI.

3.3V levels will be very marginal if your servos expect 5V levels. It might work or not. Or work "sometimes" which is the worst.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf