Configurable Controlling Device Editor with N-State Widgets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing programmable controlling devices and editor programs are cumbersome and error-prone when attempting to dynamically modify actions based on variable parameters, such as time or appliance state, especially in networked and interactive environments.
Innovation Solution
A configurable controlling device with an advanced editor program that allows users to create and download graphical user interfaces with icons, assign commands to function keys, and define n-state widgets capable of initiating parameterized functions and responding to system inputs, facilitating flexible behavior and functionality.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If existing programmable controlling devices are used to dynamically modify actions based on variable parameters, then adaptable functionality is achieved, but the programming process becomes tedious and error-prone
Solution Approach 1:
The patent uses template files that contain pre-defined GUI structures, command sequences, and parameter configurations. Users can copy these templates and modify them rather than creating configurations from scratch, significantly reducing programming complexity and errors while maintaining adaptable functionality.
Solution Approach 2:
The system allows dynamic modification of parameters such as time, appliance state, and previous actions through standardized parameter interfaces. Users can change parameters within defined ranges rather than programming complex logic, making the system both adaptable and easy to operate.
2Adaptability or versatility
If existing editor programs are used to create user interfaces, then basic functionality is achieved, but the ability to support dynamic modification based on variable parameters is limited
Solution Approach 1:
The editor program is segmented into modular components including template management, parameter configuration, command sequencing, and GUI design tools. Each module handles specific aspects of configuration independently, allowing the system to support dynamic modification capabilities while keeping individual tools simple and manageable.
Solution Approach 2:
The editor program is designed as a universal tool that can create, modify, and manage various types of controlling device configurations through a single integrated interface. It handles multiple functions including GUI creation, command assignment, parameter setup, and template management, reducing the need for multiple specialized tools while maintaining high adaptability.
3Adaptability or versatility
If complex programming is used to achieve adaptable functionality, then dynamic behavior is achieved, but the system becomes more error-prone
Solution Approach 1:
The system incorporates real-time validation and feedback mechanisms that automatically check configurations for errors as users make changes. The editor provides immediate feedback on syntax errors, logical inconsistencies, and parameter out-of-range values, allowing users to correct mistakes before they cause system failures, thus maintaining high reliability while achieving dynamic behavior.
Solution Approach 2:
Template files pre-define valid parameter ranges, command sequences, and GUI structures, providing a safety net that prevents common errors before they occur. The system validates configurations against these pre-established templates, cushioning against errors while allowing dynamic modification within safe boundaries.
Data Source
Figure 1
Figure 2
Figure 3A~3B
AI summary
A user interface of a hand-held device is provided with a widget which is activatable to cause the hand-held device to perform at least one action. The widget is created by a user selecting programming blocks from a library of pre-defined programming blocks where each programming block is graphically represented as a processing unit with at least one of an input and an output. User input is then provided to graphically interconnect selected ones of the inputs and outputs of the pre-defined, user selected programming blocks to thereby define the at least one action that is to be performed upon activation of the widget.