Firmware update

alpha and omega boards are delivered with the latest version of MicroPython preinstalled, ready to use.
The board’s firmware can be updated as newer versions of MicroPython are released, to profit from the latest features.
MicroPython firmwares for alpha and omega boards are customized versions of the official MicroPython.

Firmware versions

Below are listed all MicroPython firmware versions for the corresponding alpha:ONE hardware.

alpha:ONE

v1.0 Rev B

alphaone_v1.0_Rev_B_micropython_v1.0.zip

omega:ONE

omega:TWO

How to update the firmware

Here is a short instruction on how to update your board’s MicroPython firmware in Microsoft Windows 10.
Some tools are needed:

Zadig

Zadig is used to install the USB driver needed to connect to the board.

dfu-util

dfu-util (DFU Device Firmware Update) is used to flash MicroPython to the board.

PuTTY

PuTTY is used to send commands to your board.

Instruction to flash MicroPython on alpha:ONE’s microcontroller:

  1. Install the above mentioned software.

  2. Download the MicroPython firmware which corresponds to your board. Extract the compressed folder and copy the .dfu file (e.g. alphaone_v1.0_Rev_C_micropython_v1.0.dfu) in the dfu-util-0.9-win64 folder (e.g. dfu-util v0.9) - where dfu-util.exe is located.

  3. Connect alpha:ONE to your computer over USB, open Zadig and install the required USB driver.

  4. Put your board in dfu mode using one of the following procedures:

    1. Set in dfu mode with hardware:

      1. Hold down the USR switch.

      2. While still holding down USR, press and release the Reset switch.

      3. The LEDs will then cycle green to orange to green+orange and back again.

      4. Keep holding down USR until only the orange LED is lit, and then let go of the USR switch.

      5. The orange LED should flash quickly 4 times, and then turn off.

      6. Now alpha:ONE is in boot mode.

    2. Set in dfu mode with software:

      1. No jumper are needed, just connect alpha:ONE to host over USB.

      2. Open Device Manager, under Ports (COM & LPT) locate the COM port corresponding to your board.

      3. Open PuTTY select Serial and type in the COM port name under Serial Line (e.g. COM10), leave Speed at 9600. Then click Open. | The REPL prompt will state the current MicroPython version.

      4. Use the following code to put the board in dfu mode:

        import pyb
        pyb.bootloader()
        
      5. PuTTY shows that REPL lost connection, alpha:ONE is now in boot mode.

  5. Open Command Prompt, and navigate to the dfu-util folder, where dfu-util.exe is located. Make sure that the MicroPython firmware has been copied into folder.

  6. Check if alpha:ONE is available by typing dfu-util -l. Lines with FOUND DFU: … should appear.

  7. Flash the MicroPython firmware with dfu-util --alt 0 -D <firmware_name.dfu>, e.g. dfu-util --alt 0 -D alphaone_v1.0_Rev_C_micropython_v1.0.dfu

  8. Wait until the flashing is concluded. Reboot with a power cycle or pressing Reset. The firmware has been flashed successfully and your board is ready to use.

MicroPython license information

The MIT License (MIT)

© Copyright 2022, systematica GmbH

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.