Non-blocking firmware update for payment terminals

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Payment terminals often require firmware updates to enhance security, fix bugs, or implement new functionality, but they may be located in remote areas with infrequent network access, making traditional update methods inefficient and disruptive to operations.

Innovation Solution

A method for updating firmware in payment terminals that allows for non-blocking updates, enabling the terminal to process transactions while updating in the background, using a firmware manifest to determine which assets need updating and prioritizing critical updates, with the option to resume updates from a previous point if interrupted.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If firmware updates are performed using traditional methods that require network connectivity, then firmware can be updated to enhance security and fix bugs, but payment terminals located in remote areas with infrequent network access experience operational disruption and downtime

Engineering Contradiction:
Improvefirmware update capabilityVSAvoidtransaction processing continuity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by downloading and storing firmware update packages in local storage memory before network connectivity is lost or becomes infrequent. The payment terminal prepares update candidates in advance, validating them locally, so that updates can be applied later without requiring real-time network access, thus maintaining both firmware reliability and transaction continuity.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If firmware updates are applied immediately upon receipt, then security vulnerabilities are addressed promptly, but payment terminal operations are halted causing downtime and loss of productivity

Engineering Contradiction:
Improvesecurity update effectivenessVSAvoidoperational downtime
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically determines whether to apply firmware updates based on operational conditions. It implements a dual-mode approach: blocking updates (which halt operations for critical security fixes) and non-blocking updates (which are applied during idle periods or low-traffic times). This dynamic decision-making allows the system to balance security requirements with operational continuity, applying updates when it's safe to do so without causing unnecessary downtime.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary validation and staging of firmware updates before actual application. Update candidates are downloaded, validated, and staged in advance, allowing the system to prepare for updates without immediately disrupting operations. This preliminary action enables smooth transitions and reduces the actual downtime when updates are applied.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If payment terminals in remote locations rely on infrequent network connections for firmware updates, then operational continuity is maintained, but firmware may become outdated reducing security and functionality

Engineering Contradiction:
Improvetransaction processing availabilityVSAvoidfirmware currency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system takes preliminary action by proactively checking for firmware updates whenever network connectivity is available, even briefly. It downloads update candidates during these opportunistic connection windows, validates them locally, and stores them for later application. This proactive approach ensures firmware stays current without requiring the terminal to be constantly online, maintaining both productivity and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The payment terminal performs self-service by autonomously managing its firmware update process. It independently checks for updates, downloads candidates, validates them, and schedules application without requiring continuous network access or manual intervention. This self-service capability allows remote terminals to maintain current firmware while preserving operational continuity during network outages.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10684848B1Blocking and non-blocking firmware update
Publication Date: 2020.06.16 BLOCK INC
  • US10684848B1 patent drawing
  • US10684848B1 patent drawing
  • US10684848B1 patent drawing

AI summary

A payment service system may include a server that manages firmware updates for payment devices such as payment readers. A payment reader may access a firmware manifest including a listing of current firmware assets stored at the payment reader, and send the firmware manifest to the server. The server may compare the firmware manifest to available firmware bundles, which are ordered combinations of firmware assets that have been released for usage by payment readers. Some of the bundles may be blocking bundles, while some are non-blocking. If a payment reader is to be updated with a blocking bundle, it cannot process payments during the update. If the update is not a blocking bundle, the payment reader may continue to process payments.