IP Library Granted Patent US 8,692,694
Granted Patent B2
US 8,692,694 · App. 12/491,468 · Granted Apr 8, 2014

Method to detect and recover from stuck keys on an electronic device keyboard

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,692,694
App. No.
12/491,468
Granted
Apr 8, 2014
Kind
B2
Abstract

A method of detecting and recovering from stuck keys on an electronic device keyboard comprises receiving one or more messages by a processor based upon a predetermined periodic scan rate and each message corresponding to a pressed key, determining one of the pressed keys is a stuck key based upon the received one or more messages corresponding to a pressed key, sending a mock key-up message from the processor to a keyboard controller in response to the determined stuck key, operating the keyboard controller at a changed scan rate in response to the mock key-up message, detecting the electronic device keyboard is in a released key state by the processor; and operating the keyboard controller at the predetermined periodic scan rate in response to the detected released key state. The processor can include two components, such as a keyboard processor and a keyboard controller.

Claims (31)

1. A method of recovering from a stuck key on an electronic device keyboard comprising a plurality of keys, the method comprising:

receiving one or more messages at a processor, wherein said one or more messages are generated based upon a predetermined periodic scan rate and each message corresponds to a pressed key;

determining that a pressed key is a stuck key by the processor based upon the received one or more messages corresponding to a pressed key;

sending a mock key-up message from the processor to a keyboard controller in response to the determined stuck key, the mock key-up message interrupting the processor from inputting messages generated by the keyboard controller corresponding to the stuck key, thereby preventing the processor from processing messages corresponding to the stuck key, while enabling the processor to continue to process messages corresponding to the remainder of the plurality of keys;

operating the keyboard controller at a changed periodic scan rate in response to the mock key-up message, in which keyboard controller continues to scan, but at a periodic rate which is different from the predetermined periodic scan rate;

detecting the electronic device keyboard is in a released key state by the processor; and

operating the keyboard controller at the predetermined periodic scan rate in response to the detected released key state.

2. The method of claim 1 , further comprising starting a timer in response to receiving the one or more messages corresponding to a pressed key.

3. The method of claim 2 , wherein a stuck key is determined when the timer exceeds a predetermined duration.

4. The method of claim 3 , where the predetermined duration is set to at least forty-five seconds.

5. The method of claim 1 , wherein operating the keyboard controller at the changed scan rate comprises changing the predetermined periodic scan rate to an increased periodic scan rate.

6. The method of claim 5 , wherein the increased periodic scan rate is at least one scan per one second.

7. The method of claim 1 , wherein operating the keyboard controller at a changed scan rate is operating the electronic device at a lower power state compared to a normal power state at the predetermined periodic scan rate.

8. The method of claim 1 , wherein the predetermined periodic scan rate is at least one scan per ten milliseconds.

9. An electronic device comprising:

a display screen;

a keyboard comprising a plurality of keys; and

a processor in data-communication with the display screen and the keyboard and having a keyboard controller, said processor and said keyboard controller configured to:

receive one or more messages at the processor, wherein said one or more messages are generated based upon a predetermined periodic scan rate and each message corresponds to a pressed key of the keyboard;

determine that a pressed key is a stuck key by the processor based upon the received one or more messages corresponding to a pressed key;

send a mock key-up message from the processor to the keyboard controller in response to the determined stuck key, the mock key-up message interrupting the processor from inputting messages generated by the keyboard controller corresponding to the stuck key, thereby preventing the processor from processing messages corresponding to the stuck key, while enabling the processor to continue to process messages corresponding to the remainder of the plurality of keys;

operate the keyboard controller at a changed periodic scan rate in response to the mock key-up message, in which keyboard controller continues to scan, but at a periodic rate which is different from predetermined periodic scan rate;

detect the keyboard is in a released key state by the processor; and

operate the keyboard controller at the predetermined periodic scan rate in response to the detected released key state.

10. The electronic device of claim 9 , wherein the keyboard controller and the processor are further configured to start a timer when one or more messages corresponding to a pressed key is detected.

11. The electronic device of claim 10 , wherein the keyboard controller and the processor determine that a pressed key is a stuck key when the timer has exceeded a predetermined duration.

12. The electronic device of claim 11 , wherein the predetermined duration is set to at least forty-five seconds.

13. The electronic device claim of 9 , wherein the keyboard controller and the processor are further configured to change the predetermined periodic scan rate to an increased periodic scan rate.

14. The electronic device of claim 9 , wherein the keyboard controller and the processor are further configured to return the keyboard controller to the predetermined scan rate.

15. The electronic device of claim 9 , wherein the display screen is a touch display and the keyboard is a virtual keyboard displayed on the touch display.

16. The electronic device of claim 9 , wherein the processor comprises a keyboard processor and the keyboard controller.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Jan 22, 2014
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 032113/0594 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2009
From: O'NEILL, CONOR; GRANT, CHRISTOPHER JAMES
To: RESEARCH IN MOTION LIMITED
Reel/Frame 023287/0082 →