leka / LekaOS_Explorations

An exploration repo to use as a dirty stage before including in the main LekaOS
Apache License 2.0
2 stars 0 forks source link

Bootloader - Mission - Leka Bootloader & Firmware Update #14

Open ladislas opened 4 years ago

ladislas commented 4 years ago

Mission - Leka Bootloader & Firmware Update

Introduction

Leka is an interactive educational toy. It contains a complex firmware called LekaOS. As with any kind of software, LekaOS will need to be updated in the future to add new features to the product, improve existing ones and fix bugs.

To do so, LekaOS must to provide a way to update the firmware without breaking the robot.

The Mission

Develop a bootloader to handle the firmware update process

Constraints

Technical description

Leka's PCB contains 3 external memories:

LekaOS is not executed from external memory, thus a new update needs to be written to the MCU flash.

The process is as follow:

Steps

1. TTHW (Time To Hello World) & Bootloader

As a first step, we need to better understand the concepts behind a bootloader.

2. TTHW & New Firmware Storage

The second step focuses on the other side of the mission, storing the new firmware in flash. For simplicity, we will upload the new firmware through USB.

3. Deep Dive Bootloader & Firmware Update

In the previous steps we learned how to make a bootloader and how to store a new firmware image. In this third step, we will put the two together and update the firmware.

Resources

JashShaik commented 4 years ago

Some additional Nordic References :