Controller Aggregating Distributed GUI Modules

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex systems composed of distributed hardware modules require frequent updates in GUI APIs due to rapid changes in hardware module variants, leading to user complexity and the need for constant revisions in controller software to accommodate unique control requirements.

Innovation Solution

A controller using HTML5 and JavaScript aggregates GUI controls from distributed hardware modules, presenting a seamless interface to users by combining received HTML and JavaScript elements, with REST requests forwarded to the appropriate hardware modules, allowing for separate network management and minimizing the need for frequent updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If each hardware module provides unique GUI control tailored to its specific function, then the user interface is optimized for each module's capabilities, but the controller software must be frequently updated to accommodate new hardware module variants

Engineering Contradiction:
ImproveGUI control optimizationVSAvoidcontroller software complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system segments the GUI control architecture into independent hardware module units, each providing its own customized control interface. This allows each module to maintain optimal user interaction while the controller aggregates these segmented interfaces without requiring comprehensive updates for each new module variant.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller is designed with universal aggregation capabilities that can accommodate multiple different hardware module types through a common interface framework. This multi-functional design allows the controller to work with various module variants without requiring software revisions, as the universal architecture inherently supports new additions.

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

2Adaptability or versatility

If the controller API changes frequently to support new hardware module variants, then new hardware capabilities are accommodated, but the need for frequent controller updates increases

Engineering Contradiction:
Improvehardware module compatibilityVSAvoidupdate frequency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

Each hardware module is pre-configured with its own GUI control code and capability definitions before being added to the system. This preliminary preparation allows modules to be integrated into the controller's universal framework without requiring post-integration software updates, as all necessary adaptation information is already embedded in the module itself.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediary layer between the controller and hardware modules that handles variant-specific adaptations. This intermediary framework translates diverse module capabilities into a standardized control interface, allowing new hardware variants to be accommodated without propagating changes throughout the entire controller software stack.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If the controller builds and translates GUI interfaces for each hardware module, then precise control is achieved, but the development and maintenance burden increases

Engineering Contradiction:
Improvecontrol precisionVSAvoiddevelopment ease
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

Instead of the controller building and translating GUI interfaces for each hardware module, the approach is inverted: each hardware module provides its own GUI control code directly to the controller. This inversion eliminates the controller's burden of creating and maintaining module-specific interface translations, while the controller simply aggregates the provided interfaces for seamless user access.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10467320B2Method for providing seamless graphical user interface control for a complex system consisting of distributed hardware modules
Publication Date: 2019.11.05 HEWLETT PACKARD DEVELOPMENT COMPANY LP
  • US10467320B2 patent drawing
  • US10467320B2 patent drawing
  • US10467320B2 patent drawing

AI summary

A controller has a basic GUI formed of HTML5 and Javascript including elements to control a system as a whole. The controller receives GUI HTML5 and Javascript from each connected hardware module, such as a camera, microphone, lighting controller and the like. The controller adds the received HTML5 and Javascript from each hardware module to the base code and sends the combined GUI to the user. Data is returned from the user to the controller and then forwarded to the proper hardware module.