Device Flag Engine for Driver Compatibility Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The incompatibility between device drivers and operating system versions leads to functionality issues, requiring users to wait for updated drivers, causing user frustration and lost productivity.

Innovation Solution

The implementation of device flag techniques, where a flag engine queries a database to determine if flags are set for a device identifier, communicating this information to the bus driver to configure the driver and maintain compatibility, and leveraging usage telemetry data to identify firmware updates needed for device operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a newer version of the driver is written to restore functionality, then device compatibility with the operating system is improved, but user frustration and lost productivity increase due to waiting time and complexity

Engineering Contradiction:
Improvedevice compatibilityVSAvoiddriver update waiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-configuring compatibility flags in a database before the driver needs to be updated. When a device is detected, the flag engine queries the database to determine if compatibility flags are set, and if so, automatically configures the driver without requiring user waiting or manual intervention. This eliminates the waiting time associated with traditional driver updates while maintaining compatibility.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The flag engine implements self-service by automatically detecting devices, querying the database for compatibility flags, and configuring the driver without requiring user intervention. The system serves itself by handling the entire compatibility resolution process autonomously, eliminating the need for users to manually locate and install updated drivers, thus reducing frustration and productivity loss.

Inventive Principle:
Principle #25Self-service

2Reliability

If traditional driver update techniques are used, then device functionality is restored, but ease of operation deteriorates due to user involvement requirements

Engineering Contradiction:
Improvedevice functionalityVSAvoiddriver installation ease
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The flag engine performs self-service by automatically detecting connected devices, querying the database for compatibility flags, and configuring the driver without requiring any user actions. This eliminates the traditional driver installation process where users must locate, download, and install updates, making the system vastly easier to operate while ensuring functionality is restored.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The flag engine acts as an intermediary between the device detection system and the driver configuration system. It queries the database to determine compatibility flags and mediates the communication between hardware detection and driver setup, automatically bridging the gap without requiring user involvement in the technical process.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If device flag techniques are implemented, then ease of operation is improved by eliminating driver update waiting, but device complexity increases due to flag engine and database requirements

Engineering Contradiction:
Improvedriver configuration easeVSAvoidsystem architecture complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The flag engine implements universality by serving multiple functions: it detects devices, queries the database for compatibility flags, determines whether driver configuration is needed, and automatically configures drivers. This multi-functional approach consolidates what would otherwise be separate components into a single integrated system, managing the added complexity through functional consolidation rather than proliferation of separate modules.

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

Data Source

PatentEP2689341B1Device flags
Publication Date: 2019.08.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2689341B1 patent drawingFigure 1
  • EP2689341B1 patent drawingFigure 2
  • EP2689341B1 patent drawingFigure 3

AI summary

Device flag techniques are described. In one or more implementations, responsive to detection by a computing device that a device has been communicatively coupled to bus of the computing device, a database is queried by the computing device to determine whether one or more flags have been set for the device. Responsive to a determination made as a result of the querying that the one or more flags have been set for the device identifier, information associated with the one or more flags is communicated to software that is associated with the device to configure the software.