I've recently bought a SI5351A I2C breakout board on Aliexpress (This listing) for a project. I was trying to test the board using a simple breadboard, a couple of jumper wires and my raspberry pi 3 (running raspbian buster).
The problem I have is that for some reason the I2C device is not detected when I run i2cdetect. I've enabled i2c in the pi configuration and can see bus 1 listed in /dev, below is the output:
pi@raspberrypi:~ $ sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
pi@raspberrypi:~ $ ls /dev/i2c*
/dev/i2c-1
pi@raspberrypi:~ $ lsmod | grep i2c
i2c_bcm2835 16384 0
i2c_dev 20480 0
i2c_bcm2708 16384 0
pi@raspberrypi:~ $
I've successfully tested the continuity of all the pins on the breakout board using my multimeter to make sure I soldered everything correctly.
I've also checked the voltage of the VIN pin and I get 3.3V as expected.
I've driven the SCL and SDA pins from high to low and low to high every second using a simple python gpiozero script and I do see my multimeter fluctuating between ~3.3V and ~0V
I also see some activity on SDA and SCL when I run i2cdetect.
I've been following the following tutorial to get everything hooked up properly:
Adafruit SI5351 I2C Clock generator Tutorial
My board isn't adafruit branded but it's the exact same thing every inputs and outputs are in the same position and the board as the exact same layout.
Here are my connections:
At this point I am at my wit's end, I have no idea how to troubleshoot further, I've tested this on 2 different PI 3 and 2 different breakout board and I always get the same result. Did I buy a faulty component?
Now I am not an electrical engineer I'm a software guy taking my first steps in the wonderful word of electronics so please forgive me if something is so painfully obvious and I haven't seen it.
Edit: I've bought a Adafruit branded component, it was more expensive but at least it worked right out of the box.
I've tried to read/dump registers on the Aliexpress component as suggested from both addresses 0x60 and 0x61 and I get a read error so I think it's time for me to get a refund.
pi@raspberrypi:~ $ sudo i2cdump 1 0x60
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
10: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
20: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
30: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
40: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
50: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
60: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
70: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
80: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
90: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
a0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
b0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
c0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
d0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
e0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
f0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX
pi@raspberrypi:~ $ sudo i2cget 1 0x60 0x03
Error: Read failed