New Development Board for ultra-low-cost MCU CH32V003

Pallav Aggarwal
3 min readOct 29, 2023

--

WCH has recently launched a new ultra-low-cost RISCV microcontroller, CH32V003.

It runs at 48Mhz and has 16KB Flash and 2KB RAM along with other general-purpose interfaces (GPIO, I2C, SPI, UART) available on most microcontrollers.

The MCU could be used in many low-end applications where cost is a major constraint due to high volume or can even be used in low-compute applications. One can also use this MCU for IO expansion, isolating some tasks from the main MCU, etc.

Here are some reasons why engineers should pay attention to the CH32V003:

  • The RISC-V architecture is gaining popularity, and it is one of the most affordable RISC-V microcontrollers available.
  • The MCU has a wide range of peripherals, making it suitable for various cost-sensitive applications.
  • The MCU is easy to use and program, and fairly good support is available from the manufacturer.
  • There is a growing community of developers using the RISCV-based MCUs, and several resources are available online to help engineers get started.

Learn more about CH32V003 here.

If you plan to build a board using CH32V003, free-to-download Altium Library symbols and footprints are available here.

Recently, I got interested in CH32V003 MCU, a very low-cost MCU(~0.15$ for 20 Pin package).

I purchased the MCU breakout board and programmer and started to learn how we can use each interface with the help of the example code provided by WCH.

So far, there are only MCU breakout boards available in the market.

It is not very convenient to evaluate the MCU properly without good development, which provides some sensor or device to test for each interface.

I connected different breakout boards with many jumper wires hanging, and probing was also inconvenient.

I decided to create an Open Source dev board.

CH32V003 Development Board

Features of the development I am designing are the following:

  • USB-C Port for Power (5V) and Serial Interface
  • On Board 3.3V LDO
  • UART — USB to UART
  • I2C — Temperature Humidity Sensor
  • I2C — Qwiik Connector for connecting external sensor boards
  • I2C — 0.96″ 128×64 Pixels OLED Display Module (included in the package)
  • I2C — 4 Pin Header is provided to connect to other boards via jumper wires. The connector is not soldered on the board.
  • SPI — 8Mbit SPI NOR Flash
  • PWM — RGB LED
  • GPIO — I/P — Two Keys
  • ADC I/P — Variable Resistor / Potentiometer
  • GPIO — O/P — One LED and one Buzzer
  • 3 Pin header for WCH-LinkE Programmer
  • 20 Pin MCU IOs Breakout on headers
  • LED Indications for 5V/3.3V/UART RX, TX
  • Option for connecting external 24Mhz Oscillator
  • MCU Reset Button is provided on the board

This development board will help developers evaluate with ease, and they will have a great experience.

But, still, if you have feedback, please let me know. Should I change something to make it more useful for people who want to evaluate CH32V003?

I hope you found this blog useful.

--

--

Pallav Aggarwal
Pallav Aggarwal

Written by Pallav Aggarwal

As an Embedded Systems Design Consultant, I help companies build embedded hardware products. My Blog: https://pallavaggarwal.in/. My Company: https://capuf.in

No responses yet