Keyboard feedback control method

By acquiring the travel data and movement speed of the keyboard keys, the output of the feedback device is dynamically controlled, solving the problem of the single feedback of existing keyboards and improving the user experience.

CN122331778BActive Publication Date: 2026-08-04SHENZHEN LINGDIANLINGYI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN LINGDIANLINGYI TECH CO LTD
Filing Date
2026-06-05
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Current keyboard feedback methods are limited, usually involving only one of vibration or sound, and there is no correlation between the feedback effect and the user's typing force. The user receives basically the same feedback effect whether the key is light or heavy.

Method used

By acquiring the travel data of keyboard keys, calculating the pressing speed, and determining the feedback parameters based on the trend analysis results, the vibration device, sound playback device, and light-emitting device are controlled to generate dynamic feedback, simulating the impact experience of real physical keys.

Benefits of technology

It achieves diverse and dynamic keyboard feedback, which can more accurately simulate the user's pressing intentions, improving user interaction satisfaction and operation confirmation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122331778B_ABST
    Figure CN122331778B_ABST
Patent Text Reader

Abstract

This application relates to a keyboard feedback control method, comprising: acquiring travel data of keys on the keyboard during the pressing process when a user types on the keyboard; calculating the pressing speed of the keys based on the travel data; determining a feedback parameter corresponding to the pressing speed based on the pressing speed; and controlling one or more feedback devices on the keyboard to generate feedback based on the feedback parameter, wherein the feedback device includes at least one of a vibration device, a sound playback device, and a light-emitting device. The above keyboard feedback control method, by acquiring key travel data and calculating the pressing speed, determining the corresponding feedback parameter based on the pressing speed, and ultimately controlling the vibration device, sound playback device, and light-emitting device to generate dynamic feedback, can more comprehensively simulate the impact experience of real physical keys, improving user interaction satisfaction and operational confirmation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of human-computer interaction technology, and in particular to a keyboard feedback control method. Background Technology

[0002] Existing keyboards all have physical keys. When a user types on the keyboard, the physical keys vibrate due to their rebound. The vibration is transmitted to the user through the fingers. At the same time, the sound produced when typing on the keyboard is transmitted through the air to the user and other people in the surrounding environment.

[0003] Existing solutions offer limited feedback, typically involving only one of vibration or sound, and there's a lack of correlation between the feedback effect and the force of the user's tap. Whether the user taps lightly or heavily, the feedback is essentially the same. Summary of the Invention

[0004] Therefore, it is necessary to provide a keyboard feedback control method.

[0005] A keyboard feedback control method, comprising:

[0006] When a user types on the keyboard, the travel data of the keys on the keyboard during the pressing process is obtained;

[0007] Based on the travel data, the pressing speed of the button is calculated. The pressing process includes multiple travel segments, and the pressing speed includes multiple segment speeds.

[0008] Perform trend analysis on the movement speed of the multiple segments corresponding to the multiple travel segments, and determine the feedback parameters corresponding to the movement speed based on the trend analysis results;

[0009] Based on the feedback parameters, one or more feedback devices on the keyboard are controlled to generate feedback, wherein the feedback devices include at least one of a vibration device, a sound playback device, and a light-emitting device.

[0010] In another embodiment, determining the feedback parameter corresponding to the motion speed based on the trend analysis result includes:

[0011] If the trend analysis results show that the movement speed of the multiple paragraphs is increasing, then the feedback parameter is determined to be a first type of feedback parameter.

[0012] If the trend analysis results indicate that the movement speed of the multiple paragraphs is decreasing, the feedback parameter is determined to be a second type of feedback parameter; the first type of feedback parameter is greater than the second type of feedback parameter.

[0013] In another embodiment, calculating the movement speed of the button based on the travel data includes:

[0014] Divide at least a portion of the travel of the button into multiple travel segments;

[0015] The segment movement speed of each segment is obtained based on the travel data.

[0016] In another embodiment, the travel data includes the displacement data of the button and the voltage data of the Hall sensor;

[0017] The method of obtaining the paragraph movement speed of each paragraph includes at least one of the following:

[0018] The speed of movement of each segment is calculated based on the change in displacement data and the change in time within each segment.

[0019] The movement speed of each segment is determined based on the change in voltage data, the change in time, and a preset conversion coefficient within each segment.

[0020] The voltage data within each segment is integrated to obtain magnetic flux data, and the movement speed of the segment is determined based on the change in magnetic flux data and the change in time.

[0021] In another embodiment, obtaining the paragraph movement speed of each paragraph further includes:

[0022] The first displacement data is obtained through the main Hall sensor, the second displacement data is obtained through the auxiliary Hall sensor, and the temperature data is obtained through the temperature sensor.

[0023] Establish a state equation with button position and velocity as state vectors, and an observation equation with the first displacement data and the second displacement data as observation vectors;

[0024] The Kalman filter algorithm is used to correct the observation vector with the temperature data, and the first displacement data and the second displacement data are fused to calculate the segment movement speed.

[0025] In another embodiment, the keyboard's operating mode includes a quick-trigger mode, wherein dividing a portion of the key travel into multiple segments includes:

[0026] The effective sampling range is dynamically determined based on the release position of the button and the direction of the subsequent press.

[0027] The travel distance is divided into multiple segments within the effective acquisition range.

[0028] In another embodiment, obtaining the paragraph movement speed of each paragraph further includes:

[0029] For each paragraph, determine whether the paragraph's movement speed or displacement change rate exceeds a preset effective trigger threshold;

[0030] Paragraphs exceeding the effective trigger threshold are marked as valid samples;

[0031] The pressing speed is obtained by weighted averaging of the segment movement speeds of the valid samples.

[0032] In another embodiment, it further includes:

[0033] Before the travel of the key reaches the final trigger point, the feedback parameters are predetermined based on the acquired segment movement speed, and corresponding control commands are generated and stored in the cache queue.

[0034] When the button is detected to have reached the final trigger point, the control command is retrieved from the buffer queue and executed to drive the feedback device to generate the dynamic feedback.

[0035] In another embodiment, the feedback parameters include at least one of vibration intensity, sound loudness, sound effect type, light brightness, light color, and light flashing frequency.

[0036] A keyboard, comprising:

[0037] At least one button;

[0038] A sensing component for acquiring travel data of the button;

[0039] One or more feedback devices, including at least one of a vibration device, a sound playback device, and a light emission device;

[0040] The controller, connected to the sensing components and feedback devices, is configured to perform the method as described in any of the above embodiments.

[0041] The aforementioned keyboard feedback control method acquires key travel data and calculates the pressing speed, determines the corresponding feedback parameters based on the speed, and ultimately controls the vibration device, sound playback device, and light-emitting device to generate dynamic feedback. This method can more comprehensively simulate the impact experience of real physical keys, improving user interaction satisfaction and operational confirmation. Attached Figure Description

[0042] To more clearly illustrate the technical solutions in the embodiments of this application or the conventional technology, the drawings used in the description of the embodiments or the conventional technology will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0043] Figure 1 This is a schematic flowchart of a keyboard feedback control method according to one embodiment;

[0044] Figure 2 This is a schematic diagram of a keyboard feedback control method according to another embodiment;

[0045] Figure 3 This is a schematic diagram of a keyboard feedback control method according to another embodiment;

[0046] Figure 4 This is a schematic diagram of a keyboard feedback control method according to another embodiment;

[0047] Figure 5 This is a schematic diagram of a keyboard feedback control method according to another embodiment;

[0048] Figure 6 This is a schematic diagram of a keyboard feedback control method according to another embodiment;

[0049] Figure 7 This is a schematic diagram of a keyboard feedback control method according to another embodiment. Detailed Implementation

[0050] To facilitate understanding of this application, a more complete description will be provided below with reference to the accompanying drawings, which illustrate embodiments of the present application. However, the present application can be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided so that the disclosure of this application will be thorough and complete.

[0051] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application.

[0052] It is understood that the terms "first," "second," etc., used herein may be used to describe various elements, but these elements are not limited by these terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of this application, a first resistor may be referred to as a second resistor, and similarly, a second resistor may be referred to as a first resistor. Both the first resistor and the second resistor are resistors, but they are not the same resistor.

[0053] It is understood that the term "connection" in the following embodiments should be understood as "electrical connection," "communication connection," etc., if the connected circuits, modules, units, etc., have electrical signal or data transmission with each other.

[0054] It is understandable that "multiple" refers to two or more. "At least part of an element" refers to part or all of an element.

[0055] When used herein, the singular forms of “a,” “an,” and “the” may also include the plural forms unless the context clearly indicates otherwise. It should also be understood that the terms “comprising / including” or “having,” etc., specify the presence of the stated features, wholes, steps, operations, components, parts, or combinations thereof, but do not preclude the possibility of the presence or addition of one or more other features, wholes, steps, operations, components, parts, or combinations thereof. Meanwhile, the term “and / or” as used in this specification includes any and all combinations of the associated listed items.

[0056] This application proposes a keyboard feedback control method, such as... Figure 1 As shown, it includes steps 101, 102, 103 and 104.

[0057] Step 101: When the user types on the keyboard, acquire the travel data of the keys on the keyboard during the pressing process.

[0058] When a user presses a key, the key's pivot moves downwards. The system uses a displacement detection element on the key to acquire travel data during this pressing process. This travel data reflects the depth of the key's downward pressure from one position to another, such as the displacement from the initial position of the keyboard to the lowest position the key can reach. The displacement detection element can be a Hall sensor, where the system acquires travel data by reading the displacement of a magnet on the key's pivot; alternatively, it can be an inductive sensor or a photoelectric sensor, etc., and this embodiment is not limited to any particular type.

[0059] Step 102: Calculate the pressing speed of the button based on the travel data. The pressing process includes multiple travel segments, and the pressing speed includes multiple segment speeds.

[0060] The system obtains the real-time pressing speed of the keys based on the acquired travel data and time data from the system's built-in clock. This pressing speed reflects the speed at which the user types on the keyboard. For example, the amount of displacement change of the key pressed per unit time can be recorded. By dividing the displacement change by the corresponding time change, the real-time pressing speed of the key can be obtained. This embodiment does not impose specific limitations.

[0061] The pressing process includes multiple stroke segments, and the pressing speed includes multiple segment speeds. In some optional embodiments, there may be 5 stroke segments, and the corresponding segment speeds may be denoted as V1, V2, V3, V4, and V5.

[0062] Step 103: Perform trend analysis on the movement speed of the multiple segments corresponding to the multiple travel segments, and determine the feedback parameters corresponding to the movement speed based on the trend analysis results.

[0063] During the acquisition of the motion speed of each paragraph, the system continuously compares the acquired paragraph motion speeds. For example, while acquiring V3, the system also compares V1 and V2. After acquiring the motion speeds of the five paragraphs, the system integrates the speed comparison results between each paragraph to determine the changing trend of the motion speeds of multiple paragraphs. Based on the obtained speed changing trend, the system generates corresponding feedback parameters.

[0064] Step 104: Based on the feedback parameters, control one or more feedback devices on the keyboard to generate feedback, wherein the feedback devices include at least one of a vibration device, a sound playback device, and a light-emitting device.

[0065] After determining the feedback parameters, the system sends them to the feedback device. Taking a vibration device, a sound playback device, and a light-emitting device as examples, the system sends a pulse width modulation (PWM) signal to the vibration motor to control the vibration intensity; sends an audio signal to the sound playback device, such as a speaker, to control the playback volume; and sends a PWM signal to the light-emitting device, such as a light-emitting diode, to control the brightness.

[0066] The keyboard feedback control method provided in this embodiment acquires the travel data of the keys and calculates the pressing speed. Based on the speed, it determines the corresponding feedback parameters and ultimately controls the vibration device, sound playback device, and light-emitting device to generate dynamic feedback. This method can more comprehensively simulate the impact experience of real physical keys, improve user interaction satisfaction and operation confirmation, and avoid the problems of single keyboard feedback and inability to dynamically change with the force of keystrokes in the prior art.

[0067] In another embodiment, such as Figure 2 As shown, determining the feedback parameters corresponding to the motion speed based on the trend analysis results includes steps 2021 and 2022.

[0068] Step 2021: If the trend analysis results show that the movement speed of the multiple paragraphs is increasing, then the feedback parameter is determined to be a first type of feedback parameter.

[0069] If the trend analysis results show that the movement speed of multiple paragraphs is increasing, such as when the number of paragraphs satisfying Vn>Vn-1 reaches a preset proportion, or when multiple consecutive paragraphs satisfy Vn>Vn-1, the system will determine that the user is continuously pressing the keyboard. At this time, the system will call the first type of feedback parameter.

[0070] Step 2022: If the trend analysis results show that the movement speed of the multiple paragraphs is decreasing, then the feedback parameter is determined to be a second type of feedback parameter.

[0071] If the trend analysis results show that the movement speed of multiple paragraphs is decreasing, for example, if the number of paragraphs that satisfy Vn < Vn-1 reaches a preset proportion, or if multiple consecutive paragraphs satisfy Vn < Vn-1, the system determines that the user's pressing force is insufficient and the impact force is weakened. At this time, the system will call the second type of feedback parameter.

[0072] The feedback parameter of the first type is greater than the feedback parameter of the second type.

[0073] When the system determines that the user is continuously applying force when typing on the keyboard, it will output the first type of feedback parameter to simulate the strong feedback feeling of a heavy impact in real physical impact. When the system determines that the user's pressing force is insufficient and the impact force is weakened, it will output a smaller feedback parameter than the first type to match the gentle feedback feeling of the user's light-force typing.

[0074] This embodiment judges the user's keystroke behavior by segmenting the stroke and comparing the speed trend of the corresponding segments. Different types of feedback can be generated according to different behaviors, which can accurately identify the user's pressing intention, making the sensory feedback of the keyboard more in line with the user's actual operation and improving the user experience.

[0075] In other embodiments, the system can also average the movement speeds of multiple segments. Taking the aforementioned embodiment as an example, the average speed is the arithmetic mean of V1-V5. A higher average speed corresponds to a higher feedback intensity; a lower average speed corresponds to a lower feedback intensity. The system can select either a trend analysis mode or an average calculation mode, or a combination of both, based on the actual application scenario and user needs, to more accurately reflect the user's tapping force.

[0076] In another embodiment, such as Figure 3 As shown, the step of calculating the movement speed of the button based on the travel data includes steps 301 and 302.

[0077] Step 301: Divide at least a portion of the travel of the button into multiple travel segments.

[0078] For example, the total travel distance of a key from its initial position to its lowest reach can be divided into five segments. Alternatively, depending on actual needs, only a portion of the key travel can be divided into multiple segments. For magnetic axis keyboards, the travel distance can also be divided into multiple segments within a dynamically determined effective acquisition range. This embodiment does not limit the specific number or method of segmentation.

[0079] Step 302: Obtain the segment movement speed of each segment based on the travel data.

[0080] For the multiple travel segments divided in step 301, the system obtains the segment movement speed of each segment based on the travel data. The system records the time it takes for the key to pass through the start and end positions of each segment, and calculates the average movement speed of the segment based on the travel change and time change. For example, if the travel change from the start to the end of the first segment is denoted as Δx1, and the corresponding time change is denoted as Δt1, then the segment movement speed of the first segment at this time is V1 = Δx1 / Δt1. Similarly, the movement speeds of multiple segments such as V2, V3, V4, and V5 can be obtained.

[0081] The system then performs trend analysis steps 202 and 203 on the segment movement speed obtained in the above steps, and determines the corresponding feedback parameter type based on the speed change trend in order to generate dynamic feedback that matches the user's tapping force.

[0082] This embodiment divides the key travel into multiple segments and obtains the movement speed of each segment, which can more accurately capture the speed changes of the user at different stages during the pressing process, providing a data foundation for subsequent trend analysis.

[0083] In another embodiment, the travel data includes the displacement data of the button and the voltage data of the Hall sensor.

[0084] The method of obtaining the paragraph movement speed of each paragraph includes at least one of the following:

[0085] The speed of movement of each segment is calculated based on the change in displacement data and the change in time within each segment.

[0086] In some embodiments, displacement data is obtained by: a Hall sensor outputting a voltage signal linearly related to the button displacement, with each button position corresponding to a specific voltage value. The controller converts the voltage values ​​corresponding to the start and end positions of each segment into displacement values ​​using a pre-calibrated voltage-displacement relationship V=k·x.

[0087] Specifically, the system records the voltage value and time corresponding to the start and end positions of each segment when the button is pressed. For example, when the button enters a certain segment, the Hall sensor outputs a voltage of V1, corresponding to the coordinates of the position. =V1 / k, time t1; when leaving this section, the voltage output by the Hall sensor is V2, corresponding to the position coordinates are... =V2 / k, time is t2. Then the displacement change of this segment is Δx=x2-x1, the time change is Δt=t2-t1, and the segment's velocity is v=Δx / Δt.

[0088] The movement speed of each segment is determined based on the change in voltage data, the change in time, and a preset conversion coefficient within each segment.

[0089] The system acquires the continuous voltage signal output by the Hall sensor on the button. When the button is pressed, the Hall sensor detects the change in magnetic field strength and outputs a voltage signal V(t) that is linearly related to the displacement of the magnet.

[0090] The system calculates the voltage difference between adjacent sampling points. and time difference For example, at two adjacent sampling times and The voltages output by the Hall sensor are respectively and Then the voltage difference Time difference The controller calculates the rate of voltage change. And based on the preset conversion coefficient α, the voltage change rate is converted into the paragraph movement speed of that paragraph, that is... ,in The sensitivity coefficient and magnetic field distribution characteristics of the Hall sensor determine the appropriate system selection for different buttons or sensors. It will be different.

[0091] To improve accuracy, the following optimization schemes may also be adopted:

[0092] 1. The central difference method is used instead of the simple backward difference method to improve the calculation accuracy. The calculation method is as follows:

[0093]

[0094] 2. Before calculating the rate of change of voltage, the continuous voltage signal output by the Hall sensor can be low-pass filtered to eliminate high-frequency noise. For example, a moving average filter can be used to smooth the voltage signal.

[0095]

[0096] The voltage data within each segment is integrated to obtain magnetic flux data, and the movement speed of the segment is determined based on the change in magnetic flux data and the change in time.

[0097] According to Faraday's law of electromagnetic induction, the voltage V output by the Hall sensor is equal to the negative of the rate of change of magnetic flux: V = Therefore, magnetic flux The controller integrates the voltage signal within each segment to obtain the corresponding change in magnetic flux for that segment. .

[0098] The system is based on the change in magnetic flux data and time change Calculate the rate of change of magnetic flux Since the rate of change of magnetic flux is proportional to the speed of button movement, the system determines the speed of movement for that segment based on this.

[0099] The three methods described above can be used individually or in combination. For example, different calculation methods can be used for different travel segments, or the calculation results from multiple methods can be weighted and combined to improve the accuracy and stability of speed detection.

[0100] This embodiment provides two types of travel data—displacement data and voltage data—and three methods for calculating segment movement speed based on displacement-time relationship, voltage change rate, and magnetic flux integral. This allows the system to flexibly select or combine different speed acquisition methods according to actual application scenarios and hardware conditions, effectively improving the flexibility of key movement speed detection.

[0101] In another embodiment, such as Figure 4 As shown, step 302 also includes steps 401 and 402.

[0102] Step 401: Obtain first displacement data through the main Hall sensor, obtain second displacement data through the auxiliary Hall sensor, and obtain temperature data through the temperature sensor.

[0103] The main Hall sensor is used for basic position detection, the auxiliary Hall sensor is used for speed verification, and the temperature sensor is used for temperature compensation to overcome the detection error caused by temperature drift of the Hall sensor.

[0104] Establish a state equation with button position and velocity as state vectors, and an observation equation with the first displacement data and the second displacement data as observation vectors.

[0105] The state equation uses the button position and speed as state variables and the finger pressure as input. In actual use, the input can be approximated as zero, while also incorporating random disturbances caused by mechanical structure vibrations.

[0106] The observation equation uses the first and second displacement data corrected by temperature data as the observation vectors, and the observation process includes random electronic noise generated by the sensor.

[0107] Step 402: Using the Kalman filter algorithm, the observation vector is corrected with the temperature data, and the first displacement data and the second displacement data are fused to calculate the segment movement speed.

[0108] The Kalman filter algorithm iteratively follows these two steps:

[0109] The prior state estimate for the current moment is calculated based on the optimal state estimate from the previous moment. Simultaneously, the prior error covariance estimate for the current moment is predicted based on the state transition matrix and the process noise covariance matrix.

[0110] The Kalman gain is calculated by combining the temperature-compensated observation vector, observation matrix, and measurement noise covariance matrix at the current moment. The Kalman gain balances the weights of model predictions and sensor observations. When sensor noise is high, the Kalman gain automatically decreases, and the algorithm tends to trust the predictions more; when sensor noise is low, the Kalman gain automatically increases, and the algorithm tends to trust the observations more. Based on the Kalman gain, the algorithm corrects the prior state estimates to obtain the optimal state estimate at the current moment and updates the error covariance matrix for use in the next iteration.

[0111] Through the aforementioned prediction-update recursive process, the Kalman filter algorithm can output the optimal state vector estimate at each sampling time. The velocity component in the state vector represents the instantaneous velocity at that sampling time.

[0112] Through the multi-sensor data fusion method in this embodiment, the system can effectively compensate for the measurement noise and temperature drift of a single sensor, and improve the detection accuracy of button movement speed and long-term stability.

[0113] In another embodiment, the keyboard's operating mode includes a quick-trigger mode, wherein, in the quick-trigger mode, such as Figure 5 As shown, step 301 includes: step 501 and step 502.

[0114] Step 501: Dynamically determine the effective acquisition range based on the release position of the button and the direction of the subsequent press.

[0115] In rapid trigger mode, the button's trigger travel is short, and users may press and release the button rapidly and continuously within a very short time. The fixed segmentation method of the aforementioned embodiment may render the acquisition of some segments, such as those after the trigger point, meaningless in rapid trigger mode. Therefore, this embodiment adopts a dynamic method to determine the effective acquisition interval. In rapid trigger mode, assuming the trigger travel is set to segment 2, the initial trigger travel, i.e., from segment 0 to segment 2, is a non-trigger interval, and the entire travel between segments 0 and 2 is a speed scan interval. When the trigger point passes through segment 2, the system has already completed speed acquisition and response; any point between segment 2 and segment 5 is meaningless for speed acquisition. For example, when the button's landing point reaches segment 4, the user releases the button to return to segment 3.5, and then presses it again to segment 4.6. In this case, the system dynamically determines the effective acquisition interval as between segment 3.5 and segment 4.5, acquires speed within this interval, retrieves feedback parameters before reaching segment 4.5, and releases the button upon reaching segment 4.5.

[0116] Step 502: Divide the travel into multiple segments within the effective acquisition range.

[0117] The system divides the journey into multiple segments only within the dynamically determined effective acquisition range and acquires the movement speed of each segment. The speed of the journey segments outside the effective acquisition range is not acquired.

[0118] This embodiment dynamically determines the effective acquisition interval in the fast trigger mode, avoiding the acquisition and processing of data from invalid travel segments, improving system response speed and processing efficiency, while ensuring the accuracy and timeliness of feedback in fast and continuous trigger scenarios.

[0119] In another embodiment, such as Figure 6 As shown, obtaining the paragraph movement speed of each paragraph further includes steps 601, 602, and 603.

[0120] Step 601: For each paragraph, determine whether the paragraph's movement speed or displacement change rate exceeds a preset effective trigger threshold.

[0121] For each segment within the dynamically determined effective acquisition range, the system determines whether the segment's movement speed or displacement change rate exceeds a preset effective trigger threshold. This effective trigger threshold is a pre-set lower speed limit; only when this threshold is exceeded is the press considered valid; otherwise, it is considered invalid shaking or easing.

[0122] Step 602: Mark paragraphs that exceed the effective trigger threshold as valid samples.

[0123] For example, the dynamically determined effective acquisition interval is divided into three segments with movement speeds of V1, V2, and V3. The system determines whether V1, V2, and V3 exceed the effective trigger threshold. If V1 and V3 exceed the threshold, they are marked as valid samples; if V2 does not exceed the threshold, it is considered invalid jitter data and is not included in subsequent calculations.

[0124] Step 603: Calculate the weighted average of the segment movement speeds of the valid samples to obtain the pressing movement speed.

[0125] Continuing with the example provided in the previous step, let's assume... and For a valid sample, the corresponding weights are as follows: and Then the reference impact velocity .in, The value can be set to greater than Because the later paragraphs are closer to the trigger point, their speed better reflects the final pressing speed.

[0126] This embodiment introduces a quick trigger condition filtering and weighted average mechanism in quick trigger mode, which can effectively distinguish between valid presses and invalid jitters, avoiding false triggers. At the same time, by calculating the weighted average of valid samples, it more accurately reflects the user's pressing speed, improving the accuracy of feedback and user experience in quick trigger mode.

[0127] In another embodiment, such as Figure 7 As shown, it also includes steps 701 and 702.

[0128] Step 701: Before the travel of the button reaches the final trigger point, the feedback parameters are predetermined based on the acquired segment movement speed, and corresponding control commands are generated and stored in the cache queue.

[0129] For example, if the entire travel distance from the initial position on the keyboard to the lowest reachable point of the key is divided into 5 segments, and the final trigger point is at the end of the 5th segment, the system will acquire the movement speed of the four segments (V1-V4) before reaching the final trigger point. In this case, the system can pre-determine the feedback parameters based on the changing trends or average speeds of the four speeds (V1-V4). Similarly, if only a portion of the travel distance is divided into 5 segments, the system can determine the feedback parameters based on the changing trends or average speeds of all 5 segments (V1-V5). After confirming the feedback parameters, the system first generates the corresponding control command and stores it in the buffer queue.

[0130] Step 702: When the button is detected to have reached the final trigger point, the control command is extracted from the buffer queue and executed to drive the feedback device to generate the dynamic feedback.

[0131] When the key reaches its final trigger point, the system directly retrieves the previously generated control command from the buffer queue and uses it to drive the feedback device to generate dynamic feedback. Compared to the traditional "trigger first, calculate then provide feedback" approach, directly retrieving the command from the buffer queue reduces latency and improves the synchronization between the user's keystrokes and the feedback.

[0132] This embodiment confirms the feedback parameters and stores the corresponding control commands in the cache queue before reaching the final trigger point. When the key reaches the final trigger point, the control commands are directly retrieved and executed. This effectively reduces the delay caused by recalculating the feedback parameters when reaching the final trigger point, making the user's tapping action synchronized with the generated feedback, thus improving the user experience.

[0133] In another embodiment, the feedback parameters include at least one of vibration intensity, sound loudness, sound effect type, light brightness, light color, and light flashing frequency.

[0134] In some alternative embodiments, the greater the movement speed, the higher the corresponding feedback intensity. For example, when the system determines that the user presses the button quickly and forcefully, the system determines higher intensity feedback parameters, such as stronger vibration, warmer tint of light, brighter and higher flashing frequency of light, higher frequency sound effects, and louder sound. When the system determines that the user presses the button lightly, the system determines lower intensity feedback parameters, such as weaker vibration, cooler tint of light, lower brightness and lower flashing frequency of light, lower frequency sound effects, and lower loudness.

[0135] This embodiment provides feedback to the user from multiple aspects, including tactile, auditory, and visual, corresponding to the movement speed of the key press by specifying the feedback parameters as at least one of vibration intensity, sound loudness, sound effect type, light brightness, light color, and light flashing frequency, thereby improving the user experience.

[0136] This application also proposes a keyboard, comprising:

[0137] At least one button.

[0138] A sensing component is used to detect the displacement of the button in order to obtain the travel data of the button.

[0139] In some embodiments, the sensing component employs a linearly calibrable triggering scheme, such as a Hall effect magnetic axis or an inductive axis. The Hall effect magnetic axis acquires travel data by detecting changes in the magnetic field caused by the movement of a magnet on the key shaft using a Hall sensor. In other embodiments, the sensing component can be an inductive axis, acquiring travel data by detecting changes in inductance caused by the movement of a metal conductor on the key shaft using an inductive sensor. The sensing component can also be a photoelectric sensor, a capacitive sensor, etc., and this embodiment is not limited to any particular type.

[0140] One or more feedback devices, including at least one of a vibration device, a sound playback device, and a light emission device.

[0141] For example, the vibration device can be a vibration motor, driven by a PWM signal; the sound playback device can be a speaker; and the light-emitting device can be a light-emitting diode, also driven by a PWM signal.

[0142] The controller, connected to the sensing components and feedback devices, is configured to perform the method described in any of the above embodiments.

[0143] The controller can also incorporate various control logics to adapt to different usage scenarios. For example, the controller continuously monitors the user's typing behavior characteristics over a period of time, including the trend of paragraph movement speed and the number of taps. When it detects that the user's paragraph movement speed trend is continuously increasing and the number of taps exceeds a first preset threshold within a preset time period, the system appropriately increases the feedback parameters to match the intensity requirements of the user's rapid tapping; when it detects that the average speed of the user's most frequent taps is low and the number of taps does not exceed a second preset threshold within a preset time period, the system appropriately decreases the feedback parameters to adapt to the input requirements in office scenarios. The controller continuously monitors user behavior to achieve rapid switching between different feedback intensities.

[0144] When a user types on the keyboard, the sensing components acquire the key travel data in real time and send it to the controller. The controller calculates the key travel speed based on the travel data, for example, by dividing the key travel into multiple segments and acquiring the speed of each segment. The controller determines the corresponding feedback parameters based on the speed, for example, by using trend analysis or averaging to determine the type and intensity of the feedback parameters. The controller generates control commands based on the feedback parameters, driving the vibration device, sound playback device, and lighting device to produce dynamic feedback that matches the user's typing force.

[0145] The keyboard in this embodiment, through the combination of the above components, can generate various feedbacks based on the speed of the user's keystrokes, thereby improving the user experience.

[0146] In some other embodiments, the accuracy of the obtained motion speed can be improved in the following ways:

[0147] The controller uses hardware input capture instead of software polling to achieve nanosecond / microsecond level time accuracy; it divides the data into more segments, reducing the distance within each segment to obtain speeds closer to instantaneous speeds; in the Hall sensor solution, mechanical structure design ensures stable movement trajectory of the key shaft, reducing deviations in magnetic field caused by shaking; and it uses high-precision latching Hall switches.

[0148] In the description of this specification, references to terms such as "some embodiments," "other embodiments," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of this application. In this specification, the illustrative descriptions of the above terms do not necessarily refer to the same embodiments or examples.

[0149] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0150] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these modifications and improvements all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A keyboard feedback control method, characterized by, include: When a user types on the keyboard, the travel data of the keys on the keyboard during the pressing process is obtained; Based on the travel data, the pressing speed of the button is calculated. The pressing process includes multiple travel segments, and the pressing speed includes multiple segment speeds. Perform trend analysis on the movement speed of the multiple segments corresponding to the multiple travel segments, and determine the feedback parameters corresponding to the movement speed based on the trend analysis results; The step of determining the feedback parameters corresponding to the motion speed based on the trend analysis results includes: If the trend analysis results show that the movement speed of the multiple paragraphs is increasing, then the feedback parameter is determined to be a first type of feedback parameter. If the trend analysis results indicate that the movement speed of the multiple paragraphs is decreasing, then the feedback parameter is determined to be a second type of feedback parameter; the first type of feedback parameter is greater than the second type of feedback parameter. The step of calculating the movement speed of the button based on the travel data includes: Divide at least a portion of the travel of the button into multiple travel segments; The segment speed of each segment is obtained based on the travel data; The travel data includes the displacement data of the button and the voltage data of the Hall sensor; The method of obtaining the paragraph movement speed of each paragraph includes at least one of the following: The speed of movement of each segment is calculated based on the change in displacement data and the change in time within each segment. The movement speed of each segment is determined based on the change in voltage data, the change in time, and a preset conversion coefficient within each segment. The voltage data within each segment is integrated to obtain magnetic flux data, and the segment's movement speed is determined based on the change in magnetic flux data and the change over time. The first displacement data is obtained through the main Hall sensor, the second displacement data is obtained through the auxiliary Hall sensor, and the temperature data is obtained through the temperature sensor. Establish a state equation with button position and velocity as state vectors, and an observation equation with the first displacement data and the second displacement data as observation vectors; The Kalman filter algorithm is used to correct the observation vector with the temperature data, and the first displacement data and the second displacement data are fused to calculate the segment movement speed; Based on the feedback parameters, one or more feedback devices on the keyboard are controlled to generate feedback, wherein the feedback devices include at least one of a vibration device, a sound playback device, and a light-emitting device.

2. The method of claim 1, wherein, The keyboard's operating modes include a quick-trigger mode, in which the partial travel of the keystrokes is divided into multiple segments, including: The effective sampling range is dynamically determined based on the release position of the button and the direction of the subsequent press. The travel distance is divided into multiple segments within the effective acquisition range.

3. The method of claim 2, wherein, The step of obtaining the paragraph movement speed of each paragraph further includes: For each paragraph, determine whether the paragraph's movement speed or displacement change rate exceeds a preset effective trigger threshold; Paragraphs exceeding the effective trigger threshold are marked as valid samples; The pressing speed is obtained by weighted averaging of the segment movement speeds of the valid samples.

4. The method of claim 1, wherein, Also includes: Before the travel of the key reaches the final trigger point, the feedback parameters are predetermined based on the acquired segment movement speed, and corresponding control commands are generated and stored in the cache queue. When the button is detected to have reached the final trigger point, the control command is retrieved from the buffer queue and executed to drive the feedback device to generate the feedback.

5. The method of claim 1, wherein, The feedback parameters include at least one of vibration intensity, sound loudness, sound effect type, light brightness, light color, and light flashing frequency.

6. A keyboard, characterized by include: At least one button; A sensing component for acquiring travel data of the button; One or more feedback devices, including at least one of a vibration device, a sound playback device, and a light emission device; The controller, connected to the sensing components and feedback devices, is configured to perform the method as described in any one of claims 1 to 5.