$2 development board features Puya PY32F030 Cortex-M0+ MCU with 64KB Flash, 8KB RAM

The Puya PY32F030 core board is a low-cost industrial development board based on the 48 MHz PY32F030K28T6 Arm Cortex-M0+ MCU, featuring 64KB flash and 8KB RAM, and capable of operating in a wide temperature range of -40°C to 105°C. It supports USB, SPI, I2C, UART, and I2S interfaces, and is designed for applications such as IoT, robotics, and automation in harsh environments.

We have written about various low-cost MCUs over the past. Back in 2019, we wrote about the Padauk PMS150C, a 3-cent 8-bit MCU with 64 bytes of RAM, up to 6 I/Os, PWM, and basic peripherals. Then in 2022, the WCH CH32V003 made headlines with a 32-bit RISC-V core, 2KB SRAM, 16KB flash, and a 10-cent price tag. After that, in 2023, we discovered the Puya PY32 series of MCUs. It was an 8-cent MCU with an Arm Cortex-M0+ core, 32KB flash, and 4KB RAM, and was found on the PUYA003 MCU development board. The Puya32F030 is a new member of the PY32 family; let’s take a look.

Puya PY32F030 development board

Puya PY32F030 development board specifications:

  • MCU – Puya PY32F030K28T6-E
    • Core – Arm Cortex-M0+ MCU @ 48 MHz
    • Memory –  8KB SRAM
    • Storage – 64KB flash
  • Expansion via 2x 16-pin headers
    • Up to 26x Usable GPIOs
    • 2x USART
    • 1x I2C, 2x SPI,  11-channel PWM
    • 1x 12-bit ADC with 10+2 channels
    • 2x Comparators (CMP)
  • Clocks – Onboard 24 MHz crystal oscillator
  • Debugging – SWD header
  • Misc
    • Power and 3x User LEDs
    • Reset and 2x user buttons
    • Internal temperature sensor (in MCU)
  • Power
    • 5V from USB-C
    • Onboard 3.3V LDO
  • Dimensions – 50 x 23 mm
  • Temperature Range – – 40°C to +105°C

Puya PY32F030 Development Board Specifications
PY32F030 Development Board Specifications

 

Puya PY32F030 Development Board top and bottom
Puya PY32F030 Development Board Top and Bottom

While looking at the AliExpress listing, I noticed that they mention the MCU features 512KB Flash and 96KB RAM, which is very wrong, and according to the official datasheet, the PY32F030K28T6 MCU comes with 64KB Flash and 8KB RAM. More information, including the reference manual, application notes, firmware libraries, and toolchains for Keil and IAR, can be found on the downloads and resources page. While most of the documentation is in Chinese, some documentation, like the datasheet and reference manual, is available in English (marked as “英文”). I also found 17 application notes covering I2C, RTC, Watchdog, LED controller, and much more, but all of which are available in Chinese.

The Puya PY32F030 core board is available on AliExpress for $2.06 plus shipping (and potentially taxes), as well as on Amazon for $17.99 from a range of sellers. The PY32F030K28 can be purchased for 36 cents on another AliExpress store, which offers the board for an even lower price ($1.49 plus shipping).

PY32F030 block diagram
PY32F030 MCU block diagram

Share this:
FacebookTwitterHacker NewsSlashdotRedditLinkedInPinterestFlipboardMeWeLineEmailShare

Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress. We also use affiliate links in articles to earn commissions if you make a purchase after clicking on those links.

Radxa Orion O6 Armv9 mini-ITX motherboard

13 Replies to “$2 development board features Puya PY32F030 Cortex-M0+ MCU with 64KB Flash, 8KB RAM”

  1. AFAIK the usb can’t be used to program. The mcu doesn’t have usb layer and the board doesn’t have a serial chip

    1. One of the photos reads “Type-C USB Device”, but indeed, looking at the specs and block diagram, there’s no USB in the MCU.

    2. You can program them using the UART inside the Puya chip. You don’t have to use SWD. If a certain pin is held low during reset chip will go into a ROM monitor mode which loads an image from the UART and then flashes the chip. Look around on github, there is a python program somewhere that does this. Some Puya dev boards have a USB-UART chip on them. If not you have to use external USB-UART or SWD. If there is no USB-UART chip on the board, then USB is just for power.

      1. The ch32v003 can also be flashed via an uart, and wchisp is supporting that feature.

        Do you have any link to the python uart flasher?

    1. Different use cases. The PY32 is more of an alternative to the Raspberry Pi RP2040, or STM32 microcontrollers like the STM32F030.

      1. Exactly. A better question would be “Why this and not the CH32V006?” Which has a nearly identical feature set. Well, it’s got more than listed here, but maybe the Puya does as well. I’ve not looked at the Puya chips recently.

Leave a Reply

Your email address will not be published. Required fields are marked *

Boardcon LGA3576 Rockchip RK3576 System-on-Module designed for AI and IoT applications
Boardcon LGA3576 Rockchip RK3576 System-on-Module designed for AI and IoT applications