Updating MicroPython on the Pyboard
Contents
Getting Started
When the Pyboard is first connected to a computer and opened up inside Thonny, the REPL will most likely reveal that the installed MicroPython system is outdated. We purchased our board from a popular online Chinese shop. The REPL revealed a very dated version of MicroPython:
Hello World
YD-MPY v1.12 on 2020-07-16; vcc-gnd(R) pyboard(R)
with STM32F405RG
Type "help()" for more information.
>>>
This article will provide the steps on how to upgrade MicroPython on a Pyboard V1.1 from a Windows 11 or Linux computer.
Prerequisites
The following need to be installed if this is the first time this computer has been used to perform a MicroPython firmware flash to a STM32 microcontroller board:
- Windows: WinUSB driver and dfu-util flash utility.
- This article, Installing dfu-util in Windows, describes the installation process.
- Linux: dfu-util flash utility.
- This article, Installing dfu-util in Linux, describes the installation process.
Downloading the MicroPython Firmware
Navigate to the MicroPython download page (https://micropython.org/download/).
In the MCU section click the stm32f4 item. Select Pyboard V1.1 George Robotics and download the latest .dfu file release.
In our case it was PYBV11-20250911-v1.26.1.dfu
DFU Mode
The Pyboard has a DFU (Device Firmware Upgrade) loader in ROM. This is a powerful feature. It just about makes the Pyboard 'unbreakable'. If the board becomes unresponsive it can be revived by reloading the MicroPython system with the DFU loader.
Place the Pyboard in DFU modeEnsure the board is unplugged from the computer. Place a jumper wire across the 3V3 and P1 (DFU) pins then plug it into the computer.
The first time the pyboard is connected in DFU mode, Windows may show a device with a warning sign (yellow exclamation mark) in Device Manager until the correct DFU driver is installed.
On our Windows computer it appeared as AMP32 ISP DFU with an error. Depending where the Pyboard has been purchased from it may also show up as STM32 Bootloader (or similar) with an error.
This is an issue only on Windows computers and is solved with the installation of the WinUSB driver. This was discussed in the Prerequisites section above.
Flashing the Firmware
Windows:- Open a Command Prompt and navigate to the folder where the MicroPython firmware file is located (usually the Downloads folder):
- cd %USERPROFILE%\Downloads
- Run the following command. Substitute firmware.dfu for the name of the downloaded MicroPython firmware file:
- dfu-util -a 0 -D firmware.dfu
- When the flashing process has completed remove the jumper between the 3V3 and P1 (DFU) pins then press the Reset button on the board.
- Open a Terminal and navigate to the directory where the MicroPython firmware file is located (usually the Downloads folder):
- cd ~/Downloads
- Run the following command. Substitute firmware.dfu for the name of the downloaded MicroPython firmware file:
- sudo dfu-util -a 0 -D firmware.dfu
- When the flashing process has completed remove the jumper between the 3V3 and P1 (DFU) pins then press the Reset button on the board.
Connect to Thonny and check the REPL for the MicroPython version.
MicroPython v1.26.1 on 2025-09-11; PYBv1.1
with STM32F405RG
Type "help()" for more information.
>>>
In our case we were upgraded from V1.12 to V1.26.1.