Skip to content

Pyboard Firmware Update

Dave Hylands edited this page May 19, 2014 · 11 revisions

Download

You can download the latest firmware from http://micropython.org/download/.

Preparation

First, disconnect everything from your pyboard. Then connect the DFU pin with the 3.3V pin (they're right next to each other) to put the board into DFU (Device Firmware Update) mode. Now connect the pyboard to your computer via USB.

Flashing

dfu-util

First, install dfu-util via your package manager.

You can list all DFU-capable devices using the -l argument:

$ sudo dfu-util -l
dfu-util 0.5

(C) 2005-2008 by Weston Schmidt, Harald Welte and OpenMoko Inc.
(C) 2010-2011 Tormod Volden (DfuSe support)
This program is Free Software and has ABSOLUTELY NO WARRANTY

dfu-util does currently only support DFU version 1.0

Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=0, name="@Internal Flash  /0x08000000/04*016Kg,01*064Kg,07*128Kg"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=1, name="@Option Bytes  /0x1FFFC000/01*016 e"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=2, name="@OTP Memory /0x1FFF7800/01*512 e,01*016 e"
Found DFU: [0483:df11] devnum=0, cfg=1, intf=0, alt=3, name="@Device Feature/0xFFFF0000/01*004 e"

First, backup the original firmware:

$ sudo dfu-util --alt 0 --upload pyboard-original.dfu -s:524288
(...)
Starting upload: [#######] finished!

Then write the downloaded firmware to the pyboard:

$ sudo dfu-util --alt 0 -D pybv10-2014-05-19-v1.0.1-24-g5cdff5f.dfu 
(...)
done parsing DfuSe file

Disconnect the pyboard from USB and remove the jumper between the DFU and the 3.3v ports.

dfu-programmer

Some other DFU programmer. TODO: Document.

On Windows

TODO: Document

Clone this wiki locally