Mesh Network Firmware Upgrade Parallelization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing wireless fire detection systems take a long time to upgrade firmware in multiple devices due to sequential upgrades, requiring separate boot loaders and restarts if failures occur, leading to inefficiencies in CPU loading and context switching.

Innovation Solution

Implementing a method for simultaneous firmware upgrades across multiple devices in a mesh network, allowing parallelization, eliminating the need for separate boot loaders, and enabling full duplex communication through time division multiplexing, where devices can seed and receive firmware data from each other, reducing overall upgrade time and memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware upgrades are performed sequentially one device at a time via the gateway device, then each device receives complete firmware data reliably, but the total upgrade time increases significantly with large numbers of devices

Engineering Contradiction:
Improvefirmware upgrade completenessVSAvoidtotal firmware upgrade time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The firmware data is divided into multiple segments or packets that can be transmitted and received independently. Multiple devices can receive different segments simultaneously from different source devices, enabling parallel processing while maintaining data integrity through segmentation and reassembly mechanisms.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimensional sequential upgrade model (gateway to device1, then device2, etc.) to a multi-dimensional parallel model where multiple devices can exchange firmware data simultaneously through the mesh network, adding temporal and spatial dimensions to the upgrade process.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Device complexity

If the gateway device initiates firmware upgrades for each system device sequentially, then context switching and connection management are simplified, but the gateway device becomes a bottleneck and overall system productivity decreases

Engineering Contradiction:
Improveconnection management complexityVSAvoidfirmware upgrade throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

System devices are empowered to perform firmware upgrades autonomously by receiving firmware data from any peer device in the mesh network rather than requiring centralized gateway control. Each device can act as both a receiver and a transmitter of firmware data, enabling self-organizing parallel upgrades.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent makes all system devices multi-functional, capable of acting as gateway, client, or relay nodes interchangeably. Any device can seed firmware data to any other device, eliminating the specialized role of the gateway device and enabling flexible parallel upgrade paths.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Adaptability or versatility

If separate boot loaders are implemented in each microcontroller for firmware upgrades, then firmware can be updated independently, but memory usage increases and device complexity increases

Engineering Contradiction:
Improvefirmware update capabilityVSAvoidboot loader configuration
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent consolidates the boot loader functionality into a single shared memory location that can be executed by either the first or second microcontroller as needed. This eliminates the need for duplicate boot loader code in each microcontroller, reducing memory usage while maintaining the ability to update either microcontroller's firmware independently.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

A shared boot loader acts as an intermediary between the firmware update process and the microcontrollers. The boot loader resides in shared memory and can initialize either microcontroller, providing a centralized control mechanism that reduces complexity compared to distributed boot loaders.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Reliability

If the entire firmware upgrade process is restarted from the beginning upon failure, then data consistency is maintained, but time loss increases significantly

Engineering Contradiction:
Improvedata consistencyVSAvoidrecovery time after failure
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary actions by establishing multiple redundant firmware data paths and segment distribution mechanisms before the upgrade begins. If a failure occurs, the system can switch to alternative paths or retrieve missing segments from different source devices without restarting the entire process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system prepares cushioning measures by distributing firmware segments across multiple devices and establishing error checking mechanisms in advance. This allows the system to withstand failures and recover locally without catastrophic restart, as redundant copies and verification protocols are already in place.

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

Data Source

PatentUS11089454B2Systems and methods for upgrading firmware in multiple devices of a wireless fire detection system
Publication Date: 2021.08.10 HONEYWELL INTERNATIONAL INC
  • US11089454B2 patent drawing
  • US11089454B2 patent drawing
  • US11089454B2 patent drawing

AI summary

Systems and methods for upgrading firmware in multiple devices of a connected system are provided. Some systems can include a plurality of system devices in a mesh network of the connected system and a gateway device coupled to the mesh network. The gateway device can initially seed a firmware upgrade for the plurality of system devices, and some of the plurality of system devices can subsequently seed the firmware upgrade for other ones of the plurality of system devices.