Currently I’m working on a project where I want to use multiple scales in a fridge. When something will be taking out of the fridge the scale detects the different weight and send an event to my server. I’m really a noob to I2C and at this moment I can’t figure out why it’s not working…
I’m using a Raspberry Pi 4 Modal B with a pHat attached to the GPIO pins. From there I use a Qwiic cable to connect the bus to a PCA9615. Then I use a 2m S/FTP cable to connect the other PCA9615. Then the signal goes to a TCA9548A to use the bus with 8 different channels. I need the 8 channels because the I2C address of the NAU7802 is 0x2A and is hardware defined. A multiplexer/Mux is required to communicate to multiple NAU7802 sensors on a single bus.
Now the problem that I’m facing is that everything is working correctly when I don’t use the I2C Bus Extender. I see all of my channels and I can change the channel to retrieve the weight of the multiple scales. But when I connect the I2C Bus Extender there is only 1 channel working and the other channels are not available. Is there any solution how to fix this problem?
The red lines are indicating that the connection is not working. I only see 1 NAU7802 when I use the i2cdetect command. Now when I disconnect the red lines but connect the green line, everything is working correctly. But that’s unfortunately not what I want to achieve.
The only thing I can think of that would be causing issues is that you might not be able to push enough current down the CAT5 cable for all the devices on the remote end to work properly.
You might try opening JP1 on the differential board on the remote end and then connecting a 3.3 volt power supply between VDDB and GND and see if that clears things up.
If I use my multimeter I see that GND and VCC1 is giving back 3.29 / 3.30 volts. So maybe it has enough voltage?
You’re suggesting that I should cut the 0-1 jumper. But where can I find the VDDB on my v11 Bus Extender? I can only see the VCC1 / GND and VCC2 / GND2 connectors.
OK, it looks like the newer board is laid out a bit differently. I haven’t tested this, but from what I gather, you need to cut the 0-1 jumper on the board connected to your Pi, and on the remote end, connect 3.3 volts to 3V3 and GND. That provides power to the remote devices without anything going back down the cable.
Unfortunately with the external 3.3v it’s still not working correctly. I’ve cut the 0-1 jumper on the PCA9615 that is connected to the Raspberry Pi. The S/FTP cable is connected to the other PCA9615 and there the power indicator is still off. So that is a good thing, because the 0-1 cut is working.
Then I connect 3.3v to the PCA9615 and I see that the power indicator is on. After that I do a test to see if I can see all NAU7802 boards that are connected to the TCA9548A. None of them are showing when I do the i2cdetect command:
I’ve tried to connect a I2C device with a different address. Now I see the LCD screen connected. I’m really confused, now it looks like a problem with the NAU7802?
Did you ever figure this out? I’m running into a similar situation, but from what I can tell, the problem comes when I attempt to switch ports on the multiplexer. The act of telling the multiplexer to select new pins seems to cause the Endpoint to get confused and cease to function.