Universal Remote Memory Optimization via Command Code Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Universal remote control devices face inefficiencies in memory usage during configuration and firmware upgrades, leading to suboptimal performance and increased memory burden, especially in home theater environments where multiple appliances need to be controlled.

Innovation Solution

The system optimizes memory usage by discarding unused command code sets in the universal controlling device, allowing for the storage of additional functionality and firmware updates, and enables bidirectional communication with appliances like set top boxes to distribute and update command code sets, thereby freeing memory space for advanced features and upgrades.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a complete library of command code sets is pre-stored in the universal controlling device, then the device can control various functional operations of various types of appliances, but the memory space is excessively occupied and prevents firmware updates

Engineering Contradiction:
Improvecapability to control various appliancesVSAvoidmemory space occupation
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The command code library is divided into multiple segments or groups corresponding to different appliance types. The system selectively loads only the relevant command code segments needed for the currently controlled appliance, rather than having all segments permanently resident in memory. This segmentation allows the complete library functionality to be available while keeping actual memory occupation minimal.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The command code library is made dynamic through selective loading and unloading of command code sets based on the currently controlled appliance. The system can load required command codes into active memory when needed and unload them when not needed, allowing the memory contents to dynamically adapt to current operational requirements rather than being static and permanently occupied.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If firmware updates are downloaded and stored in the universal controlling device, then the device can be upgraded with new functionality, but the existing memory is insufficient to accommodate both the complete command code library and firmware updates simultaneously

Engineering Contradiction:
Improvefirmware upgrade capabilityVSAvoidtotal memory capacity required
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system performs preliminary identification of which command code sets are currently needed before initiating a firmware update. By determining the currently relevant appliance type and its associated command codes in advance, the system can proactively unload unnecessary command code sets from memory, creating the required space for firmware updates before they are actually downloaded and installed.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system temporarily discards or unloads command code sets that are not currently needed for the controlled appliance, creating memory space for firmware updates. After the firmware update is successfully completed and installed, the system can recover or reload the previously discarded command code sets as needed, ensuring both update capability and continuous operational functionality.

Inventive Principle:
Principle #34Discarding and recovering

3Quantity of substance

If the universal controlling device stores only essential command codes to reduce memory usage, then memory space is freed for other features, but the device loses the ability to control extended functional operations of appliances

Engineering Contradiction:
Improvememory space availabilityVSAvoidrange of controllable functions
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The system achieves universality by maintaining access to the complete command code library through selective loading capabilities. Although not all command codes are permanently stored in memory, the device can load any required command code set for any appliance type when needed, providing multi-functional control capability without requiring all functions to be simultaneously present in memory.

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

Data Source

PatentEP2972905B1System and method for optimizing memory usage in a universal controlling device
Publication Date: 2019.08.14 UNIVERSAL ELECTRONICS INC
  • EP2972905B1 patent drawingFigure 1
  • EP2972905B1 patent drawingFigure 2
  • EP2972905B1 patent drawingFigure 3

AI summary

A method for optimizing memory usage in a device having a universal controlling application includes receiving into the device data for use in configuring the universal controlling application wherein the data is used to identify from within a library of command code sets stored in a memory of the device a command code set that is appropriate for use in commanding functional operations of the appliance and causing a non-identified one or more of the command code sets of the library of command code sets stored in the memory of the device to be discarded to thereby create freed space in the memory of the device.