All News | Boards | Chips | Devices | Software | LinuxDevices.com Archive | About | Contact | Subscribe
Follow LinuxGizmos:
Twitter Facebook Pinterest RSS feed
*   get email updates   *

Comu Fits a 144MHz CH32V203 RISC-V Board Inside a USB-A Port

Aug 5, 2026 — by Giorgio Mendoza 669 views

Tindie recently listed Comu, a compact development board built around the WCH CH32V203 RISC-V microcontroller. Measuring 13 × 9.4mm, the board fits inside a USB-A port and combines programmable touch controls, LEDs, USB device support, and access to several GPIO signals.

The CH32V203 operates at up to 144MHz using its internal oscillator and provides 224KB of application flash, 24KB of boot flash, and 20KB of SRAM. Other integrated features include a 12-bit ADC, DMA controller, touch-sensing hardware, and a full-speed USB peripheral.

— ADVERTISEMENT —



CH32V203 block diagram
(click image to enlarge)

Comu includes four capacitive-touch inputs formed along the castellated board edges, along with two white LEDs. Six additional GPIO pins are exposed through test pads, allowing the board to be incorporated into other hardware or used for compact embedded experiments.

The board connects directly to a USB-A port and can operate as a USB Human Interface Device. Suggested applications include keyboard macros, volume controls, screen-capture buttons, computer sleep controls, and other programmable shortcuts. Its USB peripheral can also be accessed at a lower level for experimenting with raw USB packets and inspecting traffic using tools such as usbmon and Wireshark.


Comu top and bottom view
(click image to enlarge)

A custom 2KB USB bootloader is installed at the factory. Because the board lacks a dedicated BOOT0 button, the bootloader remains active for five seconds after connection before launching the user application. Programs are linked and flashed at address 0x800, with the supplied Makefiles handling the required offset.


Comu demo
(click image to enlarge)

The primary development environment is ch32fun, a lightweight framework for bare-metal C and C++ development on WCH microcontrollers. The project repository includes examples for blinking the LEDs, capacitive-touch input, formatted output, USB TTY, USB HID, and USB mass-storage operation.

Alternative development options include Rust through ch32-hal, Arduino through arduino_core_ch32, WCH’s HAL and MounRiver Studio II, and USB libraries such as TinyUSB.


Comu size comparison
(click image to enlarge)

The hardware design, bootloader, enclosure files, examples, and documentation are available through the project’s public GitHub repository. The design credits the earlier Tomu development board as inspiration for its USB-port form factor.

Specifications listed for Comu include:

  • Processor:
    • WCH CH32V203 32-bit RISC-V microcontroller
      • Up to 144MHz
  • Memory:
    • 224KB application flash
    • 24KB boot flash
    • 20KB SRAM
    • 64KB zero-wait-state flash
  • USB:
    • Full-speed USB peripheral
    • Integrated USB-A edge connector
    • USB HID, serial, and mass-storage examples
    • Custom 2KB USB bootloader
  • I/O:
    • 4× capacitive-touch inputs
    • 2× white LEDs
    • 6× GPIO signals exposed through test pads
    • 12-bit ADC
    • DMA controller
  • Mechanical:
    • 13 × 9.4mm
    • 0.4g with case
    • 0.2g without case

Further Information

Comu is available from Icy Electronics through Tindie for $5.99, with quantity pricing as low as $3.59 per board.

(advertise here)


PLEASE COMMENT BELOW

Please comment here...