USB Peripheral Staged Identification for Software Compatibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing USB host and peripheral device interactions often result in users being inconvenienced by requests to load missing support software, as vendors cannot anticipate all possible peripheral device functions, leading to incomplete software support and user frustration.
Innovation Solution
The method involves a peripheral device initially providing identification data that specifies a widely supported function, allowing the host to select generic or vendor-specific support software, and then simulating detachment and re-attachment to provide accurate functionality information, enabling the selection of appropriate support software to utilize the device's full capabilities without requiring additional software installation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the peripheral device provides accurate identification data specifying all its functions, then the host can select the most appropriate support software, but the user may be burdened with requests to install missing software
Solution Approach 1:
The peripheral device performs preliminary action by sending identification data that specifies a widely supported function first, enabling the host to select and load appropriate support software before the user interacts with the device. This preliminary identification allows the system to be prepared with software before the user needs to use the device, avoiding mid-operation software installation requests.
Solution Approach 2:
The identification data is segmented into multiple stages: first sending data specifying a widely supported function, then later sending additional data specifying the true function. This segmentation allows the host to process identification in phases, first ensuring basic software support is available, then progressively enabling additional functions as software becomes available, reducing user burden while maintaining reliability.
2Ease of operation
If the peripheral device specifies a function that is widely supported, then the host can use existing support software, but the device's full functionality cannot be utilized
Solution Approach 1:
The peripheral device dynamically changes its identification behavior based on the software support status. Initially, it specifies a widely supported function to ensure software availability. After the host loads the appropriate support software, the device then specifies its true function to enable full functionality. This dynamic adaptation resolves the contradiction between software availability and device versatility.
Solution Approach 2:
The identification data transmission occurs periodically in stages: first transmission specifies a widely supported function for immediate software matching, then after software is loaded, a second transmission specifies the true function for full functionality. This periodic re-transmission of identification data allows the system to progress from basic compatibility to full capability utilization.
3Adaptability or versatility
If vendors load all possible support software on hosts, then all peripheral device functions can be supported, but the host device size and cost increase
Solution Approach 1:
The solution implements universality by making the peripheral device capable of communicating its function requirements dynamically. Instead of requiring the host to have all possible support software pre-loaded, the device universally adapts to whatever software is available on the host, then guides the system toward optimal functionality through staged identification data transmission. This shifts the adaptability burden from the host to the device.
Solution Approach 2:
The peripheral device performs self-service by autonomously managing its own identification strategy. It monitors the host's software support status and adjusts its identification data accordingly, selecting which functions to specify based on what software is available. This self-service approach eliminates the need for the host vendor to pre-load all possible support software, reducing host complexity while maintaining versatility.
Data Source
AI summary
A method and apparatus for variably enabling interaction across a USB interconnect between a host and a peripheral device capable of performing a plurality of functions including enabling selection and execution of a vendor-specific support software supporting peripheral devices of a specific vendor by sending a first identification data to the host indicating that the peripheral device is of the same specific vendor and indicating that the peripheral device performs at least one of the functions indicated to be supported by the vendor-specific support software, awaiting receipt of an indication from the host of a selected subset of the plurality of the functions of the peripheral device that are to be enabled, simulating a detachment from and attachment to the host; and enabling the vendor-specific support software to again be selected and executed by sending a second identification data to the host indicating that the peripheral device is of the same specific vendor and indicating that the peripheral device performs the selected subset of functions.


