Flash a XIAO ESP32-S3.

Install the Printercow firmware from this page. You need Chrome or Edge on a computer and a USB-C data cable; nothing gets installed on the computer.

  1. 01Plug the XIAO into this computer with a USB-C data cable.
  2. 02Press Install and pick the XIAO's serial port (on most systems "USB JTAG/serial debug unit").
  3. 03Choose Erase device for a new board, then wait about a minute.
  4. 04When the LED blinks slowly, set it up over Bluetooth.
Then

Set it up like any dongle.

Create a workspace and add the XIAO over Bluetooth. After that, plug in the OTG adapter, the charger and your device. The guide has the parts list and what to do when something does not show up.

Firmware 0.4.7

What gets installed.

The same firmware the Printercow dongle runs, built for the XIAO. It reports itself as XIAO-ESP32-S3 and only accepts signed updates made for that board.

OffsetFileSizeSHA-256
0x0bootloader.bin20 KB11e0d446204ff66d7fa903f50b3db73d07ac4b504832e2a7435f2d55b6d3d588
0x8000partitions.bin3 KB1d9cca96de0fe07ad7fc0648b9878ddecd9ce565e38b589ad20fea698ed4c80c
0xe000boot_app0.bin8 KBf94c5d786a7a8fab06ac5d10e33bf37711a6697636dc037559ea19cc410a17f0
0x10000firmware.bin1.4 MBc19f8f4674da5200123f38f2cc2c203a64949bf0a359ea286fc222993bb93f39

Rather use esptool?

Download the four files and SHA256SUMS into one folder, then run this there. Hold B while plugging the XIAO in if esptool cannot connect.

[ .SH ]
 1  sha256sum -c SHA256SUMS
 2  esptool --chip esp32s3 write-flash 0x0 bootloader.bin 0x8000 partitions.bin 0xe000 boot_app0.bin 0x10000 firmware.bin

Built on the Arduino core for ESP32 (LGPL-2.1), ESP-IDF (Apache-2.0), ArduinoJson (MIT) and PubSubClient (MIT). The installer is ESP Web Tools (Apache-2.0).