I2C Mux Support with BME280 Temperature / Humidity Sensor #391
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Would you please consider supporting an TCA9548A I2C 8-channel multiplexer (e.g., SparkFun Qwiic Mux Breakout BOB-16784) in order to enable more than two BME280 temperature / humidity sensors (addresses 0x76 and 0x77)? In addition to an enclosure temperature / humidity sensor, I would like to enable a temperature / humidity sensor corresponding to up to five filament dryers. The mux may (should?) support other I2C temperature / humidity sensors such as SI7021, TMP102 and MCP9808.
The Python syntax is straightforward,
Here's a screen shot of the Dashboard plugin with four BME280 sensors ("Enclosure", "Dryer 1", "Dryer 2", and "Dryer 3" ... all four with address 0x77) and two TMP102 sensors ("Dryer 4" and "Dryer 5" ... both with address 0x48). For this proof of concept, I entered the mux channel number (0x00 - 0x07) as the "high byte" in the sensor address field (e.g., 0x0477). Here's a summary of the changes to BME280.py. Equivalent changes were made to tmp102.py.