Keyboard system and method for operating input device

By adopting a hybrid switch structure in the input device, combining contact-based switches and contactless switches, the performance instability caused by contact-based switch wear in the prior art is solved, and an input device with low power consumption, high reliability and high performance characteristics is achieved.

CN119536527AActive Publication Date: 2025-02-28LOGITECH EUROPE SA
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411182240.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-08-29
Filing Date
2024-08-27
Publication Date
2025-02-28
Estimated Expiration
2044-08-27

AI Technical Summary

Technical Problem

In the long-term use of contact-based switches in existing input devices, they are prone to unstable performance and low signal-to-noise ratio due to wear, which cannot meet the high requirements of users, especially gaming communities for reliability and performance.

Method used

Using a hybrid switch structure, combining contact-based switches and contactless switches, the contact-based switches detect key activity in low power mode and precise detection using contactless switches in high power mode, thereby reducing power consumption and improving reliability.

Benefits of technology

It realizes that while maintaining low power consumption, the reliability and performance characteristics of the input device are improved, the service life of the equipment is extended, and the occurrence of noise signals is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119536527A_ABST
    Figure CN119536527A_ABST
Patent Text Reader

Abstract

The invention relates to a keyboard system and a method of operating an input device. The keyboard system comprises a plurality of mixed key structures which are configured in an array form, wherein each hybrid key structure is configured within the sub-array and includes a depressible element, a first type key switch configured to generate a first signal when the depressible element is activated, a second type key switch configured to generate a second signal when the depressible element is activated, and a processor configured to receive the first signal and the second signal from the first type key switch. The processor is configured to: receive a first signal from the activated hybrid key structure when a corresponding depressible element of the activated hybrid key structure is activated; determining a corresponding sub-array configured with the activated hybrid key structure; scanning a corresponding sub-array for the generated second signal; detecting the generated second signal from the corresponding sub-array; identifying an activated hybrid key structure based on the detected generated second signal; and registering a key press with respect to the identified activated hybrid key structure.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates generally to electronic devices, and more particularly to computer peripheral devices that utilize hybrid switch implementations to improve performance characteristics. Background Art

[0002] Input devices are common in modern society and are generally used to convert human analog input (e.g., touch, click, motion, touch gesture, button press, scroll wheel rotation, etc.) performed in conjunction with the input device into digital signals for computer processing. An input device may include any device that can provide data and control signals to a computing system. Some non-limiting examples of input devices include a computer mouse, keyboard, virtual reality and / or augmented reality controller, touchpad, remote control, game controller, joystick, trackball, etc. Some non-limiting examples of computing systems include desktop computers, laptop computers, notebook computers, game consoles, tablet computers and "phablet" computers, smart phones, personal digital assistants, wearable devices (e.g., smart watches, glasses), virtual reality (VR) and / or augmented reality (AR) headsets and systems, etc.

[0003] In the past few decades, input devices have undergone many significant improvements. In some modern input devices, such as computer mice and keyboards, buttons and / or keys are usually detected by contact-based switches. Contact-based switches have been on the market for many years and have been significantly improved in quality and price, but are subject to wear and tear in long-term use due to repeated contact-based actuation. This can often result in unreliable performance characteristics and low signal-to-noise ratios, which are unacceptable even for casual users, not to mention the more discerning users who are usually in the gaming community. Therefore, a better solution is needed.

[0004] Unless otherwise indicated herein, the materials described in this section are not prior art to the claims in this application and are not admitted to be prior art by inclusion in this section. Summary of the invention

[0005] In certain embodiments, a keyboard system includes: a plurality of hybrid key structures, the plurality of hybrid key structures being configured in the form of an array, the array including a plurality of sub-arrays, wherein each of the plurality of key structures is configured within any of the plurality of sub-arrays and includes a depressible element, a first type of key switch configured to generate a first signal when the depressible element is activated, and a second type of key switch configured to generate a second signal when the depressible element is activated; and one or more processors, the one or more processors being communicatively coupled to each of the plurality of hybrid key structures and configured to: receive a first signal from an activated hybrid key structure when the corresponding depressible element of the activated hybrid key structure is activated; determine a corresponding sub-array configured with the activated hybrid key structure; scan the corresponding sub-array for a generated second signal; detect the generated second signal from the corresponding sub-array; identify the activated hybrid key structure based on the detected generated second signal; and register a key press regarding the identified activated hybrid key structure. In some aspects, the first type of key switch is a contact-based key switch, and wherein the second type of key switch is a contactless key switch. In some implementations, the first type of key switch is a galvanic mechanical key switch, and wherein the second type of key switch is an optical key switch.

[0006] In some embodiments, scanning the corresponding subarray includes driving a second type key switch in each hybrid key structure in the hybrid key structure in the corresponding subarray for the generated second signal and reading the output of the second type key switch. In some implementations, scanning the corresponding subarray to detect the corresponding second signal is performed in response to receiving the first signal. In some embodiments, the power consumed by generating the first signal is less than one-tenth of the power consumed by generating the second signal. In some cases, the keyboard system generates a radio frequency (RF) report with key press data, the key press data including all identified activated hybrid key structures within a scan cycle consisting of a plurality of scan intervals, wherein the corresponding subarray is scanned during a scan interval in the plurality of scan intervals that is closest in time to the generation of the next RF report. In some aspects, the array includes rows and columns, wherein each column includes a plurality of rows of hybrid key structures, wherein each column corresponds to one of the plurality of subarrays, and wherein each column corresponds to a subarray of the plurality of subarrays that is different from the remaining columns. In other embodiments, the keyboard system includes a multiplexer configured to combine the total number of rows and columns by sharing the same rows and columns, thereby reducing the number of input / output (I / O) lines in the keyboard system. One or more processors may be provided in the keyboard system.

[0007] In some embodiments, a method of operating an input device includes: receiving, by one or more processors on the input device, a first signal from one of a plurality of subarrays, each of the plurality of subarrays including a different set of a plurality of hybrid key structures, each of the plurality of hybrid key structures including a first type key switch and a second type key switch, wherein the first signal is generated by a first type key switch of at least one of the plurality of hybrid key structures of one of the plurality of subarrays, wherein the plurality of subarrays are combined to form an array; identifying one of the plurality of subarrays generating the first signal; scanning the identified one of the plurality of subarrays for a second signal generated by the second type key switch; detecting the generated second signal from the identified one of the plurality of subarrays; identifying an activated key structure that generates the generated second signal; and registering a key press on the identified activated key structure. In some cases, the first type key switch is a contact-based key switch, and the second type key switch is a contactless key switch. In some embodiments, the first type key switch is a galvanic mechanical key switch, and the second type key switch is an optical key switch. The second type key switch may be different from the first type key switch.

[0008] In some aspects, scanning the identified one of the plurality of subarrays comprises driving a second type key switch in each of the hybrid key structures in the identified one of the plurality of subarrays for the generated second signal and reading the output of the second type key switch. In some implementations, scanning the identified one of the plurality of subarrays to detect the detected generated second signal is performed in response to receiving the first signal. In some aspects, the input device generates a radio frequency (RF) report with key press data, the key press data including all identified activated hybrid key structures within a scan cycle consisting of a plurality of scan intervals, wherein the corresponding subarray is scanned during a scan interval in the plurality of scan intervals that is closest in time to the generation of the next RF report. In certain embodiments, the array comprises rows and columns, wherein each column comprises a plurality of rows of hybrid key structures, wherein each column corresponds to a subarray of the plurality of subarrays, and wherein each column corresponds to a subarray of the plurality of subarrays that is different from the remaining columns. One or more processors may be disposed in the input device. In some aspects, the input device is a keyboard.

[0009] The terms and expressions that have been adopted are used as terms of description and not of limitation, and in the use of such terms and expressions, it is not intended to exclude any equivalents of the features shown and described, or portions thereof. However, it is recognized that various modifications may be made within the scope of the claimed system and method. Therefore, it should be understood that although the present system and method have been specifically disclosed by way of examples and optional features, those skilled in the art should recognize modifications and variations of the concepts disclosed herein, and such modifications and variations are considered to be within the scope of the system and method defined by the appended claims.

[0010] This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used alone to determine the scope of the claimed subject matter. The subject matter should be understood with reference to the entire specification of the disclosure, any or all drawings, and appropriate portions of each claim.

[0011] The foregoing features and examples will be described in more detail in the following description, claims and drawings, along with other features and examples. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The features of the above-mentioned various embodiments of the present invention and other features and advantages of certain embodiments will become more apparent from the following detailed description in conjunction with the accompanying drawings, in which:

[0013] Figure 1 An example of a computer system is shown that may include any of a variety of host computing devices and computer peripherals, including computer peripherals (e.g., a computer mouse, keyboard, etc.) that may be configured to perform aspects of the various inventive concepts described herein;

[0014] Figure 2 shows a simplified block diagram of a system configured for operating an input device according to certain embodiments;

[0015] Figure 3 shows a simplified block diagram of a system for operating a host computing device according to certain embodiments;

[0016] Figure 4A shows a cross section of an example of a contact-based switch for an input device;

[0017] Figure 4B is a signal diagram showing an example of a typical signal corresponding to a click event by a properly functioning contact-based switch;

[0018] Figure 4C is a signal diagram illustrating examples of possible signals corresponding to a click event by a malfunctioning contact-based switch;

[0019] Figure 5A illustrates an example of the operation of an optical switch sensor having a default off configuration according to certain embodiments;

[0020] Figure 5B illustrates an example of the operation of an optical switch sensor having a default closed configuration according to certain embodiments;

[0021] Figure 6 shows an example of a key structure having a hybrid key switch architecture according to certain embodiments;

[0022] Figure 7 illustrates a bottom side view of a second example of a key structure having a hybrid key switch architecture according to certain embodiments;

[0023] Figure 8 illustrates a side cross-sectional view of a second example of a key structure having a hybrid key switch architecture according to certain embodiments;

[0024] Fig. 9 A keyboard device having a key matrix with column-based sub-arrays according to some embodiments is shown;

[0025] Fig.10 shows an example of a 3×3 hybrid switch matrix according to certain embodiments;

[0026] Fig.11 shows an example of a 3×3 hybrid switch matrix using multiplexers according to certain embodiments;

[0027] Fig.12 An example of a timing diagram illustrating a sub-array scanning method according to some embodiments; and

[0028] Fig.13 is a simplified flow chart of a method of partially scanning a computer peripheral device (eg, a keyboard) for key press events in accordance with certain embodiments. DETAILED DESCRIPTION

[0029] According to certain implementations, aspects of the present disclosure relate generally to electronic devices, and more particularly to computer peripheral devices that utilize hybrid switch implementations to improve performance characteristics.

[0030] In the following description, various examples of devices utilizing hybrid switch technology are described. For illustrative purposes, specific configurations and details are set forth to provide a thorough understanding of the embodiments. However, it will be apparent to those skilled in the art that certain embodiments may be practiced or implemented without disclosing every detail. In addition, in order to prevent any confusion with the novel features described herein, well-known features may be omitted or simplified.

[0031] The following high-level overview is intended to provide a basic understanding of some of the novel innovations depicted in the accompanying drawings and presented in the corresponding description provided below. Aspects of the present invention relate to various improved computer peripheral devices, and more generally to electronic devices (also referred to as input devices) containing hybrid switches, as described in the following embodiments. As described above, input devices are generally used to convert human analog input (e.g., touch, click, motion, touch gesture, button press, wheel rotation, etc.) performed in conjunction with the input device into digital signals for computer processing. Buttons (e.g., used in computer mice, remote controls, game controllers, etc.) or keys (e.g., used on keyboards) are common depressible elements that can be pressed by a user to instantiate a type of control signal (e.g., alphanumeric characters, left / right mouse buttons, triggers, etc.). For buttons, in many modern computer mice, button "click" detection is generally based on a type of contact-based switch, such as a current or electrical switch, in which physical contact between two elements causes the input device to generate a control signal (e.g., button click). These types of switches have been used for decades and have been improved in life, reliability, and price through continuous innovation. However, contact-based switches (see e.g. Figure 4A ) are still susceptible to unavoidable wear, as contacts are mechanically or chemically worn away, resulting in poor quality, noisy signals (see e.g. FIG. 4B to FIG. 4C ). Some modern input devices already include non-contact switches (e.g., optical switches—see e.g. FIG. 5A to FIG. 5B ). Although these types of switches offer better reliability and longevity than contact-based switches, these types of switches can consume significantly more current (e.g., 5-6 mA) even when not operated (pressed). Although contactless switches offer improvements in their operating efficiency, contactless switches—and optical switches in particular—typically consume significantly more power than basic contact-based switches, which consume relatively negligible current, and particularly when not activated (e.g., not making contact).

[0032] Some implementations involve two (or more) switches (see e.g. Figure 6) to achieve improved performance, power efficiency, reliability, life, etc. In some aspects, a contact-based switch can be used to (1) notify the system of typing activity; and a contact-based switch can be (2) used when the input device is in an inactive or low-power mode. A contact-based switch can be used to "wake up" the input device (e.g., change the mode from a low-power "sleep" or "inactive" mode to a high-power "active" mode) with negligible battery consumption. When the contacts of a contact-based switch inevitably begin to wear, the contacts will still generate a signal, but with deleterious effects (see, e.g., Figure 4C ). However, since the signal is only used to wake up the input device, a noise signal can be reliably used for this purpose. A contactless switch (e.g., an optical switch) can be used in high-power mode, so that the input device benefits from the low-power characteristics of a contact-based switch when in low-power mode, and only uses the contactless switch (e.g., an optical switch) and its higher power requirements when in active mode. A hybrid combination of the two switches presents many additional advantages and smart functions. Although many of the embodiments presented herein relate to keyboard buttons, the novel concepts provided herein can be applied to any input device.

[0033] For some of the above embodiments, one scheduling and coordination challenge is the need to be able to address both the first key switch type and the second key switch type for each key structure throughout the keyboard, which may require twice the amount of send / receive ("scan") lines as compared to the amount of send / receive ("scan") lines required for a conventional keyboard with only one key switch per key structure. This can be expensive from a material perspective and can further limit the PCB space used for lighting elements (e.g., LEDs). The novel aspects of the present invention alleviate this problem by grouping the first type key switches into addressing subarrays (e.g., current networks) rather than addressing a single first key switch, so that fewer send / receive lines are required to determine which subarray generates the first signal (e.g., a signal from the first type key switch indicating a key press event corresponding to a user pressing a key). That is, some embodiments use a group of contact-based first key switch types to notify a processor (e.g., an onboard processor, an off-board processor) that a key press event (e.g., a user pressing a key) has occurred in a subarray of the key structure in the subarray that generates the key press event. It should be noted that, as described above, the key press event causes both the first type key switch and the second type key switch to generate corresponding first and second signals simultaneously or contemporaneously. Subsequently, the subarray that is the source of the detected first signal can be scanned to detect the second signal from the corresponding key structure pressed by the user.

[0034] In some embodiments, the key structure is configured in an array and is divided into sub-arrays forming a plurality of rows and columns. In some cases, as shown in the following figure, the key structure of each column and the corresponding first key switch type correspond to a single sub-array, so that the key structure of each column (e.g., a column of four or five key structures) uses one transmit / receive line, rather than having a transmit / receive line for each key structure as used in conventional embodiments and as described above. As an example, a keyboard key structure (key) can be configured in the form of a sub-array corresponding to a vertical column. When the "e" key is pressed, its first key switch type generates a first signal. The "e" key can correspond to a vertical key column including alphanumeric keys "3, e, d, c" ​​in a typical "Qwerty" type keyboard. It should be noted that any key grouping including the number of keys, the arrangement of keys (e.g., row, column, section, type), etc. can constitute a sub-array. Once a key press is detected in the "3, e, d, c" ​​sub-array, the processor continues to determine which key structure generates the first signal by scanning for the second signal in the particular sub-array. In some aspects, the second signal scan may scan each key structure in a particular subarray (and in all subarrays) individually. Once detected, the key press event for the key structure that generated the second signal may be instantiated by the processor to the host computing device.

[0035] The novel implementations described herein have many technical advantages over conventional designs. In addition to using fewer traces to address (send / receive or "scan") each of the first key switch types to save cost, a significant amount of power can be saved because very little power is consumed when no keys are pressed and when scanning the first signal from the first key switch type, and typically only non-negligible power is consumed when scanning the second key switch type, as further described below. In addition, key press latency is improved because key switch scanning can be performed at intervals close to report output, so the time between scanning and corresponding reporting can be reduced.

[0036] It should be understood that this high level overview is presented to provide the reader with a basic understanding of some of the novel aspects of the present disclosure as well as a road map to the details that follow. This high level overview in no way limits the scope of the various embodiments described throughout the detailed description, and each of the figures referenced above is further described below in greater detail and to the extent appropriate.

[0037] Figure 1An example of a computer system 100 is shown, which may include any of a variety of host computing devices and computer peripherals, including computer peripherals (e.g., computer mice, keyboards, etc.) that may be configured to perform aspects of the various inventive concepts described herein. The computer system 100 shows a user 105 operating a host computing device (shown as a desktop computer) 110 and a plurality of computer peripherals that may be coupled and / or integrated with the host computing device, including a display device 120, a computer mouse 130, a keyboard 140, and may include any other suitable computer peripherals (e.g., microphones, speakers, docking stations, headphones, etc.). Each of the computer peripherals 120-140 may be communicatively coupled to the host computing device 110.

[0038] Although the host computing device is shown as a desktop computer, other types of host computing devices may be used, including gaming systems, laptop computers, set-top boxes, entertainment systems, tablet or "phablet" computers, standalone head mounted displays ("HMD"), or any other suitable host computing device (e.g., smart phones, smart wearable devices, etc.). In some cases, multiple host computing devices may be used, and one or more of the computer peripherals may be communicatively coupled to one or more of the host computing devices (e.g., a computer mouse may be coupled to multiple host computing devices). The host computing device may also be referred to herein as a "host computer," "host device," "computing device," "computer," etc., and may include a machine-readable medium (not shown) configured to store computer code, such as driver software, firmware, etc., where the computer code may be executable by one or more processors of the host computing device to control aspects of the host computing device, such as via one or more computer peripherals.

[0039] Typical computer peripherals may include any suitable input devices, output devices, or input / output devices, including devices shown (e.g., a computer mouse) and devices not shown (e.g., a remote control, a wearable device (e.g., a glove, a watch, a head mounted display), an AR / VR controller, a CAD controller, a joystick, an analog shifter, a stylus device, or other suitable devices that can, for example, be used to convert analog inputs into digital signals for computer processing). By way of example, a computer peripheral (e.g., computer mouse 130) may be configured to provide control signals for: movement tracking (e.g., xy movement on a planar surface, three-dimensional "in-air" movement, etc.), touch and / or gesture detection, lift detection, orientation detection (e.g., in a 3 degree of freedom (DOF) system, a 6DOF system, etc.), power management capabilities, input detection (e.g., buttons, scroll wheels, etc.), output functionality (e.g., LED control, tactile feedback, etc.), or any of a large number of other features that a person of ordinary skill in the art would understand may be provided by a computer peripheral. The buttons of computer mouse 130 and keys of keyboard 140 (or other depressible elements on any input device) may include a hybrid switch architecture, as presented herein.

[0040] The input device may be a computer peripheral device, and may also be referred to herein as a "peripheral input device," "peripheral device," etc. Most of the embodiments described herein generally refer to computer peripheral device 140, however, it should be understood that the computer peripheral device may be any suitable input / output (I / O) device (e.g., user interface device, control device, input unit, etc.) that may be adapted to utilize the novel embodiments described and contemplated herein.

[0041] System for operating computer peripheral devices

[0042] Figure 2A system 200 for operating a computer peripheral device (e.g., a computer mouse 130, a keyboard 140, etc.) according to certain embodiments is shown. The system 200 can be configured to operate any computer peripheral device specifically shown or not shown herein but within the broad scope of the present disclosure. The system 200 may include a processor 210, a memory block 220, a power management block 230, a communication block 240, an input detection block 250, and an output control block 260. Each of the system blocks 220 to 260 can be in electrical communication with the processor 210 (e.g., via a bus system). The system 200 may include additional functional blocks, which are not shown or discussed to prevent obfuscation of the novel features described herein. The system blocks 220 to 260 (also referred to as "modules," "systems," or "system blocks") can be implemented as separate modules, or alternatively, more than one system block can be implemented in a single module. As will be understood by those of ordinary skill in the art with the benefit of the present disclosure, in the context described herein, the system 200 may be included in any computer peripheral device described or mentioned herein, and may also be configured with at least the following description with respect to Figures 8 to 11 Any hybrid switch implementation presented herein is described.

[0043] In some embodiments, the processor 210 may include one or more microprocessors and may be configured to control the operation of the system 200. Alternatively or additionally, the processor 210 may include one or more microcontrollers (MCUs), digital signal processors (DSPs), etc., with supporting hardware and / or firmware (e.g., memory, programmable I / O, etc.) and / or software, as will be understood by those of ordinary skill in the art. The processor 210 may control some or all aspects of the operation of the computer peripherals 140 (e.g., system blocks 220 to 260). Alternatively or additionally, some of the system blocks 220 to 260 may include additional dedicated processors that may work in conjunction with the processor 210. For example, an MCU, μC, DSP, etc. may be configured in other system blocks of the system 200. The communication block 240 may include a local processor, for example, to control various aspects of communication with the host computer 110 (e.g., via Bluetooth, Bluetooth LE, RF, IR, hardwire, ZigBee, Z-Wave, Logitech Unifying, or other communication protocols). The processor 210 may be local to the peripheral device (e.g., housed therein), external to the peripheral device (e.g., processed off-board, such as by a corresponding host computing device), or a combination thereof. The processor 210 may be combined with any other system blocks in the system 200 to perform any of the various functions and methods (e.g., method 1100) described and / or covered by the present disclosure. In some implementations, Figure 3The processor 302 can work in conjunction with the processor 210 to perform some or all of the various methods described throughout the present disclosure. In some embodiments, multiple processors can improve performance characteristics (e.g., speed and bandwidth) in the system 200, but multiple processors are not required and are not necessarily closely related to the novelty of the embodiments described herein. Those of ordinary skill in the art will appreciate that many variations, modifications, and alternative embodiments are possible.

[0044] The memory block ("memory") 220 may store one or more software programs to be executed by the processor (e.g., in the processor 210). It should be understood that "software" may refer to a sequence of instructions that, when executed by a processing unit (e.g., a processor, a processing device, etc.), causes the system 200 to perform certain operations of the software program. The instructions may be stored as firmware residing in a read-only memory (ROM) and / or an application stored in a media storage device that can be read into the memory to be executed by the processing device (e.g., the processor 210). The software may be implemented as a single program or a collection of separate programs and may be stored in a non-volatile storage device and copied in whole or in part to a volatile working memory during program execution. In some embodiments, the memory 220 may store data corresponding to inputs on a peripheral device, such as detected movement of a peripheral device, a sensor (e.g., an optical sensor, an accelerometer, etc.), activation of one or more input elements (e.g., a button, a slider, a touch-sensitive area, etc.), etc. The stored data may be aggregated and sent to the host computing device via a report.

[0045] In certain embodiments, the memory 220 may store various data described throughout the present disclosure. For example, the memory 220 may store and / or include instructions configured to perform various hybrid switch control modes presented herein, such as the method 1100. The memory 220 may be used to store any suitable data to perform any functions described herein and as will be understood by a person of ordinary skill in the art with the benefit of the present disclosure. The memory array 220 may be referred to as a storage system or storage subsystem, and may store one or more software programs to be executed by a processor (e.g., in the processor 210). It should be understood that "software" may refer to a sequence of instructions that, when executed by a processing unit (e.g., a processor, a processing device, etc.), causes the system 200 to perform certain operations of a software program. Instructions may be stored as firmware residing in a read-only memory (ROM) and / or as an application stored in a media storage device that can be read into a memory to be processed by a processing device. The software may be implemented as a single program or a collection of separate programs, and may be stored in a non-volatile storage device and copied in whole or in part to a volatile working memory during program execution. The processing device may retrieve program instructions to be executed from the storage subsystem to perform various operations as described herein (eg, software controlled switches, etc.).

[0046] The power management system 230 can be configured to manage power distribution, recharging, power efficiency, haptic motor power control, etc. In some embodiments, the power management system 230 may include a battery (not shown), a universal serial bus (USB)-based recharging system (not shown) for the battery, and a power management device (e.g., a voltage regulator - not shown) and a power grid within the system 200 for providing power to each subsystem (e.g., the communication block 240, etc.). In some embodiments, the functions provided by the power management system 230 can be incorporated into the processor 210. Alternatively, some embodiments may not include a dedicated power management block. For example, functional aspects of the power management block 240 can be included by another block (e.g., the processor 210), or combined with another block. The power source can be a replaceable battery, a rechargeable energy storage device (e.g., a supercapacitor, a lithium polymer battery, NiMH, NiCd), a wired power source, or other suitable power source. The recharging system can be an additional cable (dedicated to recharging purposes), or the recharging system can use a USB connection to recharge the battery.

[0047] According to some embodiments, the communication system 240 may be configured to implement wireless communication with a corresponding host computing device (e.g., 110) or other devices and / or peripheral devices. The communication system 240 may be configured to provide radio frequency (RF), Logitech proprietary communication protocols (e.g., Unifying, Gaming Lightspeed, or others), infrared (IR), Z-Wave or other suitable communication technology for communicating with other computing devices and / or peripheral devices. System 200 may optionally include a hardwired connection to a corresponding host computing device. For example, input device 130 may be configured to receive USB, Or other general type cables to achieve two-way electronic communication with the corresponding main computing device or other external devices. Some embodiments may utilize different types of cables or connection protocol standards to establish hard-wired communication with other entities. In some aspects, communication ports (e.g., USB), power ports, etc. may be considered as part of other blocks (e.g., input detection module 250, output control module 260, etc.) described herein. In some aspects, the communication system 240 may send a report (e.g., HID data, stream or aggregate data, etc.) generated by the processor 210 to the main computing device. In some cases, the report may be generated only by the processor, in conjunction with other entities in the processor or system 200. The communication system 240 may include one or more antennas, oscillators, etc., and may operate at any suitable frequency band (e.g., 2.4 GHz), etc. Those of ordinary skill in the art will understand its many modifications, variations, and alternative embodiments with the benefit of this disclosure.

[0048] The input detection module 250 may control the detection of user interactions with input elements (also referred to as "elements") on an input device. For example, as will be appreciated by one of ordinary skill in the art with the benefit of this disclosure, the input detection module 250 may detect user input from a key or button (e.g., a depressible element), a scroll wheel, a motion sensor, a scroll wheel, a trackball, a touchpad (e.g., a one-dimensional and / or two-dimensional touch-sensitive touchpad), a click wheel, a dial, a keyboard, a microphone, a GUI, a touch-sensitive GUI, a proximity sensor (e.g., IR, thermal, Hall effect, inductive sensing, etc.), image sensor-based detection such as gesture detection (e.g., via a webcam), audio-based detection such as voice input (e.g., via a microphone), etc. Alternatively, the functionality of the input detection module 250 may be included by the processor 210 or combined with the processor 210.

[0049] In some embodiments, the input detection module 250 can detect touches or touch gestures on one or more touch-sensitive surfaces on the input device 130. The input detection block 250 may include one or more touch-sensitive surfaces or touch sensors. A touch sensor typically includes a sensing element suitable for detecting signals such as direct contact, an electromagnetic or electrostatic field, or an electromagnetic radiation beam. A touch sensor can typically detect a change in a received signal, the presence of a signal, or the absence of a signal. The touch sensor may include a source for transmitting the detected signal, or the signal may be generated by an auxiliary source. The touch sensor may be configured to detect the presence of an object at a distance (e.g., <5 mm) from a reference area or point, an object in contact with a reference area or point, or a combination of the two objects. Certain embodiments of the computer peripheral device 150 may or may not utilize touch detection or touch sensing capabilities.

[0050] The input detection block 250 may include touch and / or proximity sensing capabilities. Some examples of types of touch / proximity sensors may include, but are not limited to, resistive sensors (e.g., based on standard air gap 4-wire, based on carbon-supported plastics with different electrical properties depending on pressure (FSR), interpolated FSR, strain gauges, etc.), capacitive sensors (e.g., surface capacitance, self-capacitance, mutual capacitance, etc.), optical sensors (e.g., optical barrier type (open or closed by default), infrared optical barrier matrix, laser-based diodes coupled to photodetectors that can measure the time of flight of the optical path, etc.), acoustic sensors (e.g., piezoelectric buzzers coupled to microphones to detect modifications of wave propagation modes associated with touch points, etc.), inductive sensors, magnetic sensors (e.g., Hall effect, etc.), etc.

[0051] In some embodiments, the output control module 260 can control various outputs of the corresponding computer peripheral devices. For example, the output control module 260 can control several visual output elements (e.g., LEDs, LCD screens), displays, audio outputs (e.g., speakers), tactile output systems, etc. Those of ordinary skill in the art will appreciate many modifications, variations, and alternative embodiments thereof with the benefit of this disclosure.

[0052] As will be understood by those of ordinary skill in the art, although some systems may not be explicitly discussed, they should be considered as part of system 200. For example, system 200 may include a bus system to transmit power and / or data to and from different systems in system 200. It should be understood that system 200 is illustrative, and variations and modifications are possible. System 200 may have other capabilities not specifically described herein. In addition, although system 200 is described with reference to specific blocks, it should be understood that these blocks are defined for ease of description and are not intended to imply a specific physical arrangement of component parts. In addition, these blocks do not need to correspond to physically different components. Blocks can be configured to perform various operations, such as by programming a processor or providing appropriate control circuit systems, and various blocks may or may not be reconfigurable depending on how the initial configuration is obtained.

[0053] Embodiments of the present invention can be implemented in various devices including electronic devices (e.g., computer peripherals) implemented using any combination of circuits and software. In addition, various aspects and / or parts of system 200 can be combined with other subsystems or operated by other subsystems according to the requirements of the design. For example, input detection block 250 and / or memory 220 can operate within processor 210, rather than being used as separate entities. In addition, the inventive concepts described herein can also be applied to any electronic device. In addition, system 200 can be applied to any computer peripheral described in the embodiments herein, whether it is a peripheral described explicitly, by reference, or by default (e.g., it is known to those of ordinary skill in the art that it can be applied to a specific computer peripheral). The foregoing embodiments are not intended to be limiting, and those of ordinary skill in the art will appreciate countless applications and possibilities with the benefit of this disclosure.

[0054] System for operating a host computing device

[0055] Figure 3300 is a simplified block diagram of a main computing device 300 according to certain embodiments. The main computing device 300 may implement some or all of the above functions, behaviors and / or capabilities that will use electronic storage or processing, as well as other functions, behaviors or capabilities that are not explicitly described. The main computing device 300 may include a processing subsystem (processor) 302, a storage subsystem 306, a user interface 314, a user interface 316, and a communication interface 312. The computing device 300 may also include other components (not explicitly shown) that can be operated to provide various enhanced capabilities, such as batteries, power controllers, and other components. In various embodiments, the main computing device 300 can be implemented in any suitable computing device, such as a desktop or laptop computer (e.g., desktop 110), a mobile device (e.g., a tablet computer, a smart phone, a mobile phone), a game console, a wearable device, a media device, etc., or in some implementations in a peripheral device (e.g., a keyboard, etc.).

[0056] The processor 302 may include (one or more) MCUs, microprocessors, application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, or electronic units designed to perform the functions or methods, combinations of functions, etc. described throughout the present disclosure.

[0057] The storage subsystem 306 may be implemented using local storage and / or removable storage media, such as using a disk, flash memory (e.g., a secure digital card, a universal serial bus flash drive), or any other non-transitory storage medium or combination of media, and may include volatile and / or non-volatile storage media. The local storage may include a memory subsystem 308 including a random access memory (RAM) 318 or a read-only memory (ROM) 320 such as a dynamic RAM (DRAM), a static RAM (SRAM), a synchronous dynamic RAM (e.g., DDR), or a battery-backed RAM, or the local storage may include a file storage subsystem 310, which may include one or more code modules. In some embodiments, the storage subsystem 306 may store one or more applications and / or operating system programs to be executed by the processing subsystem 302, including programs to be executed using a computer for implementing some or all of the operations described above. For example, the storage subsystem 306 may store one or more code modules for implementing one or more method steps described herein.

[0058] Firmware and / or software implementations may be implemented using modules (e.g., procedures, functions, etc.). Machine-readable media that tangibly implement instructions may be used in implementing the methods described herein. Code modules (e.g., instructions stored in memory) may be implemented within a processor or external to a processor. As used herein, the term "memory" refers to long-term, short-term, volatile, non-volatile, or other types of storage media, and is not limited to any particular type of memory, any amount of memory, or any particular type of medium storing memory.

[0059] In addition, the term "storage medium" or "storage device" may refer to one or more memories for storing data, including read-only memory (ROM), RAM, magnetic RAM, magnetic core memory, magnetic disk storage media, optical storage media, flash memory devices and / or other machine-readable media for storing information. The term "machine-readable medium" includes, but is not limited to, portable or fixed storage devices, optical storage devices, wireless channels and / or various other storage media capable of storing instructions and / or data.

[0060] In addition, implementation methods can be implemented by hardware, software, scripting language, firmware, middleware, microcode, hardware description language and / or any combination thereof. When implemented with software, firmware, middleware, scripting language and / or microcode, the program code or code segment for performing tasks can be stored in a machine-readable medium such as a storage medium. Code segments (e.g., code modules) or machine executable instructions can represent a combination of processes, functions, subroutines, programs, routines, subroutines, modules, software packages, scripts, classes or instructions, data structures and / or program statements. Code segments can be coupled to another code segment or hardware circuit by transmitting and / or receiving information, data, arguments, parameters and / or memory contents. Information, arguments, parameters, data, etc. can be transmitted, forwarded or sent by appropriate means, including memory sharing, message passing, token passing, network transmission, etc. These descriptions of software, firmware, storage media, etc. are applicable to any other implementation in the wide range of system 200 and system 300 and the present disclosure. In some embodiments, aspects of the invention (e.g., surface classification) may be performed by software stored in the storage subsystem 306, in the computer peripheral device's memory 220, or in both. Many modifications, variations, and alternative embodiments will be apparent to those of ordinary skill in the art having the benefit of this disclosure.

[0061] The implementation of the techniques, blocks, steps, and means described throughout this disclosure may be accomplished in a variety of ways. For example, the techniques, blocks, steps, and means may be implemented in hardware, software, or a combination thereof. For hardware implementations, a processing unit may be implemented in one or more ASICs, DSPs, DSPDs, PLDs, FPGAs, processors, controllers, microcontrollers, microprocessors, other electronic units designed to perform the above functions, and / or combinations thereof.

[0062] Each code module may include an instruction (code) set implemented on a computer-readable medium that directs the processor of the host computing device 110 to perform corresponding actions. The instructions may be configured to run in a sequential order, in parallel (e.g., under different processing threads), or in a combination thereof. After the code module is loaded onto a general-purpose computer system, the general-purpose computer is converted into a special-purpose computer system.

[0063] Computer programs incorporating the various features described herein (e.g., in one or more code modules) may be encoded and stored on various computer-readable storage media. Computer-readable media encoded with program code may be packaged with a compatible electronic device, or program code may be provided separately from the electronic device (e.g., downloaded via the Internet or as a separately packaged computer-readable storage medium). Storage subsystem 306 may also store information useful for establishing a network connection using communication interface 312.

[0064] The computer system 300 may include user interface input device 314 elements (e.g., touch pad, touch screen, scroll wheel, click wheel, dial, button, switch, keyboard, microphone, etc.), and user interface output device 316 (e.g., video screen, indicator light, speaker, headphone jack, virtual or augmented reality display, etc.), and supporting electronic devices (e.g., digital-to-analog or analog-to-digital converters, signal processors, etc.). A user may operate the input device of the user interface 314 to invoke functions of the computing device 300, and may view and / or hear output from the computing device 300 via the output device of the user interface 316.

[0065] Processing subsystem 302 can be implemented as one or more processors (e.g., integrated circuits, one or more single-core or multi-core microprocessors, microcontrollers, central processing units, graphics processing units, etc.). In operation, processing subsystem 302 can control the operation of computing device 300. In some embodiments, processing subsystem 302 can execute various programs in response to program code, and can maintain multiple programs or processes that are executed simultaneously. At a given time, some or all of the program code to be executed can reside in processing subsystem 302 and / or storage media (e.g., storage subsystem 304). Through programming, processing subsystem 302 can provide various functions for computing device 300. Processing subsystem 302 can also execute other programs for controlling other functions of computing device 300, including programs that can be stored in storage subsystem 304.

[0066] The communication interface (also referred to as a network interface) 312 can provide voice and / or data communication capabilities for the computing device 300. In some embodiments, the communication interface 312 may include a radio frequency (RF) transceiver component for accessing a wireless data network (e.g., a Wi-Fi network, 3G, 4G / LTE, etc.), a mobile communication technology, a component for short-range wireless communication (e.g., using the Bluetooth communication standard, NFC, etc.), a combination of other components or technologies. In some embodiments, in addition to or instead of a wireless interface, the communication interface 312 may also provide a wired connection (e.g., a universal serial bus (USB), Ethernet, a universal asynchronous receiver / transmitter, etc.). The communication interface 312 may be implemented using a combination of hardware (e.g., driver circuits, antennas, modulators / demodulators, encoders / decoders, and other analog and / or digital signal processing circuits) and software components. In some embodiments, the communication interface 312 may support multiple communication channels simultaneously.

[0067] As will be appreciated by one of ordinary skill in the art having the benefit of this disclosure, user interface input device 314 may include any suitable computer peripheral device (e.g., a computer mouse, keyboard, game controller, remote control, stylus device, etc.). User interface output device 316 may include a display device (e.g., a monitor, television, projection device, etc.), an audio device (e.g., a speaker, microphone), a tactile device, etc. Note that user interface input and output devices are shown as part of system 300 as an integrated system. In some cases, such as in a laptop computer, this may be the case where the keyboard and input elements and the display and output elements are integrated on the same host computing device. In some cases, the input and output devices may be separate from system 300, such as in a computer system. Figure 1 Many modifications, variations and alternative embodiments will be apparent to those skilled in the art having the benefit of this disclosure.

[0068] It will be understood that computing device 300 is illustrative, and changes and modifications are possible. The main computing device may have various functions (e.g., voice communication via a cellular telephone network) that are not specifically described, and may include components suitable for such functions. Although computing device 300 is described with reference to specific blocks, it should be understood that these blocks are defined for ease of description and are not intended to imply a specific physical arrangement of component parts. For example, processing subsystem 302, storage subsystem 306, user interface 314, user interface 316, and communication interface 312 may be in one device or distributed in multiple devices. In addition, these blocks do not need to correspond to physically different components. Blocks may be configured to perform various operations, for example, by programming a processor or providing appropriate control circuits, and various blocks may be reconfigurable or may not be reconfigurable, depending on how the initial configuration is obtained. Embodiments of the present invention may be implemented in various devices, including electronic devices implemented using a combination of circuits and software. System 300 may be used to implement the main computing device or even peripheral devices described herein.

[0069] Contact-based switches

[0070] In the present computer peripheral device (e.g., keyboard device), button press detection (e.g., detecting when a depressible element such as a keyboard key or button is depressed) is mainly based on a contact-based switch (e.g., a current / electrical switch), in which physical contact between two elements causes the input device to generate a control signal. Contact-based switches generally utilize galvanic isolation, which involves isolating functional parts of an electrical system to prevent current flow so that no direct conduction path is possible. In other words, when the physical switch is closed, current flows and generally generates a signal, such as a button press signal or other suitable human interface device (HID) signal, as will be understood by those of ordinary skill in the art who have benefited from the present disclosure. When the switch is open, no current flows and generally no HID signal is generated. Contact-based switches have been used for decades and have been steadily improved over the years for better life, reliability, and price. Contact-based switches also have excellent power efficiency. When the switch is open (e.g., when the button is at rest and not depressed or activated), there is virtually no current flow and almost zero power consumption (e.g., ignoring negligible microampere range leakage currents, etc.). While the switch is closed (typically for a duration in the millisecond range), the operating current and corresponding power consumption remain relatively low (e.g., 100 to 400 μA, etc.). Despite having excellent power consumption characteristics, contact-based switches are subject to repeated mechanical shocks, and after a period of time, the contacts wear out mechanically or chemically, resulting in noisy data that may be unreliable or unusable, which may render the corresponding input device at least partially inoperable and unsuitable for its intended use. According to certain embodiments, a hybrid switching method (see, e.g., Figure 6 ) can present an excellent depressible element structure that combines aspects of a contact-based switch with a second switch (e.g., a non-contact switch such as an optical switch) that utilizes the excellent power consumption characteristics of the contact-based switch while mitigating its life weaknesses, as described below at least with respect to Figure 6 As further described below, a contact-based switch is generally presented as a "first type of key switch" that generates a first signal, and a contactless switch is generally presented as a "second type of key switch" that generates a second signal.

[0071] Figure 4AA cross section of a simplified example of a contact-based switch 400 for an input device is shown. The contact-based switch 400 may include a housing 410, an actuator 420, a biasing mechanism 430, terminal portions and contacts (not fully shown), and a feedback distribution biasing mechanism 460. The housing 410 is configured to house and protect the internal mechanisms of the switch 400 to provide electrical insulation and mechanical integrity. The housing 410 may be a separate subassembly of an input device (e.g., a keyboard), although some embodiments may employ multiple switches in a shared housing, such as the type used in a hybrid switch 600, as described below with respect to FIG. Figure 6 As further described.

[0072] The actuator 420 can be configured to transfer movement and externally applied force to the internal mechanism of the switch 400. For example, a user can directly or indirectly press the actuator 420 (e.g., via a button, key cap, etc. coupled to the actuator 420) to cause the actuator 420 to move according to a linear translation path and apply force to the biasing mechanism 430. As will be appreciated by those of ordinary skill in the art having the benefit of this disclosure, in some aspects, the depressible element can be a key or button combined with the actuator 420. The actuator 420 can include multiple elements, including internal elements and user interface elements (e.g., mouse buttons, key caps, etc.) that better transfer force to internal components. As will be appreciated by those of ordinary skill in the art having the benefit of this disclosure, any suitable shape or number of elements can be used.

[0073] Biasing mechanism 430 can provide a restoring force to return the key to its original unpressed position. Actuator 420 typically applies a user-induced force (e.g., from a button or key press) to move the terminal portion and the contact from a first position, i.e., an open circuit state, to a second position, i.e., a closed circuit state in which electrical contact is formed. In some cases, the first position may correspond to a depressible element (e.g., actuator 420 and a corresponding element) not being pressed to a specific position or within a position range in which contact 450 does not form electrical contact, and the second position may correspond to a depressible element being fully pressed to form electrical contact. Biasing mechanism 460 may be configured to provide a feedback distribution by providing a "click" or other suitable feedback (e.g., increasing feedback followed by release) to provide a suitable tactile feedback experience to the user. Figure 4A A simplified implementation of a contact-based switch is provided, and numerous modifications, variations, and alternative implementations of the disclosure will be apparent to those of ordinary skill in the art having the benefit of this disclosure.

[0074] Figure 4B4 is a signal diagram 480 showing an example of a typical signal 481 corresponding to a click event made by a properly functioning contact-based switch. When contact 450 makes electrical contact with terminal B, signal 481 switches from a low voltage (e.g., electrical ground) 482 to a higher voltage (e.g., mains voltage) 489. When contact is made, a typical contact-based switch in good condition (e.g., without significant wear) bounces briefly from time to time, which typically lasts about 2 to 5 μs micro / milliseconds and appears as a signal fluctuation 488 in the signal. This occurs during normal operation and does not typically affect the ability to interpret button inputs, however, a debounce algorithm used to interpret and account for the bounce may add some latency to the detection (e.g., 1 ms or more). A clean, fully converted signal 489 appears after the bounce decays at a threshold 486 (e.g., typically 2V, 3.3V, etc.). With a "good" contact, the bounce can last about 0.7ms and is typically less than 1ms to 2ms, however other durations are possible. A typical click from a user can be as short as 30ms, so a 1ms jump is generally insignificant when trying to determine the intended input (e.g., single click, double click, etc.).

[0075] Figure 4C An example of a possible signal corresponding to a click event by a malfunctioning contact-based switch is shown. Figure 4C As can be seen in FIG, in response to the depressible element being pressed and contact 450 making contact with terminal B, signal 491 is noisy and does not show a clean transition between low voltage and high voltage. Signal 491 transitions from low voltage 492 to signal noise 498 for a relatively long period of time until a stable high voltage signal 499 is identified at threshold 496. It is unclear whether the noise includes fluctuations, whether two presses occur, etc., and whether unreliable output may result. The harmful noise appears for approximately 300ms. Since a typical user click may take approximately 30ms, it can be clearly seen how interpreting user input (e.g., click, double-click, click and hold, etc.) can be misinterpreted, and in some cases, the noise may actually have nothing to do with the user input at all. As described above, Figure 4C Indicating that some contact-based switches have significant wear on the contacts and / or corresponding terminals, which can limit the operational life of the input device. It should be noted that the various durations provided herein are provided in context, and other durations are possible, as will be understood by one of ordinary skill in the art having the benefit of this disclosure. In addition, FIG. 4B to FIG. 4CA signal that is normally low (e.g., 0V when no key is pressed) is shown, which goes high (e.g., 2.5V) when mechanical contact is made and goes back to a low signal when the contact is released. Some embodiments may be configured to have a signal that is normally high, which goes low when mechanical contact is made and goes back to a high signal when the contact is released. Those of ordinary skill in the art having the benefit of this disclosure will appreciate many modifications, variations, and alternative embodiments thereof.

[0076] Non-contact switch

[0077] Considering the life and reliability issues usually associated with contact-based switches, some contemporary manufacturers have changed to contactless switches.Contactless switches usually do not have mechanical interface elements (no contacts) during operation and can have substantially longer operating life due to the absence of key components subject to wear.Therefore, contactless switches can provide very clean signals (e.g., no bounce, intermittent contact, etc.) so that the input device can have a longer operating life.Some non-limiting examples of contactless switches include optical switches (described in the embodiments of this article), magnetic switches, inductive switches, capacitive switches, piezoelectric switches, etc. In addition, because contactless switches do not involve physical contact between elements, no additional delay is required to apply an elimination of bounce algorithms, etc. Despite these advantages, since contactless switches must be actively scanned (continuously or periodically) to confirm whether the switch is open or closed, contactless switches (e.g., optical switches) can consume significantly more current than contact-based switches.

[0078] Figure 5AAn example of the operation of an optical switch sensor 500 with a default off configuration according to certain embodiments is shown. The optical switch sensor ("optical switch") 500 may include a transmitter 520, a receiver 530, and a barrier 510, which is typically coupled directly or indirectly to an actuator (e.g., similar to the actuator 420) to move up and down in response to the movement of the depressible element. The barrier 510 may also be referred to as a "baffle". Typically, the barrier 510 can be moved from a first position that does not block the line of sight between the transmitter 520 and the receiver 530 to a second position that blocks the line of sight. The barrier 510 can provide analog-like operation by enabling a user to adjust the position of the barrier 510 by adjusting the amount of blocking, which can range from complete blocking to some blocking to no blocking. In operation, the transmitter 520 typically includes a light emitting diode (LED) that pulses (e.g., 2μs to 50μs) at an LED current (e.g., 2mA to 10mA) and a fixed frequency (e.g., 1ms), which is typical in contemporary high-end gaming peripherals (e.g., computer mice and keyboards). Light 525 is projected from the emitter 520 toward the receiver 530, which may be a phototransistor or other light-sensitive element. The amount of current generated by the receiver 530 may correspond to the amount of light 525 received from the emitter 520. Unlike contact-based switches, which typically have binary outputs including "on" (closed circuit) or "off" (opened circuit) operations, a contactless switch may allow no light emitted from the emitter 520, some light emitted from the emitter 520, or all light emitted from the emitter 520 to reach the receiver 530, thus allowing any number of intermediate settings and may allow the user to set the "on" state to any suitable actuation threshold (e.g., a corresponding output from the receiver 530), which may correspond to how far a button or key needs to be pressed to exemplify a key press. The optical switch 500 is in a normally-off configuration, wherein the switch allows light 525 emitted from the emitter 520 to reach the receiver 530 unimpeded when the actuator controlling the barrier 510 is not depressed, and blocks the light 525 from the emitter 520 when the actuator is depressed.

[0079] Figure 5BA switch 550 having a normally closed configuration is shown, wherein when an actuator controlling a barrier 560 is not depressed, the switch blocks light 575 emitted from a transmitter 570 from reaching a receiver 580, and when the actuator is depressed, the switch enables light 575 from the transmitter 570 to reach the receiver 580. In either configuration, despite the advantages of having a clean signal (e.g., no bounce or a delay corresponding to eliminating bounce), the ability to set an actuation threshold, and a significantly improved lifespan compared to a contact-based switch, a contactless switch can always utilize power, even when the depressible element is not depressed, to detect the state of the button in an acceptably fast time (e.g., within 1 ms), and thus utilize significantly more power than a contact-based switch. In certain embodiments, as further described below, a hybrid switch topology mitigates this problem by scanning only the contactless switch (e.g., the second type of key switch) when the subarray reports a first signal.

[0080] Mixing switch

[0081] Aspects of the present invention use a hybrid switch design (e.g., hybrid switch 600) that utilizes both a contact-based switch and a contactless switch to create an improved switch design that obtains the benefits of both types of switches and mitigates their disadvantages. In some embodiments, as described above, a contact-based switch can be used when the input device is in a low-power mode to utilize its low power consumption characteristics. As described above, the contact-based switch can be grouped into subarrays. As described above, the contact-based switch can generate a first signal when pressed, which will trigger the system to scan the corresponding subarray for the second signal (the second signal from the contactless switch) to identify the pressed key structure. Therefore, before the system scans the subarray to determine the source of the second signal (the pressed key structure), the power consumed can be ignored. In some aspects, the leading edge 484 (or another portion thereof) of the signal 481 can be used to present the first signal. Even when the contact-based switch begins to malfunction and produces a noisy and potentially uninterpretable signal as a user input (e.g., click, double click, click and hold, etc.), as shown in signal 491, the rising edge 494 can simply be used as a binary trigger to cause the input device to register the first signal. Thus, any amount of noise may be present on the signal due to the button press event, and since a simple rising edge can still be reliably generated despite being poorly presented, a faulty contact-based switch can still be reliably used to trigger a state change. In some aspects, as will be appreciated by one of ordinary skill in the art having the benefit of this disclosure, the above system can be operated such that a leading edge can also be a falling edge.

[0082] The contactless switch can also be used in the same hybrid switch architecture and can be configured to be activated when a key is pressed, which can take advantage of the excellent responsiveness and reliability characteristics of the contactless switch and largely avoid its disadvantage of higher power consumption by keeping the contactless switch off until a first signal is detected in one of the sub-arrays.

[0083] Figure 6 An example of a key structure 600 with a hybrid key switch architecture according to certain embodiments is shown. The key structure 600 includes mechanical pins 610 and a contactless module 620. As described above, the mechanical pins 610 can each be coupled to separate electrical contacts that are operable to make and break contact to achieve a key press event when the key structure is pressed. The contactless module 620 can be combined with optical sensing, wherein the actuator is pressed by the user (via a depressible element) and the biasing mechanism is moved downward to simultaneously close the contact-based switch (first type switch) for generating a first signal and cause the optical barrier of the contactless switch to block light from the photodiode to prevent it from reaching the phototransistor, thereby causing the contactless switch to generate a second signal. The key structure can have similarities to other common keyboard key structures, such as MX A form factor similar to a key switch, or other suitable form factor. As described above, any suitable contact-based key switch (e.g., typical mechanical, current key switches, etc.) and non-contact key switches (e.g., optical, magnetic, inductive key switches, etc.) can be used in the hybrid key structure, as will be understood by those of ordinary skill in the art having the benefit of this disclosure. In some cases, the optical element can be part of the motherboard, rather than being integrated with the switch as shown.

[0084] Figure 7 A bottom side view of a second example of a key structure 700 having a hybrid key switch architecture according to some embodiments is shown. As shown, the optical elements (e.g., photodiodes and phototransistors) are configured differently on the key switches. In some cases, the optical elements can be separated from the key switches and mounted on a motherboard with integrated switches or other suitable arrangements, as will be understood by those of ordinary skill in the art having the benefit of this disclosure. Figure 8 A side cross-sectional view of a second example of a key structure 700 having a hybrid key switch architecture in accordance with some embodiments is shown.

[0085] Scanning method for keyboard matrix with hybrid switches

[0086] According to certain embodiments, aspects of the present invention relate to an improved method of scanning a matrix of a key structure using hybrid switches. A hybrid switch pair typically includes a mechanical contact based switch (first type switch) and a contactless switch (second type switch). This high performance sensing method can improve system performance, reliability, eliminate bounce, while reducing power using traditional mechanical contacts (first type switch), and at the same time maintain a good UX key feel for the user.

[0087] When an MCU (e.g., an MCU with limited IO) needs to scan a large number of keys, the keys are typically placed in a matrix arrangement, such as a matrix arrangement of N drive columns × M read rows. In the case of a hybrid key structure, the second type of switches of "high performance sensing" are typically placed in a matrix arrangement of (drive) columns and (read) rows. However, according to certain embodiments, the contact-based sensing (first type of switches) are not placed in another matrix arrangement, but are connected together to form different clusters called current nets ("mechanical current nets" or "sub-arrays"). A novel aspect is that, by default, the MCU does not scan the "high performance sensing" matrix until an interrupt is received on the sub-array (current cluster) that is notifying the MCU (e.g., via a first signal generated by the first type of switch to notify the MCU) that typing activity (e.g., a key press event) is in progress. In some embodiments, high performance sensing is matrixed, and the MCU is operable to enable power column by column, thereby providing an improved method of clustering sub-arrays to obtain better power consumption and latency performance. One method is to group key structures on the same column to form a single mechanical current net. When a key press event is detected on that column, the MCU only needs to enable power to scan the active column. This can be called "partial scanning" because only the active column of the second type key switch needs to be scanned.

[0088] At a high level, partial scanning can be summarized as follows: (1) by default, high-performance sensing (e.g., high-performance sensing of a non-contact second-type key switch) is disabled; (2) when an interrupt is detected on a subarray (e.g., a first signal indicates that a contact-based key switch within the current network is pressed), high-performance sensing is triggered and enabled only for that current network (e.g., the MCU scans the subarray for a second signal generated by a second-type key switch (e.g., an optical sensor)) to register a key press event; and (3) when all keys are released (or after a threshold time period), high-performance sensing is disabled. As described above, some technical advantages of partial scanning include reduced power consumption and faster scanning with less latency. With respect to reduced power consumption, partial scanning consumes power only when there is typing activity (key press events), and in other cases, the power used in scanning for key presses is negligible (e.g., leakage current <50 μA). In some aspects, sleep mode and deep sleep mode (e.g., low power mode) can be triggered to wake up (e.g., active mode) in response to receiving the first signal, which does not require high-performance scanning. In addition, only the columns (e.g., sub-arrays) with key press events need to be powered for scanning. Therefore, compared to conventional designs that scan all columns, not all sub-arrays need to be scanned. Therefore, by using one current network per driver column, the MCU can be directly informed which column(s) are active, and therefore only this particular column needs to be scanned to register the key structure. As described above, although it may be optimal to have the sub-arrays correspond to the physical columns of the keys, any grouping of the key structure is possible, which may include columns, rows, or any suitable arrangement (e.g., linear, non-linear, continuous, non-continuous arrangements, etc.), etc. Those of ordinary skill in the art who benefit from the present disclosure will understand its many modifications, variations, and alternative embodiments.

[0089] Regarding faster scanning and low latency, since only active columns need to be scanned, key press events are registered more quickly (e.g., a partial scan results in scanning fewer columns), and the partial scan can be configured to occur just prior to generating a periodic RF report or USB report so that the average latency of a key press event is minimized.

[0090] Fig. 9A keyboard device with a key matrix according to certain embodiments is shown, the key matrix having column-based subarrays. The keyboard 900 can be operated by the system 200, etc. The keyboard 900 can include an array 905 of key structures, the array including a plurality of hybrid key structures 910 disposed within the keyboard. Each hybrid key structure can include a first type key switch and a second type key switch that generate a first signal and a second signal, respectively, as discussed throughout the present disclosure. In some embodiments, the array 905 of key structures can be grouped into a plurality of subarrays 920_1 to 920_n, each of which includes a plurality of hybrid key structures. For example, subarray 920_1 can include 4 key structures, and subarray 920_2 can include 6 key structures. When a first signal is detected, the system identifies the active subarray that generates the first signal, and the system scans the subarray for one or more second signals to determine a key press event, as further described below. Although some preferred embodiments may configure each subarray as a single-column hybrid key structure, it should be understood that any grouping of hybrid key structures is possible for the subarrays, which may be linear or non-linear groupings, continuous or discontinuous groupings, subarrays of different sizes, or any suitable arrangement of hybrid key structures - typically configured to enable partial scanning to achieve lower power consumption and, in some aspects, less latency in reporting, as will be understood by a person of ordinary skill in the art having the benefit of this disclosure.

[0091] Fig.10 An example of a 3×3 hybrid switch matrix 1000 is shown in accordance with certain embodiments. The keyboard 900 is referenced for illustration purposes only, and any arrangement of key structures is possible that still incorporates the partial scanning concepts presented herein. The matrix 1000 may include a processor 210 (identified as an MCU), optical columns (outputs) 1010, optical rows (inputs) 1020, and current grids (inputs) 1030. Each subarray 920_1, 920_2, 920_3 includes a plurality of hybrid key structures 910, as described above with reference to Fig. 9 As described. Optical column (COL) 1010 includes multiple outputs, typically one output per column, to send (drive) optical elements (e.g., normally open or normally closed optical elements). Optical row 1020 reads (receives, inputs) corresponding optical elements for closing the circuit. Current network 1030 can be configured to detect when any current element in a group of current elements (first type key switches) within a subarray (column) is closed. As described above, embodiments of the present invention use this system to determine which column includes a closed first type key switch.

[0092] In operation, at step 1, the user presses a key structure in the key structure of the sub-array 920_2 of the key array, which Fig.10 , which is shown as a hybrid key structure highlighted in . This causes the first type key switch and the second type key switch to close. The closed first type key switch generates a first signal, which is detected by the current network input 1030 and provides an indication to the MCU that a key press event is occurring in subarray 920_2. The active subarray (e.g., column) is enabled, and now the optical detection system 1010 and the optical detection system 1020 scan the particular subarray 920_2 and determine the optical switch state of the highlighted hybrid key switch, thereby generating a detected key press event. It is noted that since only subarray 920_2 generates the first signal, the optical system does not scan other subarrays, thereby achieving faster scanning rates and potentially less reporting latency using less power, as described throughout this disclosure.

[0093] By way of example, if two keys in subarray 920_2 are pressed, two first signals will be detected, and similar to the previous example, only subarray 920_2 will be scanned for the optical signal (second signal) - in this case, two second signals and two corresponding key press events will be detected. In another example, if two keys on adjacent subarrays (e.g., subarray 920_1 and subarray 920_2) are pressed, the first signal will be detected via the current network, and the optical system will scan these subarrays for the optical signal (second signal), thereby generating two key press events. Those of ordinary skill in the art who have the benefit of this disclosure will understand many modifications, variations, and alternative embodiments thereof.

[0094] Fig.11 An example of a 3×3 hybrid switch matrix 1100 using multiplexers according to some embodiments is shown. The hybrid switch matrix 1100 is similar to Fig.10 The difference is that the COL and the current network are multiplexed together. By default, the IO is configured as an input and "listens" to the current network signal. When it is necessary to scan the active COL with an optical element, the COL is configured to drive the output of the corresponding active COL. This implementation does not change Fig.10 , but allows for reduced I / O usage by multiplexing the COLs and current nets together, and typically uses some additional components (e.g., MOSFETs) to perform the multiplexing function, as will be understood by one of ordinary skill in the art having the benefit of this disclosure. For comparison, in an example matrix of 7 COLs x 15 ROWs (a total of 105 addressable keys), Fig.10An architecture with a similar number of keys may use 7 COLs + 15 ROWs + 7 current nets, for a total of 29 IOs for the switch, while a standard switch may only require 7 COLs and 15 ROWs, for a total of 22 IOs. Multiplexing capabilities can further reduce the number of required IOs by sharing the same wires, eliminating or reducing the need for more IOs.

[0095] Fig.12 An example of a timing diagram for a subarray scanning method 1200 according to certain embodiments is shown. Timing diagram 1210 illustrates a subarray scanning method used in some conventional systems. In this arrangement, each column is scanned in a continuous manner for the optical signal, regardless of whether any key is pressed. That is, a conventional system can be configured to sequentially scan rows and / or columns of keys to determine whether any key is pressed, and after each sequence is completed, a report can be generated and sent to a communicatively coupled host computing device (e.g., sent to a communicatively coupled host computing device via a wireless (RF) or wired connection). As can be clearly observed, scanning all columns requires constant, near-constant, or frequent power consumption, which is problematic for battery-driven products with limited power resources. Additionally, any key press detection performed earlier in the scan sequence (e.g., in column 0) will be reported much later than a key press read later in the sequence (e.g., in column 6), which can result in different delays for different keys, such that the "a" key in a typical QWERTY key arrangement (e.g., in column 1) will always have a longer reporting delay (e.g., time from actual key press to reporting) than the "h" key (e.g., in column 6), for the reasons described above.

[0096] As shown in timing diagram 1220, certain embodiments address this issue by reading the active subarray just before the next wireless report is generated / submitted. In the case of a partial scan, only the subarray (e.g., column) with the first signal detected (e.g., current signal) is scanned. To improve this latency issue, the subarray with the first signal detected can be scanned close to the next wireless report. For example, if a column is reporting a first signal, the column can be scanned for optical signals during the time when the most recent column (e.g., column 6) is typically scanned in a conventional sequential scanning system, as shown in timing diagram 1220. If two columns are detected with a first signal, the scanning period may occur where the last two columns are typically scanned. Using this approach (partial scanning), power is not necessarily consumed during the time when a key press is not detected, and multiple keys can be grouped so that optical scanning can be performed only during these key press events. For example, if a key press is detected in columns 1 and 6, the partial scan system may choose to scan columns 1 and 6 during the last two scan periods (e.g., as shown at columns 5 and 6 in timing diagram 1210), rather than scanning column 1 during the second sequential period and then scanning column 1 again during the last sequential period. In this case, better latency characteristics may be achieved, although similar power consumption may exist.

[0097] In summary, some exemplary embodiments may include a keyboard system comprising a plurality of hybrid key structures configured into an array, the array comprising a plurality of sub-arrays, wherein each of the plurality of key structures configured within any of the plurality of sub-arrays comprises: a depressible element; a first type of key switch configured to generate a first signal when the depressible element is activated; and a second type of key switch configured to generate a second signal when the depressible element is activated; and one or more processors, the one or more processors being communicatively coupled to each of the plurality of hybrid key structures, and the one or more processors being configured to: receive a first signal from an activated hybrid key structure when a corresponding depressible element of the hybrid key structure is activated; determine a corresponding sub-array in which the activated hybrid key structure is configured; scan the corresponding sub-array for a generated second signal; detect the generated second signal from the corresponding sub-array; identify the activated hybrid key structure based on the detected generated second signal; and register a key press for the identified activated hybrid key structure. The first type of key switch may be a contact-based key switch (e.g., a current mechanical key switch), and the second type of key switch may be a contactless key switch (e.g., an optical key switch). Fig.10As described in the example of , scanning the corresponding subarray includes driving the second type key switch in each hybrid key structure in the hybrid key structure in the corresponding subarray, and reading its output for the generated second signal. In some aspects, the scanning of the corresponding subarray is performed in response to receiving the first signal (e.g., the first signal from the current network) for detecting the corresponding second signal. Typically, the power consumed by generating the first signal is negligible (e.g., leakage current of <100 μA) and is typically less than one-tenth of the power consumed by generating the second signal. In some embodiments, the keyboard system generates a radio frequency (RF) report with key press data, which includes all identified activated hybrid key structures within a scan period consisting of a plurality of scan intervals, wherein the corresponding subarray is scanned during the scan interval that is closest in time to the generation of the next RF report in the plurality of scan intervals. In some aspects, the array may include rows and columns, wherein each column includes a plurality of rows of hybrid key structures, wherein each column corresponds to one of the plurality of subarrays, and wherein each column corresponds to a subarray of the plurality of subarrays that is different from the remaining columns. It should be noted that the rows and columns may be a linear arrangement of key structures, or may not be a linear arrangement of key structures. As will be appreciated by those of ordinary skill in the art having the benefit of this disclosure, some rows and columns may be curved, continuous or discontinuous, or may be any suitable multiple key structures. In some aspects, one or more processors are provided in the keyboard system (e.g., processor 210).

[0098] Fig.13 is a simplified flow chart of a method for partially scanning a computer peripheral device (e.g., a keyboard) for key press events according to certain embodiments. Method 1300 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software operating on appropriate hardware (such as a general-purpose computing system or a dedicated machine), firmware (embedded software), or any combination thereof. In certain embodiments, method 1300 may be performed by aspects of system 200 (e.g., processor 210), system 300, or a combination thereof. For example, as described above with reference to Figures 8 to 12 As shown and described, the novel method is described in operation with respect to an embodiment, however, other hardware implementations may be used as will be appreciated by one of ordinary skill in the art.

[0099] According to some embodiments, at operation 1310, method 1300 may include receiving, by one or more processors on the keyboard, a first signal from one of a plurality of subarrays (e.g., 920(1), 920(2), etc.). In some aspects, each of the plurality of subarrays includes a different set of a plurality of hybrid key structures 910, each of the plurality of key structures including a first type of key switch (e.g., a contact-based key switch, key switch 810) and a second type of key switch (e.g., a contactless key switch, key switch 820), wherein the first signal is generated by a first type of key switch of at least one of the plurality of hybrid key structures of the plurality of hybrid key structures of the one of the plurality of subarrays. The subarrays collectively form an array 905.

[0100] According to some embodiments, at operation 1310 , method 1300 may include identifying a subarray of the plurality of subarrays that generates a first signal.

[0101] According to some embodiments, in operation 1320, method 1300 may include scanning an identified one of the plurality of subarrays for a second signal generated by a second type key switch. In some aspects, scanning the corresponding subarray includes driving a second type key switch in each of the hybrid key structures in the corresponding subarray for the generated second signal and reading its output. The scanning of the corresponding subarray for detecting the corresponding second signal is performed in response to receiving the first signal. In some embodiments, the keyboard system generates a radio frequency (RF) report with key press data, the key press data including all identified activated hybrid key structures within a scan period including a plurality of scan intervals, and scans the corresponding subarray during a scan interval of the plurality of scan intervals that is closest in time to the generation of the next RF report.

[0102] According to some embodiments, at operation 1330 , method 1300 may include detecting a generated second signal from the identified one of the plurality of subarrays.

[0103] According to some embodiments, at operation 1340 , method 1300 may include identifying an activated key structure that produced the generated second signal.

[0104] According to some embodiments, in operation 1350, method 1300 may include registering a key press about the identified, activated key structure. In some aspects, the first type of key switch is a contact-based key switch, and the second type of key switch is a contactless key switch. In some cases, the first type of key switch is a current mechanical key switch, and the second type of key switch is an optical key switch. Typically, the second type of key switch is different from the first type of key switch. In some embodiments, the array may include rows and columns, wherein each column includes a plurality of rows of hybrid key structures, each column corresponds to one of a plurality of subarrays, and each column corresponds to a subarray of a plurality of subarrays that is different from the remaining columns. In some aspects, a key release is also registered. Once a key press is sensed, the system continues scanning by a second sensing (e.g., optical sensing) until a key release is detected.

[0105] It should be understood that according to certain embodiments, Fig.13 The specific steps illustrated in the figure provide a specific method 1300 for partially scanning a computer peripheral device for a key press event. Other sequences of steps may also be performed according to alternative embodiments. In addition, additional steps may be added or removed according to the specific application. Any combination of changes may be used, and those of ordinary skill in the art will appreciate many variations, modifications, and alternative embodiments thereof with the benefit of this disclosure.

[0106] Many specific details are set forth herein to provide a thorough understanding of the claimed subject matter. However, those skilled in the art will appreciate that the claimed subject matter can be practiced without these specific details. In other instances, methods, devices, or systems known to those of ordinary skill in the art are not described in detail in order to avoid blurring the claimed subject matter. The various embodiments shown and described are provided only as examples to illustrate the various features of the claims. However, the features shown and described with respect to any given embodiment are not necessarily limited to the associated embodiments, and can be used or combined with other embodiments shown and described. In addition, the claims are intended to be not limited to any one example embodiment.

[0107] Although the subject matter has been described in detail with respect to specific embodiments of the invention, it should be understood that those skilled in the art can easily generate changes, modifications, and equivalents of such embodiments after obtaining an understanding of the foregoing. Therefore, it should be understood that, as will be readily apparent to those of ordinary skill in the art, the present disclosure is presented for purposes of illustration and not limitation, and does not exclude the inclusion of such modifications, variations, and / or additions to the subject matter. In fact, the methods and systems described herein may be embodied in various other forms; in addition, various omissions, substitutions, and changes may be made to the form of the methods and systems described herein without departing from the spirit of the present disclosure. The attached claims and their equivalents are intended to cover such forms or modifications that fall within the scope and spirit of the present disclosure.

[0108] Although the present disclosure provides certain example embodiments and applications, other embodiments that are obvious to those of ordinary skill in the art, including embodiments that do not provide all of the features and advantages set forth herein, are also within the scope of the present disclosure. Therefore, the scope of the present disclosure is intended to be limited solely by reference to the appended claims.

[0109] The one or more systems discussed herein are not limited to any particular hardware architecture or configuration. The computing device may include any suitable arrangement of components that provide a result conditioned on one or more inputs. Suitable computing devices include multi-function microprocessor-based computer systems that access stored software that programs or configures the computing system from a general-purpose computing device to a dedicated computing device that implements one or more embodiments of the present subject matter. Any suitable programming, scripting, or other type of language or combination of languages ​​may be used to implement the teachings contained herein in software for programming or configuring a computing device.

[0110] Embodiments of the methods disclosed herein may be performed in the operation of such a computing device. The order of the blocks presented in the above examples may be changed—for example, the blocks may be reordered, combined, and / or divided into sub-blocks. Certain blocks or processes may be performed in parallel.

[0111] Unless explicitly stated otherwise or otherwise understood in the context of use, conditional language used herein, such as "can," "could," "might," "may," "eg," and the like, is generally intended to convey that certain examples include certain features, elements, and / or steps while other examples do not. Thus, such conditional language is generally not intended to imply that one or more examples in any way require features, elements, and / or steps, or that one or more examples must include logic for deciding, with or without author input or prompting, whether such features, elements, and / or steps are included in any particular example or are to be performed in any particular example.

[0112] The terms "comprise", "include", "have", etc. are synonymous and are used inclusively in an open manner, and do not exclude other elements, features, actions, operations, etc. In addition, the term "or" is used in its inclusive sense (rather than being used in its exclusive sense), so that, for example, when used to connect a list of elements, the term "or" means one, some or all of the elements in the list. The use of "suitable for" or "configured to" herein means open and inclusive language, which does not exclude devices that are suitable for or configured to perform additional tasks or steps. In addition, the use of "based on" means open and inclusive, because the processing, steps, calculations or other actions "based on" one or more listed conditions or values ​​may actually be based on additional conditions or values ​​other than those listed. Similarly, the use of "based at least in part" means open and inclusive, because the processing, steps, calculations or other actions "based at least in part" on one or more listed conditions or values ​​may actually be based on additional conditions or values ​​other than those listed. The titles, lists and numbers included herein are only for ease of explanation and are not meant to be limited.

[0113] The various features and processes described above can be used independently of each other, or can be used in combination in various ways. All possible combinations and sub-combinations are intended to fall within the scope of the present disclosure. In addition, in some embodiments, certain method or process blocks can be omitted. The methods and processes described herein are also not limited to any particular order, and the blocks or states associated therewith can be performed in other appropriate orders. For example, the blocks or states described can be performed in an order other than the specifically disclosed order, or multiple blocks or states can be combined into a single block or state. Example blocks or states can be performed serially, in parallel, or in some other way. Blocks or states can be added to the disclosed examples or removed from the disclosed examples. Similarly, the example systems and components described herein can be configured differently from those described. For example, compared to the disclosed examples, elements can be added, removed, or rearranged.

Claims

1. A keyboard system, comprising: A plurality of hybrid key structures, wherein the plurality of hybrid key structures are arranged in the form of an array, wherein the array includes a plurality of sub-arrays, Wherein, each of the plurality of key structures is configured in any sub-array of the plurality of sub-arrays, and includes: Depressible components; a first type key switch configured to generate a first signal when the depressible element is activated; and a second type key switch configured to generate a second signal when the depressible element is activated; and one or more processors, the one or more processors being communicatively coupled to each of the plurality of hybrid key structures and configured to: receiving a first signal from the activated hybrid key structure when a corresponding depressible element of the activated hybrid key structure is activated; Determining a corresponding subarray configured with the activated hybrid key structure; Scanning the corresponding sub-array according to the generated second signal; detecting the generated second signal from the corresponding subarray; identifying the activated hybrid key structure based on the detected generated second signal; and A key press is registered with respect to the identified activated hybrid key structure.

2. The keyboard system according to claim 1, wherein: The first type key switch is a contact-based key switch, and wherein the second type key switch is a non-contact key switch.

3. The keyboard system according to claim 1, wherein: The first type of key switch is a current mechanical key switch, and Wherein, the second type key switch is an optical key switch.

4. The keyboard system according to claim 1, wherein: Scanning the corresponding sub-array includes driving a second-type key switch in each hybrid key structure in the hybrid key structure in the corresponding sub-array according to the generated second signal and reading an output of the second-type key switch.

5. The keyboard system according to claim 4, wherein: Scanning the corresponding sub-array to detect the corresponding second signal is performed in response to receiving the first signal.

6. The keyboard system according to claim 5, wherein: The power consumed to generate the first signal is less than one tenth of the power consumed to generate the second signal.

7. The keyboard system according to claim 1, wherein: The keyboard system generates a radio frequency (RF) report having key press data including all identified activated hybrid key structures within a scan cycle consisting of a plurality of scan intervals, The corresponding subarray is scanned during a scanning interval among the plurality of scanning intervals that is closest in time to the generation of a next radio frequency report.

8. The keyboard system according to claim 1, wherein: The array comprises rows and columns, Each column includes multiple rows of mixed key structures. wherein each column corresponds to a subarray of the plurality of subarrays, and Each column corresponds to a subarray in the plurality of subarrays that is different from the remaining columns.

9. The key system according to claim 8 further includes a multiplexer (MUX), which is configured to combine the total number of rows and columns by sharing the same rows and columns, thereby reducing the number of input / output (I / O) lines in the keyboard system.

10. The keyboard system according to claim 1, wherein: The one or more processors are disposed in the keyboard system.

11. A method for operating an input device, the method comprising: Receiving, by one or more processors on the input device, a first signal from one of a plurality of sub-arrays, each of the plurality of sub-arrays comprising a plurality of hybrid key structures of a different group, each of the plurality of hybrid key structures comprising a first type of key switch and a second type of key switch, wherein the first signal is generated by a first type of key switch of at least one of the plurality of hybrid key structures of one of the plurality of sub-arrays, wherein the plurality of sub-arrays are combined to form an array; identifying the one of the plurality of subarrays that generates the first signal; scanning the identified one of the plurality of subarrays for a second signal generated by the second type key switch; detecting the generated second signal from the identified one of the plurality of subarrays; identifying an activated key structure that generates the generated second signal; and A key press is registered with respect to the identified activated key structure.

12. The method of claim 11, wherein the first type of key switch is a contact-based key switch, and in, The second type key switch is a non-contact key switch.

13. The method according to claim 11, wherein: The first type of key switch is a current mechanical key switch, and Wherein, the second type key switch is an optical key switch.

14. The method according to claim 11, wherein: The second type key switch is different from the first type key switch.

15. The method according to claim 11, wherein: Scanning the identified one of the multiple subarrays includes driving the second type key switch in each hybrid key structure in the hybrid key structure in the identified one of the multiple subarrays in response to the generated second signal and reading the output of the second type key switch.

16. The method according to claim 11, wherein: Scanning the identified one of the plurality of subarrays to detect the detected generated second signal is performed in response to receiving the first signal.

17. The method according to claim 11, wherein: The input device generates a radio frequency (RF) report having key press data including all identified activated hybrid key structures within a scan cycle consisting of a plurality of scan intervals, The corresponding subarray is scanned during a scanning interval among the plurality of scanning intervals that is closest in time to the generation of a next radio frequency report.

18. The method according to claim 11, wherein: The array comprises rows and columns, Each column includes multiple rows of mixed key structures. wherein each column corresponds to a subarray of the plurality of subarrays, and Each column corresponds to a subarray in the plurality of subarrays that is different from the remaining columns.

19. The method according to claim 11, wherein: The one or more processors are disposed in the input device.

20. The method according to claim 11, wherein: The input device is a keyboard.

Citation Information

Patent Citations

  • Input device and method of operating input device

    CN114461080A

  • Multi-mode keyboard driving chip and keyboard

    CN217484846U

  • Hybrid switch for an input device

    US11150741B1

  • Methods and apparatus for adaptive keyboard scanning

    US20220206591A1