Data-Driven Menuing System Firmware Modification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional menuing systems for electronic devices require changes to the existing firmware source code to add or modify menu items, increasing development time and limiting modifications to only software developers.

Innovation Solution

A data-driven menuing system that generates a menu text file, compiles it into source code, and links it into a downloadable binary, allowing menu changes without altering the existing firmware, using a computer program that abstracts menu data and rules from the menu engine and builds display instructions into the data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional menuing systems are used, then menu functionality is provided, but firmware source code changes are required to add or modify menu items

Engineering Contradiction:
Improvemenu customization capabilityVSAvoidfirmware modification complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The menu system is segmented into separate data files and firmware code. Menu definitions are stored in external data files (e.g., XML, JSON, or CSV formats) that can be independently modified without changing the firmware source code. The firmware contains only the menu engine that reads and processes these external files, allowing menu customization through simple data file edits rather than complex code modifications.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary layer (menu configuration files) is introduced between the user's customization needs and the firmware code. These configuration files serve as a mediator that translates user-friendly menu definitions into the format required by the firmware menu engine, eliminating the need for direct firmware modification while enabling full menu customization.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If firmware source code changes are made to modify menus, then menu functionality is updated, but development time increases

Engineering Contradiction:
Improvemenu update capabilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

Menu configurations are prepared in advance as separate data files with predefined structures and templates. Common menu patterns and layouts are established beforehand in these files, allowing rapid customization by simply copying and modifying existing entries rather than creating new menu structures from scratch, significantly reducing development time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system enables copying of existing menu definitions from data files to create new or modified menus. Users can replicate proven menu structures and simply change the data values (text labels, icons, associated functions) without recreating the entire menu framework, accelerating the menu update process.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If firmware source code changes are required, then menu modifications are possible, but non-software developers cannot make changes

Engineering Contradiction:
Improvemenu modification capabilityVSAvoiduser accessibility for modification
Core Design Contradiction:
Adaptability or versatilityVSEase of operation

Solution Approach 1:

The menu system enables end-users to perform their own menu customizations by editing external data files using simple text editors or configuration tools, without requiring access to firmware source code or specialized programming knowledge. The system is designed to be self-serviceable, allowing users to independently modify menu text, icons, and arrangements through intuitive data file edits.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Instead of modifying permanent firmware code, the system uses disposable, easily replaceable data files for menu definitions. These files can be quickly edited, tested, and replaced without any risk to the stable firmware core, making the modification process as simple and low-risk as editing a text file rather than compiling and flashing new firmware.

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

Data Source

PatentUS10048950B2Data-driven menuing system for providing a flexible user interface on an electronic device
Publication Date: 2018.08.14 HARMAN PROFESSIONAL INC
  • US10048950B2 patent drawing
  • US10048950B2 patent drawing
  • US10048950B2 patent drawing

AI summary

An architecture for altering the content of a menuing system with little or no change to existing firmware of an electronic device is disclosed. A menu text file is generated and the menu text file is compiled into source code. Menu firmware is compiled and liked using the source code into a downloadable binary for the electronic device. The downloadable binary does not alter existing firmware of the electronic device.