Support Forum

Share your projects and post your questions

Register   or   Sign In
The Forum

extraneous address detected when ServoPi plugged into system

1389 Views - Created 11/02/2019

11/02/2019

Posted by:
sbrooke

sbrooke Avatar

using sudo i2cdetect -y 1, and the ServoPi plugged in, I see addresses 0x40 and 0x70. If I change the ServoPi address to 0x41, then I see 0x41 and 0x70. With no board, no address are identified as expected.

When S/W communicates with the ServoPi, it halts after 5 or 6 i2c writes. Afterwards, neither address 0x40 and 0x70 are detected and the system needs to be power cycled to detect the addresses again. I suspect the extraneous address is the problem.

I also have the ADC Differential Pi and it behaves as expected with no extraneous address.

Does the problem indicate a suspect PCA9685?

Raspberry Pi 3B, programming in Geany C++

12/02/2019

Posted by:
andrew

andrew Avatar

Location:
United Kingdom

andrew Twitter  andrew Website  

The 0x70 address on the PCA9685 is used as an All Call address which allows the user to send commands to several devices simultaneously using the same I2C address. You can find more about how the All Call address works in the PCA9685 datasheet on page 25. The All Call address shouldn't be causing any issues with I2C communication as it is enabled by default on all PCA9685 devices.

One common cause for the Servo Pi I2C bus locking is when two programs try to access the I2C bus at the same time. Do you have any other programs running on your Raspberry Pi that are accessing the I2C bus?

Another cause for the Servo Pi to stop responding is if there is a power drop in the supply voltage. Are you using a common power supply for the Raspberry Pi and Servo Pi or are they separate?

Can you try running the demo_pwm.py script in our Python library and see if that causes the I2C bus to lock? That will allow you to determine if the fault is hardware or software related.

13/02/2019

Posted by:
sbrooke

sbrooke Avatar

I hang my head in shame. I missed that I needed to provide +5V to the 9685. My first read through I thought that it was referring to the +5V rail on the I/O pins only. Apparent functionality and the address issue lead me to believe that the basics were taken care of. I bridged the power link and all is good. Thanks also for the info about the Call address.

Sign in to post your reply

Note: documents in Portable Document Format (PDF) require Adobe Acrobat Reader 5.0 or higher to view, download Adobe Acrobat Reader or other PDF reading software for your computer or mobile device.