Overview
USB sensor hubs are multi-sensor devices that connect to your Raspberry Pi via USB. Each hub contains multiple independent sensor ports, allowing you to connect several sensors through a single USB cable. The hub uses a manifest protocol to identify itself and report which sensors are connected to each port.
This is useful when you need many sensors in a compact form factor, or when you've run out of I2C addresses on the Pi's built-in bus (since each hub port is an independent I2C bus via a TCA9548A multiplexer).
How It Works
- Plug in the hub — Connect the USB sensor hub to any available USB port on your Pi.
- Peripheral scan detects it — The Pi's peripheral scan automatically detects the hub on its serial port (typically /dev/ttyACM0).
- Manifest protocol — The hub sends a JSON manifest describing its firmware version and each port's connected sensor (matched to parts library IDs).
- Sensors appear in the Configurator — Detected sensors show up in the Discovered Devices panel, ready to add to your configuration.
Sensor Port Independence
Each port on the hub operates as an independent I2C bus through a TCA9548A I2C multiplexer chip. This eliminates I2C address conflicts — you can connect multiple sensors that share the same I2C address (for example, three BME280 sensors at 0x76) by placing each on a different hub port.
Adding Hub Sensors to Your Configuration
After the peripheral scan detects a USB hub:
- Open the Configurator and start or edit a draft.
- In the parts picker, hub-detected sensors appear with a USB icon and their port number.
- Add them like any other sensor — they appear in your parts list with their hub port noted.
- Configure and wire them normally. The flow generator handles the hub's port routing automatically.
Troubleshooting
Hub not detected after plugging in:
- Run a new peripheral scan from the dashboard (Settings > Device > Scan Peripherals).
- Check that the hub's USB cable is firmly seated. Try a different USB port.
- Verify the hub firmware is compatible by checking the manifest version in the scan results.
Port shows no sensor but a sensor is connected:
- Ensure the sensor is fully seated in the hub port's connector.
- Some sensors require a brief warm-up period after connection. Wait 10 seconds and re-scan.
I2C address still conflicts:
- This should not happen with hub ports (each is an independent bus). If it does, check that the hub firmware is up to date.
Related Documentation
- Connecting Sensors — General sensor setup guide
- Adding Rooms and Parts — Adding parts to configurations
- Device Offline — General device connectivity troubleshooting