Adafruit
Adafruit QT Py CH32V203 Dev Board with STEMMA QT
· MPN: ADA5996
The Adafruit QT Py CH32V203 is a tiny development board built around the WCH CH32V203G6 — a low-cost RISC-V microcontroller running at up to 144 MHz. In the ...
Get notified when back in stock
The Adafruit QT Py CH32V203 is a tiny development board built around the WCH CH32V203G6 — a low-cost RISC-V microcontroller running at up to 144 MHz. In the compact QT Py form factor (Seeed Xiao compatible), it packs USB-C, a STEMMA QT connector, an RGB NeoPixel, and 10 GPIO pins into a board small enough to embed anywhere.
The CH32V203G6 features a single 32-bit RISC-V core with 1-cycle multiply/divide, 10 KB SRAM, 32 KB single-cycle flash, and an additional 224 KB of XIP flash for program or data storage. It includes ADC, timers, USB device, UART, I2C, and SPI peripherals. A reset button and bootloader button let you upload code over USB without needing an external SWD programmer.
Key Features
- CH32V203G6 RISC-V Core – 144 MHz, 32-bit with 1-cycle multiply/divide
- 32 KB + 224 KB Flash – 32 KB single-cycle flash plus 224 KB XIP flash for program/data
- 10 KB SRAM – On-chip memory
- USB-C Connector – Native USB device support; upload code over USB
- STEMMA QT / Qwiic Connector – Plug-and-play I2C for sensors and accessories
- RGB NeoPixel LED – Built-in addressable LED
- 10 GPIO Pins – ADC on all pins, plus hardware UART, SPI, and I2C
- 3.3 V Regulator – AP2112 with 600 mA peak output
- Reset & Bootloader Buttons – Enter USB ROM bootloader without external programmer
- Seeed Xiao Compatible – Same size and pinout with castellated pads for surface mounting
- SWD Pads – On the bottom for advanced debugging
Also Consider
- QT Py RP2040 – Dual-core ARM Cortex-M0+ with CircuitPython support
- QT Py ESP32-S2 – Wi-Fi enabled with CircuitPython and Arduino support
- QT Py ESP32-S3 – Wi-Fi + BLE with 2 MB PSRAM
- QT Py SAMD21 – ARM Cortex-M0+ with full CircuitPython support
Ideal For
- Exploring the RISC-V CH32 ecosystem
- Low-cost USB device projects
- Compact embedded designs with castellated pads
- Developers comfortable with Makefiles and command-line toolchains
Resources
Jargon buster
Plain-language definitions for the technical terms used above.
- ADC
- An analogue-to-digital converter reads a changing voltage and turns it into a number the microcontroller can use. It matters when connecting analogue sensors such as light, sound, or variable-resistor sensors.
- BLE
- BLE stands for Bluetooth Low Energy, a Bluetooth mode designed for low power use and broad compatibility with modern phones and computers. It connects well to battery-powered and mobile devices, including Apple hardware, though it behaves differently from Bluetooth Classic and its serial-style profiles.
- Bootloader
- Small starter software on a microcontroller that lets new code be uploaded before the main program runs. Knowing how to enter bootloader mode matters when you need to program the board or recover it after a faulty sketch.
- CircuitPython
- A beginner-friendly version of Python designed to run directly on microcontroller boards. If a product supports CircuitPython, you can often program it by copying code files onto the board rather than setting up a more complex toolchain.
- 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.
- I2C
- I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
- LED
- A light-emitting diode (LED) is a small electronic component that emits light when current flows through it in the correct direction. Because it only conducts one way, its polarity matters, and a through-hole LED must be soldered the correct way around to light up.
- 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.
- MicroPython
- A version of the Python programming language made to run on microcontrollers. It matters because it lets beginners write readable code to control LEDs, sensors, motors and displays without needing to start with lower-level languages.
- native USB
- Native USB means the microcontroller itself handles USB communication, rather than using a separate USB-to-serial chip. This matters for programming, debugging, and projects that need the board to act directly as a USB device.
- NeoPixel
- A type of addressable LED system where colour data is sent along a single digital data line from one LED or controller to the next. Compatibility matters because the timing and signal format must match for the lights or driver board to respond correctly.
- Qwiic
- Qwiic is a plug-in connector system for I2C devices that uses small 4-pin cables, so you can connect compatible sensors without soldering. It matters because your controller or adapter also needs Qwiic, or you will need a cable or breakout to wire it up.
- RGB
- Short for red, green and blue, the three primary colours of light that are mixed in varying amounts to make a wide range of colours. In electronics RGB can refer to an LED or pixel that blends these three colours, or to a colour signal or interface that carries separate red, green and blue channels.
- RISC-V
- RISC-V is an open, royalty-free processor instruction-set architecture used in chips ranging from tiny microcontrollers to Linux-capable application processors. The choice of RISC-V determines which compilers, software tools, and performance or low-power features are available, separate from the more common Arm or x86 architectures.
- 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.
- SRAM
- Fast temporary memory used by a processor while a program is running. More SRAM helps with projects that handle larger data buffers, networking, displays, or more complex code.
- STEMMA
- A plug-and-cable connection system used on some maker electronics boards to make wiring simpler. If a product uses STEMMA, you need the matching cable or connector type to plug it in without soldering.
- STEMMA QT
- A small plug-in connector system for I2C boards that lets you connect compatible sensors and controllers without soldering. It matters because it can make wiring faster and less error-prone, especially when adding several small modules to a project.
- SWD
- Serial Wire Debug (SWD) is a two-wire programming and debugging interface used with many ARM Cortex-M microcontrollers. It provides low-level access to program, recover or debug the microcontroller.
- UART
- UART is a simple asynchronous serial interface that sends data over separate transmit and receive wires, usually labelled TX and RX, with both ends set to the same baud rate. It is a common way for microcontrollers and other serial devices to exchange data.
- USB-C
- USB-C is a small, reversible USB connector that can carry power, data and, on some devices, video over a single cable. The same connector can range from charging only to high-speed data, so the functions a given port actually supports vary.
Find this product in
adafruit qt py ch32v203
Document · 3.4 MB · Click any page to view full size
AP2112
Document · 737.6 KB · Click any page to view full size
Resources & Downloads
Guides, code examples, and more
Related Tutorials
Free guides on learn.littlebird.com.au