The latest raspbian kernel support the creation of multiple I2C busses using GPIO pins.
See also in GitHub.
This allows you to define additional SMBus objects:
import smbus bus3 = smbus.SMBus(3) #Aditional 12c bus, configured in config.txt bus4 = smbus.SMBus(4) #Aditional 12c bus, configured in config.txt
by adding "the following lines to your config.txt file"
Here two new pairs of GPIO pins are given sda and scl functions, so even if you have several I2C devices that use the same address, you can connect them all to your GPIO without an additional hardware multiplexer, or without using i2c bitbanging with pigpio, thought pigpio bitbanging the various kinds of communication is really useful once you start to use it.
Question: How can one check one's Pi 3's "Raspbian kernel" to see if it will support this? Is there a particular version number where this support started? Has this support been announced and documented somewhere where I can read further?