Universal Printing Driver Dynamic Capability Query

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large enterprises face challenges in managing device drivers for multiple printer models, as existing solutions either require model-specific drivers or compromise on feature access, leading to increased costs and complexity in testing and maintenance.

Innovation Solution

A dynamic device driver system that communicates with printing devices to retrieve capabilities, invoke features, and display options, allowing for a single driver to support multiple devices while exposing device-specific functionalities to users.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single device driver is used to support multiple printer models, then driver management complexity is reduced, but access to model-specific advanced features is lost

Engineering Contradiction:
Improvedriver management complexityVSAvoidaccess to model-specific features
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The device driver dynamically queries the printing device to retrieve capability information and adjusts its behavior accordingly. The driver includes a communication protocol that retrieves capabilities, invocation commands, and display strings from the printing device, allowing it to adapt to different printer models and expose model-specific features while maintaining a single unified driver interface.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The driver establishes a feedback loop where it queries the printing device for capability information, uses this information to configure the user interface and command emission, and continuously adapts to the specific printer model. This feedback mechanism enables the single driver to access and expose model-specific advanced features like stapling, folding, and duplexing capabilities.

Inventive Principle:
Principle #23Feedback

2Adaptability or versatility

If model-specific device drivers are provided for each printer model, then full access to model-specific functionality is maintained, but driver management complexity and costs increase

Engineering Contradiction:
Improveaccess to model-specific featuresVSAvoiddriver management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The device driver is designed as a universal driver that can function with multiple different printer models. It includes a communication protocol that retrieves capabilities, invocation commands, and display strings from any supported printing device, enabling a single driver to provide full access to model-specific features across different printer models without requiring separate drivers for each model.

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

3Device complexity

If a single device driver supports multiple printer models, then driver maintenance costs are reduced, but the ability to provide model-specific functionality is compromised

Engineering Contradiction:
Improvedriver maintenance costsVSAvoidmodel-specific functionality
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The driver performs self-configuration by automatically querying the printing device for capability information, invocation commands, and display strings. This self-service approach eliminates the need for manual configuration and maintenance of model-specific driver variants, reducing maintenance costs while preserving full model-specific functionality through dynamic adaptation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7728999B2Printing device driver
Publication Date: 2010.06.01 HEWLETT PACKARD DEVELOPMENT COMPANY LP
  • US7728999B2 patent drawing
  • US7728999B2 patent drawing
  • US7728999B2 patent drawing

AI summary

A driver for a printing device includes a communication protocol configured to retrieve capabilities of the printing device, invocation commands for invoking the capabilities of the printing device, and display strings for guiding display of the capabilities of the printing device for the printing device when the driver is initialized for use; a user interface configured to display the capabilities of the printing device for a user based on the display strings for the capabilities of the printing device as retrieved by the communication protocol; and a command emission protocol configured to render a print job of the user for the printing device based on the invocation commands for the capabilities of the printing device as retrieved by the communication protocol.