Remote Keyboard Input Handling for Latency-Induced Key Repetition

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network latency between a client device and a server can cause unintended key repetition when typing, as the operating system interprets key down and key up packets delayed by latency as a key being held down, leading to erroneous key repeats.

Innovation Solution

A remote access manager inserts a key up state after each key down state in the keyboard data received from a client device to generate modified keyboard data, which is then passed to the host system, reducing occurrences of unintended key repetition due to network latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If keyboard data is transmitted over a network with latency, then remote access capability is improved, but unintended key repetition occurs

Engineering Contradiction:
Improveremote access capabilityVSAvoidkey press accuracy
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary actions by sending key down events immediately when detected at the client device, without waiting for acknowledgment or processing confirmation. This ensures that the key press intent is transmitted as soon as possible, reducing the impact of network latency on the overall response time while maintaining accurate key press registration.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If key down and key up packets are sent with delay due to network latency, then remote access is maintained, but the operating system interprets them as key being held down causing key repetition

Engineering Contradiction:
Improveremote access maintenanceVSAvoidkey press registration accuracy
Core Design Contradiction:
Ease of operationVSManufacturing precision

Solution Approach 1:

The keyboard input stream is segmented into discrete key down and key up events that are independently processed and transmitted. Each key event is handled as a separate unit with its own timing and acknowledgment protocol, allowing the system to maintain accurate registration of individual key presses even when network latency causes delays in packet delivery.

Inventive Principle:
Principle #1Segmentation

3Reliability

If server configuration is extended to handle latency issues, then key repetition can be reduced, but device complexity increases

Engineering Contradiction:
Improvekey repetition reductionVSAvoidserver configuration complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The client device performs self-service by implementing local processing of keyboard events, including sending key down events immediately and tracking the state of each key. This distributes the complexity from the server to the client, allowing the server to remain simple while still achieving accurate key press registration and reducing unintended key repetition.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10838510B2Generating modified keyboard data received from a client device to reduce unintended key repetition
Publication Date: 2020.11.17 HEWLETT PACKARD ENTERPRISE DEV LP
  • US10838510B2 patent drawing
  • US10838510B2 patent drawing
  • US10838510B2 patent drawing

AI summary

Various implementations relate to keyboard data communicated from a client device to a remote access manager. For example, the remote access manager may receive the keyboard data via a communication channel. The keyboard data may include key down states. The remote access manager may insert a key up state after each key down state in the received keyboard data to generate modified keyboard data.