Adafruit
Adafruit USB Host BFF for QT Py or Xiao with MAX3421E
· MPN: ADA5956
The Adafruit USB Host BFF adds a USB Host port to your QT Py or Xiao microcontroller, letting you connect keyboards, mice, USB drives, and other standard USB...
Get notified when back in stock
The Adafruit USB Host BFF adds a USB Host port to your QT Py or Xiao microcontroller, letting you connect keyboards, mice, USB drives, and other standard USB peripherals to your tiny project. It uses the MAX3421E USB Host chip, communicating over SPI with an IRQ pin.
With driver support through the TinyUSB Arduino library (recommended for RP2040, ESP32-S2/S3, nRF52840, SAMD21/51) or the USB Host Shield 2.0 library (AVR, nRF52, ESP32), you can integrate a wide range of USB devices into your projects.
Key Features
- MAX3421E USB Host Chip – Proven SPI-based USB Host controller
- Micro-B OTG Connector – Compact USB host port (use an OTG adapter for Type-A devices)
- 5V Power Switching – P-FET for toggling host power on/off via A0 pin or MAX3421E GPIO
- BFF Form Factor – Plugs directly onto the back of any QT Py or Xiao board
- SPI Interface – Uses SPI plus IRQ pin for communication
- HID & Mass Storage – Works with keyboards, mice, game controllers, and USB drives
Compatible Chips
- TinyUSB Library – RP2040, ESP32-S2, ESP32-S3, nRF52840, SAMD21, SAMD51
- USB Host Shield 2.0 Library – AVR, nRF52, ESP32
Ideal For
- Adding keyboard or mouse input to QT Py/Xiao projects
- USB mass storage reading and writing
- HID device integration in compact form factors
- USB peripheral interfacing for IoT and embedded projects
Package Contents
- 1× Adafruit USB Host BFF with MAX3421E
- 1× Header strip for soldering
Resources
Jargon buster
Plain-language definitions for the technical terms used above.
- AVR
- AVR is a family of 8-bit microcontrollers (made by Microchip, formerly Atmel) used in many classic Arduino-style boards such as the Uno and Nano. They are widely supported but older, which can be a limit for memory- or speed-intensive tasks.
- ESP32
- ESP32 is a family of low-cost microcontroller chips and modules from Espressif with built-in WiFi and Bluetooth. They support programmable firmware and over-the-air updates, and are commonly programmed with toolchains such as the Arduino core and ESP-IDF.
- GPIO
- General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
- HID
- Human Interface Device is a USB device class used for keyboards, mice, gamepads and similar controls. If a board supports HID over USB, it can act like an input device to a computer without needing a custom driver.
- IoT
- Short for Internet of Things, meaning physical devices that connect to networks or the internet to send data or be controlled remotely. It matters if you want projects such as connected sensors, remote controls or classroom data-logging activities.
- IRQ
- IRQ (interrupt request) is a signal line a device uses to alert a microcontroller that something needs attention, so the microcontroller does not have to poll continuously. Wiring an IRQ pin to a free input lets code respond promptly to events such as new data being ready.
- MAX3421E
- The MAX3421E is a chip that adds USB host controller hardware to a microcontroller project. It matters because it handles much of the low-level USB communication, but it also limits the board to the speeds and device support that this controller and its software libraries can provide.
- microcontroller
- A microcontroller is a small computer on a single chip that runs a stored program and controls connected inputs and outputs such as buttons, sensors, displays and communication interfaces. In a device built around one, it is the part that executes the code and coordinates the device's behaviour.
- nRF52840
- The nRF52840 is a Nordic Semiconductor system-on-chip built around a 32-bit Arm Cortex-M4 processor, with built-in Bluetooth Low Energy and native USB. It is widely used in maker and wearable boards, where it offers BLE and USB support along with broad library coverage in common maker toolchains.
- RP2040
- The RP2040 is a dual-core Arm Cortex-M0+ microcontroller chip from Raspberry Pi, used on many maker boards and offering programmable I/O, multiple GPIO pins and reasonable processing speed. Code and accessories built for that chip should work where RP2040 compatibility is listed, though demanding tasks such as reading a camera can require careful pin allocation and timing.
- SAMD21
- The SAMD21 is a Microchip (formerly Atmel) 32-bit Arm Cortex-M0+ microcontroller used in many Arduino-compatible boards. The exact chip affects which libraries, clock speeds and peripheral features are available, so software needs to support the SAMD21 specifically.
- SAMD51
- A family of 32-bit ARM Cortex-M4 microcontroller chips from Microchip, often used to run the main program on a development board. When a board is built around a SAMD51 it generally offers more speed and memory than basic 8-bit microcontrollers, which helps with demanding tasks such as graphics, audio or fast data handling.
- Shield
- An add-on board that plugs into a main controller board to give it extra features such as sensing, motor control or communication. Knowing a product supports shields helps you judge whether it can connect neatly into an existing maker-board setup.
- SPI
- A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
- TinyUSB
- TinyUSB is an open-source USB software library used on many microcontroller boards. For a USB host product, library support is important because the hardware alone is not enough; your mainboard must have software that knows how to talk to the USB devices you want to use.
- USB host
- A USB host is the side of a USB connection that controls attached devices, like a computer talking to a keyboard or flash drive. This matters because most microcontroller boards are normally USB devices, so adding USB host support lets them use common USB peripherals.
- USB mass storage
- USB mass storage is the standard USB device class used by many flash drives and external storage devices. If a board supports it, your project may be able to read and write files on compatible USB storage, provided the software library also supports the device.
Find this product in
Brands
Microcontrollers
Prototyping & Wiring