Code Docs

BloxOsLite (New Release!)

Summary

These docs are for customers who are using the UbiSwitch Revision B, with the 64Kb version. The nominal version of UbiSwitch Revision B uses 128Kb but a small number of earlier versions may use the 64Kb version.

How do I know whether I have 64Kb or 128Kb version?

You can tell from inspection of the MCU on the board.

128Kb version

IMG_20240422_100044.jpg

64Kb version

IMG_20240423_174428.jpg

You can see in these examples that the 64Kb board uses an STM32G071K8 MCU rather than STM32G071KB MCU or any other. If you have 64Kb MCU, READ ON. Otherwise follow the previous instructions as normal on the previous page.

Flashing & Upgrading

Software architecture

An overview of the architecture is shown below.

Unlike the original architecture, the 64Kb MCU is too small to support having both the bootloader and application in Flash. Hence we rely on just flashing the application as a standalone firmware that runs straightaway on boot.

This results in no difference in how the CLI is used. It will operate the same way as before.

The major difference is that updates over UART using the bootloader are not possible and instead the only way to update the firmware will be to reflash the updated app binary over the SWD interface.

graph TD
  Flashing -. Flash over SWD .-> BloxOsLite
  Updates -. Flash over SWD .-> BloxOsLite

How does this affect me?

This depends on whether your application will require that the board be updated through the UART console and not the SWD interface.

  1. You have a host device connected to the board via UART but not over SWD. Hence reflashing through SWD is not possible.
  2. You want to only update through updates through the bootloader rather than reflashing a new image.

However, if this isn’t an issue or you don’t want to perform updates, then this isn’t going to affect you.

Flashing

<aside> 💡 Much of the process is the same as with the 64Kb version. Hence make sure you follow the requirements Requirements

</aside>

Steps

  1. Download and unzip the binaries on the release page. Please choose the latest release.

    1. 1 file only: app_standalone.hex
      1. app_standalone.hex = standalone app image for 64Kb system.
  2. Follow the steps outlined previously from steps 2-5.

    Steps

  3. Flash using the method outlined in step 6 but only using the app_standalone.hex as the sole binary.

    Steps

  4. Power cycle the board and wait for the boot LED to turn off. You are then able to open a serial console into the CLI over UART. You may see a message indicating a boot delay after a set period.

    1. Baudrate: 115200 bits per second
    2. 8 data bits per character, no parity checking and 1 stop bit

Updates

Due to not having a bootloader, updates over UART are not possible. However, you can see use the SWD interface to program in another updated app_standalone.hex application if you want. Simply go to the releases page and download the latest release and follow the steps in Steps again.