Crowd Supply Programmable USB Hubs

Crowd Supply Programmable USB Hubs are 4-port USB 2 high-speed hubs designed with per-port power and data disconnects, dev boards, I2C, GPIO, and SPI bridges. These USB hubs are built with CircuitPython based development board and offer 6A of 5V power to downstream devices. The hubs provide 13mA resolution monitoring (per-port) and act as a flexible embedded electronics test and development tool. The USB data pairs are individually switchable that allows emulating device removal and insertion via software. These mountable programmable USB hubs come with open-source python drivers on the upstream host and python firmware on internal MCU. This allows the behavior of the USB hubs to be easily changed to suit the user application and environment.


  • USB high-speed hub:
    • 4x USB high-speed (480mbps) downstream ports
    • 1x USB high-speed (480mbps) upstream ports
    • 5th endpoint on USB hub exposes I2C, SPI, UART, and 2x GPIO
    • Data lines to each USB port can be disconnected via software commands. This allows errant USB devices to be "unplugged" virtually and re-enumerated
    • USB digital signals can be boosted to help drive long cables
  • Power monitoring and control:
    • 5V power on each downstream port can be individually turned on and off
    • Monitor the power consumed by each port at up to 200Hz at a resolution of 13mA
    • Adjustable (per-port) current limits between 0.5A and 2.6A
    • Onboard regulator supports 12V to 24V power input and generates 6A of 5V power for downstream USB devices; both voltages can be monitored by the internal MCU. No power is drawn from the upstream USB port
    • Input power is protected from over-voltage events and reverse-polarity connection
  • Physical IO:
    • mikroBUS header to add additional sensors and connectivity. Solder jumpers allow the UART and SPI pins to connect to either the USB hub or the MCU
    • JST GH connector with UART and 2x GPIO, controlled by the USB hub
    • 2x Sparkfun Qwiic connectors enable easy attachment of I2C sensors to the USB hub or to the internal MCU
    • 5x RGB status LEDs to visualize port power draw
    • 5x RGB status LEDs to visualize port connection types


Published: 2020-01-23 | Updated: 2022-03-10