Keyboard Scan Code Ordering for Simultaneous Key Presses
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
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
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
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
Data Source
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.


