This is not your problem but I would be cautious with QIFEI branded ADS1115. I bought two from different UK eBay resellers in 2020 and both had the same bizarre fault, they are 12-bit but with upper 4 bits fixed at 0 and the i2c communication at 100kHz is unreliable. More detail in Adafruit Forums: Strange Case of Adafruit ADS1115 and QIFEI ADS1115.
How can Rpi Pico Micropython Talk To I2C LCD SSD1306?
/ to continue, ...
I found the 0.91" OLED a bit tricky to detect. I need to make the the wiring short, not to load two or more devices. I also found I2C Bus 1 better than Bus 1. Anyway, I used Tom's Hardware's short program and found it OK, though not ...
It's a wiring problem.
You have something pulling the SDA line to ground. This makes it appear that a device is present at every address.
The test you have run confirms that GPIO2 has been destroyed. Presumably 9V has found its way to GPIO2 from the audio module. A possibility is there is a pull-up on the module to Vcc. Anyhow, you need a new Pi. If you ...
It means you need to bridge the gap between the two metal pads of AD0 and / or AD1. Normally you would do that with a little blob of solder.
If you bridge the two pads of AD0 you add 1 to the address, if you bridge the gap of AD1 you add 2. If you do both you add 3 to the address.
Yes, you can use smbus to talk to your I2C devices rather than using the busio and/or board modules.
Personally I would always use smbus for control unless the underlying device being controlled is very complex.
If you use smbus you can more easily port the code to a different board and more easily tailor the code to your own needs. The ...
How to use python packages with importing "busio" and "board"?
Well I guess you are using modules/boards/HATs from AdaFruit. For a particular modules, eg temperature sensor, AdaFruit has different version for different MCU and SBC, say M0, Arduino, and Rpi.
If you are using a Rpi compatible module, then your ...