Keyboard Scan Code Ordering for Simultaneous Key Presses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional keyboards face issues in accurately ordering scan codes when multiple keys are pressed simultaneously or in quick succession, leading to incorrect registration of key presses due to a fixed scanning direction and cycle timing.

Innovation Solution

A keyboard system with an embedded controller that learns the order of single key presses over multiple scan cycles and generates the correct order for multiple key presses based on these learned sequences, using a two-dimensional array system to determine and send scan codes in a numerical descending order.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If a fixed scanning direction is used in the keyboard matrix, then the scanning process is simple and deterministic, but the scan code sending order may not match the actual key press order when multiple keys are pressed simultaneously or quickly in sequence

Engineering Contradiction:
Improvescanning process simplicityVSAvoidkey press order accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The patent applies dynamics by making the scan code sending order adaptive rather than fixed. The embedded controller dynamically adjusts the sending order based on detected key press timing and patterns, allowing the system to adapt to different pressing scenarios while maintaining scanning simplicity

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent uses feedback mechanisms where the embedded controller monitors key press signals across multiple scan cycles, analyzes the timing and sequence of detected keys, and uses this information to determine the correct sending order for scan codes, ensuring accuracy matches actual user input

Inventive Principle:
Principle #23Feedback

2Productivity

If multiple keys are pressed in the same drive line during a single scan cycle, then the scanning process completes quickly, but the system cannot discern the actual order in which keys were pressed

Engineering Contradiction:
Improvescanning speedVSAvoidkey press sequence information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by performing multiple scan cycles to detect key presses before finalizing the scan code sending order. The embedded controller proactively gathers timing information across several cycles to reconstruct the actual key press sequence, preventing information loss

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent adds a temporal dimension to the scanning process by analyzing key press patterns across multiple scan cycles rather than relying on a single cycle. This multi-dimensional approach allows the system to discern press order even when multiple keys are activated simultaneously within one cycle

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10303263B2Auto swap order of finding key to generate scan codes
Publication Date: 2019.05.28 LENOVO SWITZERLAND INTERNATIONAL GMBH
  • US10303263B2 patent drawing
  • US10303263B2 patent drawing
  • US10303263B2 patent drawing

AI summary

A keyboard system includes a keyboard matrix; and an embedded controller in communication with the keyboard matrix, wherein the embedded controller is configured to: determine whether, in a single scan cycle of the keyboard matrix, multiple keys have been pressed or only a single key has been pressed; if only a single key has been pressed, learn an order of pressed keys in a plurality of scan cycles; and if multiple keys have been pressed, generate an order of the pressed multiple keys based on the learned order of pressed keys.