REQ: Power Delivery Board for XIAO

I just built my first Arduino project and chose the XIAO because it was extremely inexpensive, extremely tiny, fully Arduino compatible, and has built-in USB-C for both power and data. I was quite surprised to discover that I could both control and power a small string of ARGB LEDs with only just the XIAO. It’s the perfect all-in-one Arduino package.
Almost.

XIAO advantages

  • USB-C for both data and power
  • 5v and 3.3v pins can provide (limited) power to controlled devices or sensors
    This means that smaller projects can have a single USB-C port that powers the project but which can also be used for program updates, even after “sealing” the project inside a case. This also simplifies development as you can power your arduino-controlled devices while you upload code changes.

XIAO limitations:

  • The XIAO has a USB-C connector, but is wired for USB 2.0 without any USB 3 Power Delivery negotiation.
  • The XIAO schematic limits the power output on the 5v pin to ~500ma and on the 3.3v pin to ~200ma.
  • The output current limitations of SAMD-21, nRF52840, etc restrict I/O current to ~10-15ma.
    This means for any project with more than a handful of LEDs, or with any servos or relays, you need to wire in an external power supply.

For example, this means I can run a string of 10 ARGB LEDs off the XIAO’s 5v pin, but only at about 50% brightness. But what if there was a way to power an entire string of LEDs, or even 12v LEDs, as well as the XIAO, while I program it - all over a single USB-C cable?

What I would like to see is a USB-C power delivery expansion board for the XIAO. I see this board as having the following features:

  • Small form factor, comparable in total size to the XIAO
  • Its own USB-C input
  • USB-C 5v output to the XIAO
  • USB-C data pass-through to the XIAO
  • I/O interface for all XIAO pins, with one dedicated as a PD control pin
  • Dedicated PD V-OUT and GND pins

What I envision is a tiny board about the size of the XIAO that can snap onto the XIAO, plug into the XIAO’s USB-C, and then plug in to a power supply or my computer via its own USB-C. I could program the XIAO as normal, except that one of the XIAO pins would be dedicated to controlling the PD signal. I could then program the XIAO to request a particular voltage from this expansion board, allowing me to control and power 5v/9v/12v/15v/20v devices from a single USB-C charger without wiring in a separate power brick.

Ideally, I’d like to see a “XIAO version 2” that has built-in PD negotiation and a pair of PD pins for powering various loads. But building a separate PD negotiation board that can pass-through 5v & USB data to the XIAO is a next-best-thing.

2 Likes

I can’t agree enough. I’d rather see this onboard than as an expansion board. Like you can select the voltage to request from the usb c cable and whether or not to fall back to lower voltages either in software or via jumpers, and then get it on the pin currently used for 5v.

This would open up a huge number of applications for which the XIAO is plenty powerful enough. Stepper motors no hot ends would be very easy to work with whether for ioT (think tasmota powered mini blinds os the ESP32 model) or 3d printing with only a single usbc cable running to the hot end he controlling everything there.