i2cdetect not picking up both ADC chips
The ADC Pi is an Analogue to Digital converter for the Raspberry Pi
14/04/2016
Posted by:
ronny@thears.net
14/04/2016
Posted by:
andrew
When you do a hard reset are you disconnecting the 5V and ground pins or just the 5V? We have found on our test rig that if you connect the ADC Pi 5V pin before the ground pin then for some reason one of the ADC chips will not be detected on the I2C bus. This doesn't happen every time, probably one in every 500 boards and seems to be a bit random. This is the first time we have heard about it happening to one of our boards out in the wild.
The only thing I can think of is if the ground pin is not connected before 5V is applied then the power back feeds down the I2C pins instead of through ground and causes the ADC chip to stop responding. It only ever does this on the second ADC U3 which by default has the address 0x69. One of the address pins on this chip is floating so it could possibly be a problem that if the power isn't applied correctly the chip gets confused by the floating address pin.
One possible workaround for this would be to set the address from 0x69 to 0x6A which would mean pulling the Adr 1 address pin high by connecting it to 5V. If you look at our ADC Pi page it shows how to set different I2C addresses or use the image below.
If you don't have a spare jumper then you can just solder a bit of wire between the pins.
Hopefully setting the address to be something other than floating will stop the ADC from getting confused and will show the correct I2C address.
17/04/2016
Posted by:
ronny@thears.net
17/04/2016
Posted by:
andrew
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.