Embedded Device Firmware Partitioning for Lower-Cost Remote Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing firmware update methods for embedded devices require at least two firmware storage areas of the same size, leading to increased hardware costs and limited integration of device functions due to the need for backup firmware and inability to erase loaded firmware.

Innovation Solution

Implement a first firmware partition storing a minimum code set for remote firmware update, a second firmware partition for storing complete device functions, and a bootloader partition to manage firmware loading, allowing remote updates by switching to the first firmware when necessary and minimizing its size.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If two firmware storage areas of the same size are allocated for fault tolerance and FOTA updates, then reliability is improved, but hardware cost increases

Engineering Contradiction:
Improvefault toleranceVSAvoidhardware storage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies asymmetry by allocating different storage capacities to different firmware partitions. The first firmware partition stores only essential booting code, while the second firmware partition stores the complete firmware with FOTA functionality. This asymmetric allocation eliminates the need for two equal-sized storage areas, reducing hardware costs while maintaining reliability through the ability to switch between partitions during updates.

Inventive Principle:
Principle #4Asymmetry

Solution Approach 2:

The patent segments the firmware storage into two distinct partitions: a first firmware partition containing only booting code and a second firmware partition containing the complete firmware. This segmentation allows the system to use a smaller storage area for critical boot operations while dedicating a larger area for full functionality and updates, thereby optimizing hardware resource utilization.

Inventive Principle:
Principle #1Segmentation

2Reliability

If two equal-sized firmware partitions are used for ping-pong upgrade, then update reliability is improved, but device complexity increases

Engineering Contradiction:
Improveupdate reliabilityVSAvoidstorage partition structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent employs asymmetric partition design where the first firmware partition is deliberately made smaller than the second firmware partition. The first partition contains only essential booting code, while the second partition holds the complete firmware. This asymmetric structure simplifies the overall system by eliminating the need for complex dual-boot configurations while maintaining update reliability through controlled switching between partitions.

Inventive Principle:
Principle #4Asymmetry

3Adaptability or versatility

If firmware storage capacity is increased to support more device functions, then adaptability is improved, but hardware cost increases

Engineering Contradiction:
Improvedevice function integrationVSAvoidhardware storage capacity
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments firmware storage into functional portions: essential booting code in the first partition and complete device functionality in the second partition. This segmentation allows the system to boot with minimal storage requirements while maintaining full device capabilities in the second partition, thereby supporting device adaptability without proportionally increasing hardware storage capacity.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250252188A1Firmware update method for embedded device, and embedded device
Publication Date: 2025.08.07 ESPRESSIF SYST SHANGHAI
  • US20250252188A1 patent drawing
  • US20250252188A1 patent drawing
  • US20250252188A1 patent drawing

AI summary

Disclosed in the present application discloses are a firmware update method for an embedded device and an embedded device. A first firmware partition, a second firmware partition and a bootloader partition are provided in a memory of the embedded device, wherein the first firmware partition is configured to store a first firmware, the second firmware partition is configured to store at least one second firmware, and the first firmware comprises a minimum code set for implementing remote firmware update of the second firmware. The method comprises: detecting a first triggering event for updating the second firmware; determining whether the currently running firmware is the first firmware, and if not, switching the currently running firmware to the first firmware; acquiring, from a source device, second firmware update data for updating the second firmware, and writing received second firmware update data into the second firmware partition.