Accurate positioning method and device for air mouse
Through the data fusion and intelligent algorithms of multiple gyroscope sensors, the problem of low positioning accuracy and insufficient compatibility of the air-distance mouse is solved, and higher positioning accuracy and wider application range are achieved.
Patent Information
- Application Number
- CN202411758860.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-03
- Publication Date
- 2025-03-28
AI Technical Summary
The existing air-separated mouse technology has problems such as low positioning accuracy, easy jitter, short battery life, lack of adaptability and insufficient cross-platform compatibility, which affects the user experience.
Multiple gyroscope sensors are used to fusion data, and the attitude data of the air-distance mouse is calculated using complementary filtering algorithms, and the smoothing factor is dynamically adjusted to optimize operation.
It improves the positioning accuracy and stability of the air-distance mouse, enhances the compatibility and versatility of the device, extends the battery life and improves the user experience.
Smart Images

Figure CN119718094A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of human-computer interaction technology, and in particular to a precise positioning method and device for an air mouse. Background Art
[0002] With the development of human-computer interaction technology, air-controlled devices have received more and more attention. As a kind of air-operated device, air mouse is no exception. There are many problems with the existing air mouse technology, which seriously affects the user experience. First, the positioning data of the mouse is obtained by a single sensor. Due to this limitation, the positioning accuracy is not high, and it is difficult to accurately capture the user's subtle movements. Secondly, it is easy to produce obvious jitter during fast movement or complex gesture operations, which affects the smoothness of operation. In addition, high-power sensors and processing chips lead to short battery life. More importantly, most air mice lack adaptive capabilities and cannot automatically adjust according to different display parameters, which reduces the convenience of use. At the same time, many devices lack cross-platform compatibility, making them difficult to use universally, and also limiting the scope of application. Finally, the existing air mouse technology often lacks advanced data fusion and intelligent algorithm support, and cannot effectively cope with complex usage scenarios. To this end, an innovative technical solution is urgently needed to solve the above problems of the existing air mouse technology in order to improve the overall performance and user experience of the air mouse. Summary of the invention
[0003] The purpose of the present invention is to provide a method and device for accurately positioning an air mouse.
[0004] The technical solution to achieve the first object of the present invention is: a method for accurately positioning an air mouse, comprising the following steps: S1. Two or more gyroscope sensors are set in the air mouse, and sensing data of all gyroscope sensors are obtained at a fixed acquisition frequency f, wherein the sensing data of each gyroscope sensor includes angular velocity data of three axes, X, Y, and Z; S2. Preprocessing the sensing data of each gyroscope sensor, including noise reduction processing; S3. The data preprocessed in step S2 are fused; the fusion step comprises: S3.1. Calculating the speed of the air mouse; the steps of calculating the speed of the air mouse include: S3.1.1. Integrate the data preprocessed in step S2 using a numerical integration method to obtain an angle change θ; S3.1.2. Calculate the speed of the air mouse according to the acquisition period T of the gyroscope sensor sensing data and the angle change θ obtained in step S3.1.1. The speed of the air mouse includes the instantaneous angular velocity w and the instantaneous linear velocity v, w=θ / T, v= w*r, where T=1 / f, and r is the rotation radius of the air mouse relative to the user's hand; S3.2. Adjust the smoothing factor. The steps of adjusting the smoothing factor include: S3.2.1. Establish a mapping relationship between the speed of the air mouse and the smoothing factor; S3.2.2. Use interpolation algorithm to achieve continuous change of smoothing factor; S3.2.3. Dynamically adjust the smoothing factor according to the speed of the air mouse calculated in real time in step S3.1.2; S3.3. Perform fusion calculation on the data preprocessed in step S2; the fusion calculation steps include: S3.3.1. Select the smoothing factor adjusted in step S3.2.3, and use the complementary filtering algorithm to perform fusion calculation on the data preprocessed in step S2 to obtain the posture data of the air mouse, and the posture data of the air mouse is represented by quaternion; S3.3.2. Obtain the posture data of the air mouse according to step S3.3.1, determine the position of the air mouse after movement, and calculate the relative displacement D before and after the air mouse movement; S4. According to the display connected to the air mouse, the relative displacement of the air mouse calculated in step S3.3.2 is corrected; the correction step includes: S4.1. Set the initial parameters of the display corresponding to the air mouse, including the initial resolution RE0, the initial size SI0 and the initial dots per inch DPI0; S4.2. Obtaining parameters of the display connected to the air mouse, the parameters of the display connected to the air mouse include the resolution RE, size SI and dots per inch DPI of the display connected to the air mouse; S4.3. Calculate the speed adjustment factor K1, K1=RE / RE0; S4.4. Calculate the sensitivity adjustment factor K2, K2 = (DPI / DPI0) * (SI0 / SI); S4.5. Correct the relative displacement of the air mouse according to the following formula: D1=D*K1*K2; where D1 is the relative displacement of the air mouse after correction; S4.6. According to the corrected relative displacement of the air mouse obtained in step S4.5, the movement trajectory data of the air mouse is obtained.
[0005] S5. Using a perspective projection algorithm or an orthogonal projection algorithm, the relative position of the air mouse on the screen of the connected display is calculated according to the movement trajectory data of the air mouse obtained in step S4.6 to form the mouse coordinate data; S6. Convert the mouse coordinate data obtained in step S5 into a standard mouse event, and send the mouse event so that the mouse cursor operates accordingly on the screen of the connected display.
[0006] Furthermore, in step S2, the noise reduction process is to use a median filter algorithm or a Kalman filter algorithm to remove high-frequency noise in the sensing data.
[0007] Furthermore, in step S2, the preprocessing also includes zero bias correction, and the zero bias correction step is to obtain the zero bias value of the gyroscope sensor through static sampling, and then subtract the corresponding zero bias value from the sensing data of each gyroscope sensor. Zero bias correction can make the sensing data of each gyroscope sensor more accurate.
[0008] Furthermore, in step S2, the preprocessing also includes temperature compensation, and the temperature compensation step is to use the temperature sensor to sense temperature data and correct the sensing data of the gyroscope sensor by a set temperature compensation coefficient. Through temperature compensation, the influence of temperature on the sensing data of the gyroscope sensor can be greatly reduced.
[0009] Furthermore, the numerical integration method in step S3.1.1 is any one of the trapezoidal integration method, the Simpson integration method, the adaptive integration method, the Romberg integration method or the Gauss integration method.
[0010] Furthermore, in step S3.2.1, the mapping relationship between the speed of the air mouse and the smoothing factor is established as follows: When the air mouse speed is less than 10 pixels / second, the smoothing factor is 0.8; When the air mouse speed is greater than 10 pixels / second and less than 50 pixels / second, the smoothing factor is 0.6; When the air mouse speed is greater than 50 pixels / second, the smoothing factor is 0.4.
[0011] Furthermore, in step S3.2.2, the interpolation algorithm is any one of the nearest neighbor interpolation method, the bilinear interpolation method or the cubic spline interpolation method.
[0012] Furthermore, the speed of the air mouse obtained in step S3.1.2 is processed to obtain the acceleration data of the air mouse movement. When performing the fusion calculation in step S3.3.1, the complementary filtering algorithm is used to perform fusion calculation on the data preprocessed in step S2 and the acceleration data of the air mouse movement. In addition to the speed of the air mouse, the acceleration data is also used in the fusion calculation. This setting, on the one hand, the more factors are considered in the fusion calculation, the more accurate the calculation result, and the higher the accuracy of the posture data of the air mouse is finally obtained; on the other hand, the fusion calculation of the acceleration is also convenient in the process of converting the mouse coordinate data into the standard mouse event in step S3.6, and the acceleration curve is applied to realize the simulation of the acceleration, restore the real acceleration effect of the air mouse, and improve the user experience.
[0013] Furthermore, in step S4.2, the parameters of the display to which the air mouse is connected are obtained through the system API or the driver interface.
[0014] Furthermore, when the air mouse is connected to multiple displays, in step S4.2, the parameters of all displays connected to the air mouse are obtained. When the mouse is operated later, the parameters of the corresponding display are selected for calculation according to the display where the current active window is located.
[0015] Furthermore, in step S4.3, the speed adjustment factor includes a speed adjustment factor in the horizontal direction and a speed adjustment factor in the vertical direction. For example, if the set initial resolution RE0 is 1920*1080, and the resolution RE of the display connected to the air mouse is 3840*2160, the speed adjustment factor in the horizontal direction = 3840 / 1920 = 2; the speed adjustment factor in the vertical direction = 2160 / 1080 = 2.
[0016] Furthermore, in step S4.5, after the relative displacement of the air mouse is corrected, the corrected relative displacement of the air mouse is smoothed. The smoothing algorithm is an algorithm such as a Bezier curve or a spline interpolation, and the smoothing process can improve the fluency of the mouse movement.
[0017] Furthermore, in step S6, the mouse events include the operations of moving, clicking, double-clicking, and dragging. Depending on the operating system (such as Windows, macOS, and Linux), the corresponding system API or driver interface is used to send mouse events. For example, in Windows system, the SendInput function or the Windows Input Simulator library can be used; in macOS system, the CGEventCreateMouseEvent and CGEventPost functions can be used; in Linux system, the XTestFakeMotionEvent and XTestFakeButtonEvent functions of the X11 library can be used.
[0018] Furthermore, in step S6, the mouse event is sent using Bluetooth technology, which can not only realize low-power functions, but also realize wireless communication between the air mouse and all connected displays.
[0019] Furthermore, an anti-shake algorithm is added. The anti-shake algorithm delays the execution of the function until the event stops triggering for a certain period of time, thereby avoiding multiple executions of the same operation in a short period of time. The anti-shake algorithm combined with the noise reduction processing in step S2 can effectively filter out tiny unnecessary movements, ensuring that only valid mouse movements are recorded and responded to, thereby improving the mouse positioning accuracy.
[0020] Furthermore, in step S3.3.2, after calculating the relative displacement D before and after the air mouse moves, the movement trajectory and speed change of the air mouse are analyzed to identify the hand recognition of the air mouse; if the hand recognition of the air mouse is recognized, in step S6, the recognized hand recognition of the air mouse is converted into a standard mouse event, and the mouse event is sent to make the mouse cursor operate accordingly on the screen of the connected display. The mouse gesture recognition function is realized, and custom gesture commands are supported, such as drawing a circle to zoom in, drawing a cross to close, etc. This setting can greatly improve the convenience and fun of mouse operation.
[0021] Furthermore, a data buffer mechanism is provided to mitigate the suddenness and unevenness of mouse event arrival, to smooth out data discontinuity caused by communication delay or processing delay, and to improve the continuity and uniformity of mouse cursor operation on the screen of the connected display.
[0022] Furthermore, a feedback mechanism is provided to provide feedback on the operation of the mouse cursor in step S6; the feedback mechanism includes Visual feedback, which is to display the real-time position and movement trajectory of the mouse cursor on the screen of the connected monitor; Audio feedback, play corresponding sound effects when executing mouse events. For example, play corresponding sound effects when clicking, double-clicking, etc. The setting of visual and audio feedback mechanisms can greatly enhance the sense of reality of operation and improve the reliability of operation implementation.
[0023] Furthermore, a calibration mechanism is set to calibrate the mapping relationship between the gyroscope sensor and the screen; the calibration mechanism includes Periodic auto-calibration feature that corrects the gyro sensor and screen mapping relationship by asking the user to point to a specific point on the screen of the connected display; The user-defined calibration function allows users to adjust the sensitivity of the gyroscope sensor and the screen mapping relationship according to their personal habits. The setting of the calibration mechanism can ensure the accuracy of the gyroscope data.
[0024] Furthermore, a performance optimization strategy is set, which includes a dynamic sampling rate adjustment strategy: when the speed of the air mouse is higher than the set value, the acquisition frequency of the gyroscope sensor is increased; when the speed of the air mouse is lower than the set value, the acquisition frequency of the gyroscope sensor is reduced. In this way, while balancing the accuracy of the air mouse, the acquisition frequency of the gyroscope sensor can be automatically reduced after the air mouse has been stationary for a period of time to reduce energy consumption and achieve a low power consumption mode.
[0025] Furthermore, a data anomaly detection mechanism is set up to identify abnormal conditions, such as those caused by hardware failure or communication interruption.
[0026] Furthermore, a fault recovery strategy is set to quickly restore normal working conditions after an abnormal condition is detected.
[0027] Furthermore, a user warning mechanism is provided to remind the user visually or audio-wise when a persistent abnormal condition is detected.
[0028] A second objective of the present invention is to provide a precise positioning device for an air mouse.
[0029] A precise positioning device for an air mouse, comprising: The data acquisition module is used to acquire the sensing data of all gyro sensors, and the sensing data of the gyro sensors includes the angular velocity data of the three axes of X, Y, and Z; A data preprocessing module is used to preprocess the sensing data of each gyroscope sensor, and the preprocessing includes noise reduction processing; A data fusion module is used to perform fusion calculation on each pre-processed data, and to correct and adaptively adjust the relative displacement of the air mouse obtained by the fusion calculation according to the display connected to the air mouse; A coordinate mapping module is used to calculate the relative position of the air mouse on the screen of the connected display, form mouse coordinate data, and map the fused data to the screen coordinate system of the connected display; Output control module, used to convert mouse coordinate data into standard mouse events; Bluetooth communication module for sending mouse events to the connected display.
[0030] The precise positioning method and device of the air mouse of the present invention have the following advantages: 1. By setting more than two gyroscope sensors in the air mouse, the angular velocity signal of the air mouse is sensed in real time, and the data of each gyroscope sensor is fused and calculated using a complementary filtering algorithm to obtain the relative displacement D before and after the air mouse moves, and the data source of the mouse operation is realized after screen coordinate mapping. The data source comes from the sensing data of multiple gyroscope sensors, and does not rely on a single gyroscope sensor. Its data source is more stable and reliable. After the sensing data of multiple gyroscope sensors are fused and calculated by a complementary filtering algorithm, each sensing data is fused while also achieving "complementarity". After the "complementary" fusion, the relative displacement D before and after the air mouse moves does not rely on the sensing data of a single gyroscope sensor, but is the result of balanced calculation and integration of the sensing data of all gyroscope sensors. It avoids the abnormal problem of the sensing data of a single gyroscope sensor, reduces the drift and jitter caused by the error of a single gyroscope sensor, greatly improves the accuracy, precision and stability of the air mouse positioning, improves the smoothness of the operation, and solves the jitter and inaccurate positioning problems of the existing air mouse; 2. When performing fusion calculation on the sensing data of multiple gyroscope sensors, the smoothing factor of the complementary filtering algorithm is dynamically adjusted according to the speed of the gyroscope sensor. Under this setting, firstly, the fusion calculation of the sensing data of the gyroscope sensor is not fixed, but adjustable, and the application flexibility is higher; secondly, when adjusting the smoothing factor of the complementary filtering algorithm according to the speed of the air mouse, the adjustable fusion calculation is directly linked to the speed of the air mouse, so that the fusion calculation is dynamically adjusted with the speed of the air mouse, providing different fusion mechanisms for the air mouse at different moving speeds, so as to optimize the mouse operation through complementary filtering algorithms with different smoothing factors for different moving speeds of the air mouse. For example, when the air mouse moves at a low speed, a higher smoothing factor helps to reduce jitter and ensure the stability of the operation; when the air mouse moves at a high speed, reducing the smoothing factor can enhance the sensitivity of the mouse and improve the user's operating experience. In other words, through this dynamic adjustment mechanism, different operating requirements can be effectively adapted to improve the positioning accuracy and response speed of the air mouse; 3. According to the display connected to the air mouse, the relative displacement of the air mouse is corrected through an intelligent algorithm to achieve adaptive adjustment of different screen parameters, so that the corrected data can adapt to different displays and complete intelligent adaptation of different screen parameters. It greatly enhances the compatibility of the device and improves the versatility of the device. It can support various operating systems and meet the user's usage needs in various devices and scenarios. 4. When correcting the relative displacement of the air mouse, the main parameters of the display (resolution, size and dots per inch) are used in the correction calculation. The factors considered are more comprehensive, and the modified results are more accurate, and the air mouse is better adapted to the connected display; 5. The precise positioning method and device of the air mouse of the present invention significantly improves the positioning accuracy and stability of the air mouse through the fusion and adaptive algorithm of multiple gyroscope sensor data, solves the jitter and inaccuracy problems of the existing air mouse, and completes the intelligent adaptation of different screen parameters, greatly improving the versatility of the device, achieving cross-platform compatibility, supporting a variety of mainstream operating systems, and greatly expanding the scope of application. These settings combined provide users with a smooth and intuitive human-computer interaction experience, making the present invention suitable for various complex operating scenarios, greatly improving the practicality and user satisfaction of the air mouse. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] Figure 1 It is a flow chart of the precise positioning method of the air mouse of the present invention; Figure 2 It is a structural schematic diagram of the precise positioning device of the air mouse of the present invention. DETAILED DESCRIPTION
[0032] The following is a detailed description of the preferred embodiments of the precise positioning method and device of the air mouse of the present invention in conjunction with the accompanying drawings: like Figure 1 As shown, a precise positioning method of an air mouse comprises the following steps: S1. Two or more gyroscope sensors are set in the air mouse, and sensing data of all gyroscope sensors are obtained at a fixed acquisition frequency f, wherein the sensing data of each gyroscope sensor includes angular velocity data of three axes, X, Y, and Z; S2. Preprocessing the sensing data of each gyroscope sensor, including noise reduction processing; S3. The data preprocessed in step S2 are fused; the fusion step comprises: S3.1. Calculating the speed of the air mouse; the steps of calculating the speed of the air mouse include: S3.1.1. Integrate the data preprocessed in step S2 using a numerical integration method to obtain an angle change θ; S3.1.2. Calculate the speed of the air mouse according to the acquisition period T of the gyroscope sensor sensing data and the angle change θ obtained in step S3.1.1. The speed of the air mouse includes the instantaneous angular velocity w and the instantaneous linear velocity v, w=θ / T, v= w*r, where T=1 / f, and r is the rotation radius of the air mouse relative to the user's hand; S3.2. Adjust the smoothing factor. The steps of adjusting the smoothing factor include: S3.2.1. Establish a mapping relationship between the speed of the air mouse and the smoothing factor; S3.2.2. Use interpolation algorithm to achieve continuous change of smoothing factor; S3.2.3. Dynamically adjust the smoothing factor according to the speed of the air mouse calculated in real time in step S3.1.2; S3.3. Perform fusion calculation on the data preprocessed in step S2; the fusion calculation steps include: S3.3.1. Select the smoothing factor adjusted in step S3.2.3, and use the complementary filtering algorithm to perform fusion calculation on the data pre-processed in step S2 to obtain the posture data of the air mouse. The posture data of the air mouse is represented by quaternion (q_w, q_x, q_y, q_z); S3.3.2. Obtain the posture data of the air mouse according to step S3.3.1, determine the position of the air mouse after movement, and calculate the relative displacement D before and after the air mouse movement; S4. According to the display connected to the air mouse, the relative displacement of the air mouse calculated in step S3.3.2 is corrected; the correction step includes: S4.1. Set the initial parameters of the display corresponding to the air mouse, including the initial resolution RE0, the initial size SI0 and the initial dots per inch DPI0; S4.2. Obtaining parameters of the display connected to the air mouse, the parameters of the display connected to the air mouse include the resolution RE, size SI and dots per inch DPI of the display connected to the air mouse; S4.3. Calculate the speed adjustment factor K1, K1=RE / RE0; S4.4. Calculate the sensitivity adjustment factor K2, K2 = (DPI / DPI0) * (SI0 / SI); S4.5. Correct the relative displacement of the air mouse according to the following formula: D1=D*K1*K2; where D1 is the relative displacement of the air mouse after correction; S4.6. According to the corrected relative displacement of the air mouse obtained in step S4.5, the movement trajectory data of the air mouse is obtained.
[0033] S5. Using a perspective projection algorithm or an orthogonal projection algorithm, the relative position of the air mouse on the screen of the connected display is calculated according to the movement trajectory data of the air mouse obtained in step S4.6 to form the mouse coordinate data; S6. Convert the mouse coordinate data obtained in step S5 into a standard mouse event, and send the mouse event so that the mouse cursor operates accordingly on the screen of the connected display.
[0034] The present invention provides a precise positioning method for an air mouse, wherein more than two gyroscope sensors are arranged in the air mouse, and the more than two gyroscope sensors acquire angular velocity data of the air mouse in three axes including X, Y and Z in real time; the angular velocity data of the three axes including X, Y and Z sensed by all gyroscope sensors are acquired at a fixed acquisition frequency f, and the unit of the acquired angular velocity data is degree / second, and the data is timestamped to facilitate data recording and subsequent calculations.
[0035] The precise positioning method of the air mouse of the present invention obtains the angular velocity data sensed by the gyroscope sensor and then pre-processes the sensed data of the gyroscope sensor to reduce interference on the data and improve the accuracy of the data.
[0036] The precise positioning method of the air mouse of the present invention comprises a preprocessing including a noise reduction process, and the noise reduction process comprises using a median filter algorithm or a Kalman filter algorithm to remove high-frequency noise in the sensing data, reduce noise interference, and improve the stability and reliability of the mouse operation.
[0037] In addition to the noise reduction process, the precise positioning method of the air mouse of the present invention preferably includes zero bias correction in the preprocessing process, wherein the zero bias correction step is to obtain the zero bias value of the gyroscope sensor by static sampling, and then subtract the corresponding zero bias value from the sensing data of each gyroscope sensor. Zero bias correction can make the sensing data of each gyroscope sensor more accurate.
[0038] In the precise positioning method of the air mouse of the present invention, preferably, the preprocessing also includes temperature compensation, and the temperature compensation step is to use the temperature sensor to sense temperature data and correct the sensing data of the gyroscope sensor by a set temperature compensation coefficient. Through temperature compensation, the influence of temperature on the sensing data of the gyroscope sensor can be greatly reduced.
[0039] The precise positioning method of the air mouse of the present invention can convert the unit of the pre-processed sensing data of the gyroscope sensor to convert the unit of the angular velocity from degree / second to radian / second for the convenience of calculation.
[0040] The precise positioning method of the air mouse of the present invention pre-processes the sensing data of each gyroscope sensor, and then fuses the pre-processed data to calculate the relative displacement D before and after the air mouse moves. During the fusion process, in order to adjust the smoothing factor of the fusion calculation in real time, the present invention calculates the speed of the air mouse in real time, dynamically adjusts the smoothing factor according to the speed of the air mouse calculated in real time, and then uses the adjusted smoothing factor and the complementary filtering algorithm to fuse the processed data to obtain the posture data of the air mouse, determine the position of the air mouse after movement, and calculate the relative displacement D before and after the air mouse moves.
[0041] The precise positioning method of the air mouse of the present invention calculates the speed of the air mouse. Specifically, a numerical integration method is used to integrate the preprocessed data to obtain the angle change θ; wherein the numerical integration method is any one of a trapezoidal integration method, a Simpson integration method, an adaptive integration method, a Romberg integration method or a Gauss integration method. Afterwards, the speed of the air mouse is calculated based on the acquisition period T and the angle change θ of the sensing data of the gyroscope sensor. The speed of the air mouse includes an instantaneous angular velocity w and an instantaneous linear velocity v, w=θ / T, v= w*r. The obtained speed of the air mouse is processed to obtain acceleration data of the movement of the air mouse.
[0042] The precise positioning method of the air mouse of the present invention dynamically adjusts the smoothing factor according to the speed of the air mouse calculated in real time. Specifically, first, a mapping relationship between the speed of the air mouse and the smoothing factor is established. For example, when the speed of the air mouse is less than 10 pixels / second, the smoothing factor is 0.8; when the speed of the air mouse is greater than 10 pixels / second and less than 50 pixels / second, the smoothing factor is 0.6; when the speed of the air mouse is greater than 50 pixels / second, the smoothing factor is 0.4. Then, an interpolation algorithm is used, such as any one of the interpolation algorithms of the nearest neighbor interpolation method, the bilinear interpolation method, or the cubic spline interpolation method, to process the mapping relationship between the speed of the air mouse and the smoothing factor, so that the smoothing factor changes continuously. Afterwards, according to the mapping relationship between the speed of the air mouse and the smoothing factor, after the speed of the air mouse is calculated in real time, the new smoothing factor corresponding to the real-time speed of the air mouse can be calculated to achieve dynamic adjustment of the smoothing factor.
[0043] The precise positioning method of the air mouse of the present invention performs fusion calculation on the processed data. Specifically, the complementary filtering algorithm is used to fuse the preprocessed data and the acceleration data of the air mouse movement to obtain the posture data of the air mouse. The posture data of the air mouse is represented by quaternion (q_w, q_x, q_y, q_z) to avoid the universal joint lock problem. Then, based on the posture data of the air mouse, the position of the air mouse after movement is determined, and the relative displacement D before and after the movement of the air mouse is calculated.
[0044] The precise positioning method of the air mouse of the present invention calculates the relative displacement D before and after the air mouse moves, and then corrects the calculated relative displacement of the air mouse to adapt to the display connected to the air mouse. Specifically, the initial parameters of the display corresponding to the air mouse are set, and the initial parameters include the initial resolution RE0, the initial size SI0 and the initial dots per inch DPI0, such as the initial resolution RE0 is 1920*1080, the initial size SI0 is 15.6 inches, and the initial dots per inch DPI0 is 96. The parameters of the display connected to the air mouse are obtained through the system API or the driver interface. If there are multiple displays connected to the air mouse, the parameters of all the displays connected to the air mouse are obtained. The parameters of the display connected to the air mouse include the resolution RE, size SI and dots per inch DPI of the connected display. After that, the speed adjustment factor K1 and the sensitivity adjustment factor K2 are calculated respectively, wherein the speed adjustment factor includes the speed adjustment factor in the horizontal direction and the speed adjustment factor in the vertical direction. The relative displacement of the air mouse is corrected according to the following formula: D1=D*K1*K2, and the corrected relative displacement of the air mouse is obtained; after obtaining the corrected relative displacement of the air mouse, preferably, the corrected relative displacement of the air mouse is smoothed, and the smoothing algorithm is a Bezier curve or spline interpolation algorithm. Through smoothing, the smoothness of the mouse movement can be improved. Finally, the movement trajectory data of the air mouse is obtained according to the corrected relative displacement of the air mouse after smoothing.
[0045] The precise positioning method of the air mouse of the present invention calculates the speed adjustment factor K1 and the sensitivity adjustment factor K2. Taking the initial resolution RE0 as 1920*1080, the initial size SI0 as 15.6 inches, the initial dots per inch DPI0 as 96, and the obtained display connected to the air mouse with a resolution RE of 3840*2160, a size SI of 13.3, and a dots per inch DPI of 144 as an example, the speed adjustment factor in the horizontal direction=3840 / 1920=2, the speed adjustment factor in the vertical direction=2160 / 1080=2, the calculated speed adjustment factor K1=the speed adjustment factor in the horizontal direction=the speed adjustment factor in the vertical direction=2; the sensitivity adjustment factor K2=(DPI / DPI0)*(SI0 / SI)=(144 / 96)*(15.6 / 13.3)≈1.76. The relative displacement D1 after the air mouse correction=D*K1*K2=D*2*1.76.
[0046] The precise positioning method of the air mouse of the present invention obtains the movement trajectory data of the air mouse, and then uses a perspective projection algorithm or an orthogonal projection algorithm to calculate the relative position of the air mouse on the screen of the connected display to form mouse coordinate data, so as to map the mouse movement trajectory in the three-dimensional space to the two-dimensional screen plane. During the mapping process, the screen boundary is considered to ensure that the mapped coordinates do not exceed the screen range. Afterwards, the mouse coordinate data is converted into a standard mouse event, and the mouse event includes the operation of moving, clicking, double-clicking, and dragging; and an unavailable technology such as Bluetooth technology is used to send the mouse event, so that the mouse cursor operates accordingly on the screen of the connected display. When sending the mouse event, according to different operating systems (such as Windows, macOS, Linux), the corresponding system API or driver interface is used to send the mouse event. For example, in Windows system, the SendInput function or the Windows Input Simulator library can be used; in macOS system, the CGEventCreateMouseEvent and CGEventPost functions can be used; in Linux system, the XTestFakeMotionEvent and XTestFakeButtonEvent functions of the X11 library can be used.
[0047] The precise positioning method of the air mouse of the present invention preferably uses Bluetooth technology to send mouse events when sending mouse events. Bluetooth technology can not only realize wireless communication between the air mouse and all connected displays, but also realize low-power functions, effectively prolong the battery life of the device, and solve the pain points of long-term use.
[0048] The precise positioning method of the air mouse of the present invention preferably adds an anti-shake algorithm. The anti-shake algorithm delays the execution of the function until the event stops triggering for a certain period of time, thereby avoiding multiple executions of the same operation in a short period of time. The anti-shake algorithm combined with the noise reduction processing in step S2 can effectively filter out tiny unnecessary movements, ensure that only valid mouse movements are recorded and responded to, and improve the mouse positioning accuracy.
[0049] The precise positioning method of the air mouse of the present invention is preferably, in step S3.3.2, after calculating the relative displacement D before and after the air mouse moves, the movement trajectory and speed change of the air mouse are analyzed to identify the hand recognition of the air mouse; if the hand recognition of the air mouse is identified, in step S6, the hand recognition of the air mouse is converted into a standard mouse event, and the mouse event is sent to make the mouse cursor operate accordingly on the screen of the connected display. The mouse gesture recognition function is realized, and custom gesture commands are supported, such as drawing a circle to zoom in, drawing a cross to close, etc. This setting can greatly improve the convenience and fun of mouse operation.
[0050] The precise positioning method of the air mouse of the present invention preferably sets a data buffer mechanism to mitigate the suddenness and unevenness of the arrival of mouse events, and smoothly processes the data discontinuity problem caused by communication delay or processing delay, thereby improving the continuity and uniformity of the operation of the mouse cursor on the screen of the connected display.
[0051] The precise positioning method of the air mouse of the present invention preferably provides a feedback mechanism to provide feedback on the operation of the mouse cursor in step S6; the feedback mechanism includes Visual feedback, which is to display the real-time position and movement trajectory of the mouse cursor on the screen of the connected monitor; Audio feedback, play corresponding sound effects when executing mouse events. For example, play corresponding sound effects when clicking, double-clicking, etc. The setting of visual and audio feedback mechanisms can greatly enhance the sense of reality of operation and improve the reliability of operation implementation.
[0052] The precise positioning method of the air mouse of the present invention preferably sets a performance optimization strategy, and the performance optimization strategy includes a dynamic sampling rate adjustment strategy: when the speed of the air mouse is higher than the set value, the acquisition frequency of the gyroscope sensor is increased; when the speed of the air mouse is lower than the set value, the acquisition frequency of the gyroscope sensor is reduced. In this way, while balancing the accuracy of the air mouse, the acquisition frequency of the gyroscope sensor can be automatically reduced after the air mouse has been stationary for a period of time to reduce energy consumption and achieve a low power consumption mode. The precise positioning method of the air mouse of the present invention is committed to optimizing the energy efficiency of the device, reducing power consumption and extending battery life to meet the needs of users for long-term use.
[0053] The precise positioning method of the air mouse of the present invention preferably sets a calibration mechanism to calibrate the mapping relationship between the gyroscope sensor and the screen; the calibration mechanism includes Periodic auto-calibration feature that corrects the gyro sensor and screen mapping relationship by asking the user to point to a specific point on the screen of the connected display; The user-defined calibration function allows users to adjust the sensitivity of the gyroscope sensor and the screen mapping relationship according to their personal habits. The setting of the calibration mechanism can ensure the accuracy of the gyroscope data.
[0054] The precise positioning method of the air mouse of the present invention preferably sets a data anomaly detection mechanism to identify abnormal states, such as abnormal states caused by hardware failure or communication interruption.
[0055] The precise positioning method of the air mouse of the present invention preferably sets a fault recovery strategy for quickly restoring the normal working state after an abnormal condition is detected.
[0056] The precise positioning method of the air mouse of the present invention preferably provides a user warning mechanism to remind the user by visual or audio means when a persistent abnormal condition is detected.
[0057] The precise positioning method of the air mouse of the present invention has the following advantages: 1. By setting more than two gyroscope sensors in the air mouse, the angular velocity signal of the air mouse is sensed in real time, and the data of each gyroscope sensor is fused and calculated using a complementary filtering algorithm to obtain the relative displacement D before and after the air mouse moves, and the data source of the mouse operation is realized after screen coordinate mapping. The data source comes from the sensing data of multiple gyroscope sensors, and does not rely on a single gyroscope sensor. Its data source is more stable and reliable. After the sensing data of multiple gyroscope sensors are fused and calculated by a complementary filtering algorithm, each sensing data is fused while also achieving "complementarity". After the "complementary" fusion, the relative displacement D before and after the air mouse moves does not rely on the sensing data of a single gyroscope sensor, but is the result of balanced calculation and integration of the sensing data of all gyroscope sensors. It avoids the abnormal problem of the sensing data of a single gyroscope sensor, reduces the drift and jitter caused by the error of a single gyroscope sensor, greatly improves the accuracy, precision and stability of the air mouse positioning, improves the smoothness of the operation, and solves the jitter and inaccurate positioning problems of the existing air mouse; 2. When performing fusion calculation on the sensing data of multiple gyroscope sensors, the smoothing factor of the complementary filtering algorithm is dynamically adjusted according to the speed of the gyroscope sensor. Under this setting, firstly, the fusion calculation of the sensing data of the gyroscope sensor is not fixed, but adjustable, and the application flexibility is higher; secondly, when adjusting the smoothing factor of the complementary filtering algorithm according to the speed of the air mouse, the adjustable fusion calculation is directly linked to the speed of the air mouse, so that the fusion calculation is dynamically adjusted with the speed of the air mouse, providing different fusion mechanisms for the air mouse at different moving speeds, so as to optimize the mouse operation through complementary filtering algorithms with different smoothing factors for different moving speeds of the air mouse. For example, when the air mouse moves at a low speed, a higher smoothing factor helps to reduce jitter and ensure the stability of the operation; when the air mouse moves at a high speed, reducing the smoothing factor can enhance the sensitivity of the mouse and improve the user's operating experience. In other words, through this dynamic adjustment mechanism, different operating requirements can be effectively adapted to improve the positioning accuracy and response speed of the air mouse; 3. According to the display connected to the air mouse, the relative displacement of the air mouse is corrected through an intelligent algorithm to achieve adaptive adjustment of different screen parameters, so that the corrected data can adapt to different displays and complete intelligent adaptation of different screen parameters. It greatly enhances the compatibility of the device and improves the versatility of the device. It can support various operating systems and meet the user's usage needs in various devices and scenarios. 4. When correcting the relative displacement of the air mouse, the main parameters of the display (resolution, size and dots per inch) are used for the correction calculation. The factors considered are more comprehensive and the results are more accurate after the modification. The air mouse is better adapted to the connected display. 5. The precise positioning method of the air mouse of the present invention significantly improves the positioning accuracy and stability of the air mouse through the fusion of multiple gyroscope sensor data and adaptive algorithms, solves the jitter and inaccuracy problems of the existing air mouse, and completes the intelligent adaptation of different screen parameters, greatly improving the versatility of the device, achieving cross-platform compatibility, supporting a variety of mainstream operating systems, and greatly expanding the scope of application. These settings combined provide users with a smooth and intuitive human-computer interaction experience, making the present invention suitable for various complex operating scenarios, greatly improving the practicality and user satisfaction of the air mouse.
[0058] The present invention also provides a precise positioning device for an air mouse, such as Figure 2 Shown, including The data acquisition module 1 is used to acquire the sensing data of all gyro sensors, and the sensing data of the gyro sensors includes the angular velocity data of the three axes of X, Y and Z; A data preprocessing module 2 is used to preprocess the sensing data of each gyroscope sensor, and the preprocessing includes noise reduction processing; The data fusion module 3 is used to perform fusion calculation on the pre-processed data, and to correct and adaptively adjust the relative displacement of the air mouse obtained by the fusion calculation according to the display connected to the air mouse; A coordinate mapping module 4 is used to calculate the relative position of the air mouse on the screen of the connected display, form mouse coordinate data, and map the fused data to the screen coordinate system of the connected display; Output control module 5, used for converting mouse coordinate data into standard mouse events; The Bluetooth communication module 6 is used to send mouse events to the connected display.
[0059] The precise positioning device of the air mouse of the present invention, when working, the data acquisition module 1 acquires the sensing data of all gyro sensors in real time, and transmits the sensing data of all gyro sensors acquired in real time to the data preprocessing module 2. The data preprocessing module 2 performs preprocessing such as noise reduction and offset removal on the sensing data of each gyro sensor, and transmits the preprocessed data to the data fusion module 3. The data fusion module 3, as the core of the precise positioning device of the air mouse of the present invention, performs fusion calculation on the preprocessed data, and in the fusion calculation process, calculates the speed of the air mouse in real time, dynamically and adaptively adjusts the smoothing factor of the fusion calculation according to the speed of the air mouse calculated in real time, and finally determines the position of the air mouse after movement, and obtains the relative displacement D before and after the air mouse moves; afterwards, the data fusion module 3 also corrects and adaptively adjusts the relative displacement of the air mouse obtained by the fusion calculation according to the parameters such as the screen resolution, size and DPI of the connected display, and obtains the accurate movement trajectory data of the air mouse of the connected display. The coordinate mapping module 4 receives the movement trajectory data of the air mouse transmitted by the data fusion module 3, and calculates the relative position of the air mouse on the screen of the connected display accordingly, and maps the fused data to the screen coordinate system of the connected display. After the output control module 5 converts the mouse coordinate data into a standard mouse event, the mouse event is sent to the connected display through the Bluetooth communication module 6, so that the mouse cursor operates accordingly on the screen of the connected display.
[0060] In order to achieve more accurate data fusion, the precise positioning device of the air mouse of the present invention also includes a speed calculation unit 31, a smoothing factor adjustment unit 32, a data fusion calculation unit 33 and a parameter adaptive unit 34. The speed calculation unit 31 calculates the real-time moving speed of the air mouse according to the preprocessed data; the smoothing factor adjustment unit 32 selects a suitable smoothing factor according to the real-time moving speed of the air mouse, and the faster the speed, the larger the smoothing factor; the data fusion calculation unit 33 performs fusion calculation on the preprocessed data according to the selected smoothing factor; the parameter adaptive unit 34 is responsible for obtaining the screen parameters of the connected display, and calculates the speed adjustment factor and the sensitivity adjustment factor according to the screen resolution, size and DPI, and corrects the output result of the data fusion calculation unit 33 to achieve adaptation to different display screens.
[0061] In order to achieve parameter adaptation for different screens, the parameter adaptation unit 34 of the precise positioning device of the air mouse of the present invention is further subdivided into a screen parameter acquisition unit 341, a speed adjustment factor calculation unit 342 and a sensitivity adjustment factor calculation unit 343. The screen parameter acquisition unit 341 is used to acquire parameters such as the resolution, physical size and DPI of the current screen; the speed adjustment factor calculation unit 342 is used to calculate the speed adjustment factor in the horizontal and vertical directions according to the screen resolution; the sensitivity adjustment factor calculation unit 343 is used to calculate the sensitivity adjustment factor according to parameters such as the screen size and DPI.
[0062] The precise positioning device of the air mouse of the present invention preferably comprises: A Bluetooth protocol stack unit 61 implements the Bluetooth 5.0 or higher protocol stack and supports GAP (Generic Access Profile) and GATT (Generic Attribute Profile) protocols for device discovery, connection and data transmission; A service and characteristic definition unit 62, which defines custom GATT services including characteristics such as mouse movement, button status, scroll wheel, battery level and configuration, to achieve comprehensive mouse function and status reporting; A connection and pairing unit 63 implements a secure pairing mechanism, uses the LE Secure Connections pairing method to ensure communication security, and supports multi-device pairing, allowing the air mouse to establish a pairing relationship with multiple devices; The data transmission unit 64 uses the GATT Notifications mechanism to perform real-time data transmission to reduce latency; compresses and packages the transmitted data to reduce the transmission volume and improve battery life; and implements adaptive transmission intervals to dynamically adjust the data transmission frequency according to the mouse movement speed; The connection management unit 65 implements an automatic reconnection mechanism, automatically attempts to reestablish a connection after a connection is disconnected; and supports fast wakeup and connection, reducing the time from a dormant state to an available state; A low power optimization unit 66, which implements dynamic adjustment of the BLE broadcast interval, extends the broadcast interval when not in use to save power, and uses the BLE Connection Parameters Update request to optimize the connection parameters to balance power consumption and performance; A firmware upgrade unit 67, which implements an OTA (Over-The-Air) firmware upgrade function based on BLE, allowing the device firmware to be updated remotely, so that users can obtain the latest functions and performance improvements; The compatibility adaptation unit 68 ensures compatibility with the Bluetooth HID protocol of mainstream operating systems (Windows, macOS, Linux, Android, iOS); and implements standard HID descriptors so that the device can be identified as a standard Bluetooth mouse to improve compatibility.
[0063] The precise positioning device of the air mouse of the present invention can realize high-precision mouse positioning, stable and reliable wireless communication, low-power operation and wide device compatibility by integrating the above-mentioned functional modules. It can not only adapt to different screen parameters, but also dynamically adjust the performance according to the user's usage, providing a smooth and precise operation experience. At the same time, through the various optimization functions of the Bluetooth communication module, the device can maximize the battery life while ensuring performance, providing users with a long-term continuous use experience.
[0064] For ordinary technicians in the technical field to which the present invention belongs, several simple deductions or substitutions can be made without departing from the concept of the present invention, which should be regarded as falling within the protection scope of the present invention.
Claims
1. A precise positioning method for an air mouse, characterized in that: The following steps are involved: S1. Two or more gyroscope sensors are set in the air mouse, and sensing data of all gyroscope sensors are obtained at a fixed acquisition frequency f, wherein the sensing data of each gyroscope sensor includes angular velocity data of three axes, X, Y, and Z; S2. Preprocessing the sensing data of each gyroscope sensor, including noise reduction processing; S3. Fusion of the data after preprocessing in step S2; The steps of integration include: S3.
1. Calculating the speed of the air mouse; the steps of calculating the speed of the air mouse include: S3.1.
1. Integrate the data preprocessed in step S2 using a numerical integration method to obtain an angle change θ; S3.1.
2. Calculate the speed of the air mouse according to the acquisition period T of the gyroscope sensor sensing data and the angle change θ obtained in step S3.1.
1. The speed of the air mouse includes the instantaneous angular velocity w and the instantaneous linear velocity v, w=θ / T, v= w*r, where T=1 / f, and r is the rotation radius of the air mouse relative to the user's hand; S3.
2. Adjust the smoothing factor. The steps of adjusting the smoothing factor include: S3.2.
1. Establish a mapping relationship between the speed of the air mouse and the smoothing factor; S3.2.
2. Use interpolation algorithm to achieve continuous change of smoothing factor; S3.2.
3. Dynamically adjust the smoothing factor according to the speed of the air mouse calculated in real time in step S3.1.2; S3.
3. Perform fusion calculation on the data preprocessed in step S2; the fusion calculation steps include: S3.3.
1. Select the smoothing factor adjusted in step S3.2.3, and use the complementary filtering algorithm to perform fusion calculation on the data preprocessed in step S2 to obtain the posture data of the air mouse, and the posture data of the air mouse is represented by quaternion; S3.3.
2. Obtain the posture data of the air mouse according to step S3.3.1, determine the position of the air mouse after movement, and calculate the relative displacement D before and after the air mouse movement; S4. According to the display connected to the air mouse, the relative displacement of the air mouse calculated in step S3.3.2 is corrected; the correction step includes: S4.
1. Set the initial parameters of the display corresponding to the air mouse, including the initial resolution RE0, the initial size SI0 and the initial dots per inch DPI0; S4.
2. Obtaining parameters of the display connected to the air mouse, the parameters of the display connected to the air mouse include the resolution RE, size SI and dots per inch DPI of the display connected to the air mouse; S4.
3. Calculate the speed adjustment factor K1, K1=RE / RE0; S4.
4. Calculate the sensitivity adjustment factor K2, K2 = (DPI / DPI0) * (SI0 / SI); S4.
5. Correct the relative displacement of the air mouse according to the following formula: D1=D*K1*K2; where D1 is the relative displacement of the air mouse after correction; S4.
6. Obtain the movement trajectory data of the air mouse according to the relative displacement corrected by the air mouse obtained in step S4.5; S5. Using a perspective projection algorithm or an orthogonal projection algorithm, the relative position of the air mouse on the screen of the connected display is calculated according to the movement trajectory data of the air mouse obtained in step S4.6 to form the mouse coordinate data; S6. Convert the mouse coordinate data obtained in step S5 into a standard mouse event, and send the mouse event so that the mouse cursor operates accordingly on the screen of the connected display.
2. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S2, the noise reduction process is to use a median filter algorithm or a Kalman filter algorithm to remove high-frequency noise in the sensing data.
3. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S2, the preprocessing also includes zero bias correction and temperature compensation, wherein the zero bias correction step is to obtain the zero bias value of the gyroscope sensor through static sampling, and then subtract the corresponding zero bias value from the sensing data of each gyroscope sensor; the temperature compensation step is to use the temperature sensor to sense the temperature data, and correct the sensing data of the gyroscope sensor by the set temperature compensation coefficient.
4. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S3.1.1, the numerical integration method is any one of the trapezoidal integration method, Simpson integration method, adaptive integration method, Romberg integration method or Gauss integration method; in step S3.2.2, the interpolation algorithm is any one of the nearest neighbor interpolation method, bilinear interpolation method or cubic spline interpolation method.
5. The precise positioning method of the air mouse according to claim 1, characterized in that: The speed of the air mouse obtained in step S3.1.2 is processed to obtain the acceleration data of the air mouse movement. When performing fusion calculation in step S3.3.1, the complementary filtering algorithm is used to fuse the data pre-processed in step S2 and the acceleration data of the air mouse movement.
6. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S4.2, the parameters of the display connected to the air mouse are obtained through the system API or the driver interface; When there are multiple displays connected to the air mouse, in step S4.2, parameters of all displays connected to the air mouse are obtained; In step S4.3, the speed adjustment factor includes a speed adjustment factor in the horizontal direction and a speed adjustment factor in the vertical direction; in step S4.5, after the relative displacement of the air mouse is corrected, the corrected relative displacement of the air mouse is smoothed.
7. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S6, the mouse events include operations of moving, clicking, double-clicking, and dragging; in step S6, the mouse events are sent using Bluetooth technology.
8. The precise positioning method of the air mouse according to claim 1, characterized in that: In step S3.3.2, after calculating the relative displacement D before and after the movement of the air mouse, the movement trajectory and speed change of the air mouse are analyzed to identify the hand recognition of the air mouse; if the hand recognition of the air mouse is recognized, in step S6, the recognized hand recognition of the air mouse is converted into a standard mouse event, and the mouse event is sent to make the mouse cursor operate accordingly on the screen of the connected display.
9. The precise positioning method of an air mouse according to claim 1, characterized in that: Added anti-shake algorithm; Set up a data buffer mechanism to mitigate the suddenness and unevenness of mouse event arrival; Setting a feedback mechanism to provide feedback on the operation of the mouse cursor in step S6; The feedback mechanism includes visual feedback, which is to display the real-time position and movement trajectory of the mouse cursor on the screen of the connected display; Audio feedback, playing corresponding sound effects when executing mouse events; Setting a calibration mechanism to calibrate the gyro sensor and screen mapping relationship; the calibration mechanism includes a periodic automatic calibration function to correct the gyro sensor and screen mapping relationship by requiring the user to point to a specific point on the screen of the connected display; User-defined calibration function allows users to adjust the sensitivity of the gyroscope sensor and the screen mapping relationship according to personal habits; Set performance optimization strategies, including dynamic sampling rate adjustment strategies: when the air mouse speed is higher than the set value, increase the acquisition frequency of the gyroscope sensor; When the air mouse speed is lower than the set value, the acquisition frequency of the gyroscope sensor is reduced; Set up a data anomaly detection mechanism to identify abnormal conditions; Set up a fault recovery strategy to quickly restore normal working conditions after an abnormal condition is detected; set up a user warning mechanism to alert the user through visual or audio methods when a persistent abnormal condition is detected.
10. A precise positioning device for an air mouse, characterized in that: It includes a data acquisition module for acquiring sensing data of all gyro sensors, wherein the sensing data of the gyro sensors includes angular velocity data of three axes: X, Y, and Z; A data preprocessing module is used to preprocess the sensing data of each gyroscope sensor, and the preprocessing includes noise reduction processing; A data fusion module is used to perform fusion calculation on each pre-processed data, and to correct and adaptively adjust the relative displacement of the air mouse obtained by the fusion calculation according to the display connected to the air mouse; A coordinate mapping module is used to calculate the relative position of the air mouse on the screen of the connected display, form mouse coordinate data, and map the fused data to the screen coordinate system of the connected display; Output control module, used to convert mouse coordinate data into standard mouse events; Bluetooth communication module for sending mouse events to the connected display.