Hybrid touch sampling mode

By switching between interrupt and polling modes in a hybrid touch sampling mode, the problems of touch latency and visual jitter on user devices are solved, and the real-time feedback and rendering smoothness of touch interaction are improved without increasing power consumption.

CN122249784APending Publication Date: 2026-06-19QUALCOMM INC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
QUALCOMM INC
Filing Date
2023-12-11
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Existing user equipment suffers from touch latency and visual jitter issues in touchscreen interaction, and the higher touch sampling rate leads to increased power consumption.

Method used

A hybrid touch sampling mode is employed, which includes switching between interrupt mode and polling mode. When a touch movement event is detected, the system switches to polling mode and polls the touch event at a polling timing offset one time before the Vsync signal to render the frame.

Benefits of technology

It reduces touch latency, improves real-time visual feedback and the smoothness of rendered frames, while reducing power consumption without significantly increasing power consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122249784A_ABST
    Figure CN122249784A_ABST
Patent Text Reader

Abstract

In some aspects, a user equipment can detect touch movement events associated with the user equipment's touchscreen while operating in interrupt mode. The user equipment can switch from interrupt mode to polling mode based on the detection of touch movement events. When operating in polling mode, the user equipment can poll for touch events associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with the vertical sync (Vsync) signal. The user equipment can render frames for display on the touchscreen based at least in part on the polled touch events at the polling timing, in conjunction with the Vsync signal. Numerous other aspects are described.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Various aspects of this disclosure generally relate to user equipment, and for example to hybrid touch sampling modes for user equipment. Background Technology

[0002] The user device's touchscreen enables users to interact with the device by touching it in various ways. Users can touch the touchscreen in specific ways to provide corresponding input to the user device. The user device can interpret the input based on one or more characteristics of the user's touchscreen and / or based on information displayed on the touchscreen (e.g., via the user device's touchscreen interface and / or controller). The user device can update the information displayed on the touchscreen based on the input provided via the touchscreen. Summary of the Invention

[0003] Some aspects described herein relate to a user equipment. The user equipment may include one or more memories and one or more processors coupled to the one or more memories. One or more processors may be configured to detect touch movement events associated with the user equipment's touchscreen when the user equipment is operating in interrupt mode. One or more processors may be configured to switch the user equipment from interrupt mode to polling mode in conjunction with the detection of touch movement events. One or more processors may be configured to poll the touch events associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with a vertical synchronization (Vsync) signal when the user equipment is operating in polling mode. One or more processors may be configured to render frames for display on the touchscreen based at least in part on the polled touch events at the polling timing, in conjunction with the Vsync signal.

[0004] Some aspects described herein relate to a method performed by a user device. The method may include: detecting a touch movement event associated with a touchscreen of the user device when operating in an interrupt mode. The method may include: switching from an interrupt mode to a polling mode in conjunction with the detection of the touch movement event. The method may include: polling the touch event associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with a Vsync signal when operating in polling mode. The method may include: rendering a frame for display on the touchscreen in conjunction with the Vsync signal, based at least in part on the polled touch event at the polling timing.

[0005] Some aspects described herein relate to a non-transitory computer-readable medium storing an instruction set by a user equipment. When executed by one or more processors of the user equipment, this instruction set enables the user equipment to detect touch movement events associated with a touchscreen while operating in interrupt mode. When executed by one or more processors of the user equipment, this instruction set enables the user equipment to switch from interrupt mode to polling mode in conjunction with the detected touch movement events. When executed by one or more processors of the user equipment, this instruction set enables the user equipment to poll the touch events associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with the Vsync signal while operating in polling mode. When executed by one or more processors of the user equipment, this instruction set enables the user equipment to render frames for display on the touchscreen in conjunction with the Vsync signal, at least in part based on the polled touch events at the polling timing.

[0006] Some aspects described herein relate to an apparatus. The apparatus may include components for detecting touch movement events associated with a touchscreen of the apparatus when operating in an interrupt mode. The apparatus may include components for switching from an interrupt mode to a polling mode in conjunction with the detection of touch movement events. The apparatus may include components for polling touch events associated with the touchscreen at a polling timing that is a time offset earlier than a time associated with a Vsync signal when operating in polling mode. The apparatus may include components for rendering a frame for display on the touchscreen, in conjunction with the Vsync signal and at least partially based on the polling touch events at the polling timing.

[0007] The aspects generally include, as described substantially with reference to the accompanying drawings and description and illustrated as shown in the drawings and description, methods, apparatus, systems, computer program products, non-transitory computer-readable media, user equipment, user gear, wireless communication equipment, and / or processing systems.

[0008] The features and technical advantages of the examples according to this disclosure have been summarized rather extensively above in order to better understand the detailed description below. Additional features and advantages will be described below. The disclosed concepts and specific examples can be readily utilized as the basis for modifying or designing other structures for achieving the same purpose of this disclosure. Such equivalent constructions do not depart from the scope of the appended claims. The characteristics of the concepts disclosed herein (both their organization and manner of operation) and the associated advantages will be better understood from the following description when considered in conjunction with the accompanying drawings. Each figure in the drawings is provided for illustrative and descriptive purposes and not as a limitation of the definitions in the claims. Attached Figure Description

[0009] To gain a full understanding of the foregoing features of this disclosure, a more specific description of the invention, briefly outlined above, can be obtained by referring to various aspects, some of which are illustrated in the accompanying drawings. However, it should be noted that the drawings illustrate only certain typical aspects of this disclosure and are therefore not to be considered as limiting its scope, as other equally valid aspects are permissible in this description. The same reference numerals in different drawings may identify the same or similar elements.

[0010] Figure 1 This is a diagram illustrating an example environment in which the systems and / or methods described herein can be implemented.

[0011] Figure 2 This is a diagram illustrating example components of a device according to the present disclosure.

[0012] Figure 3 This is a diagram illustrating an example of touch sampling on a touchscreen of a user device according to the present disclosure.

[0013] Figures 4A to 4E and Figure 5 This is an illustration illustrating an example of a hybrid touch sampling mode associated with this disclosure.

[0014] Figure 6 This is a flowchart of an example process associated with a hybrid touch sampling mode according to this disclosure. Detailed Implementation

[0015] Various aspects of this disclosure are described more fully below with reference to the accompanying drawings. However, this disclosure may be embodied in many different forms and should not be construed as limited to any particular structure or function presented throughout this disclosure. Rather, these aspects are provided so that this disclosure will be comprehensive and complete, and will fully convey the scope of protection of this disclosure to those skilled in the art. Those skilled in the art will appreciate that the scope of this disclosure is intended to cover any aspect of this disclosure disclosed herein, whether implemented independently or in combination with any other aspect of this disclosure. For example, any number of aspects set forth herein may be used to implement an apparatus or practice. Furthermore, the scope of this disclosure is intended to cover such apparatuses or methods implemented using structures, functions, or structures and functions other than or different from the aspects of the disclosure set forth herein. It should be understood that any aspect of this disclosure disclosed herein may be embodied by one or more elements of these claims.

[0016] User equipment equipped with a touchscreen (also known as a "touchscreen") may include an input system associated with the touchscreen and a display system associated with the touchscreen. The input system performs touch sampling to detect touch input on the touchscreen. For example, the input system may perform touch sampling periodically at a specific touch sampling rate. The input system and the display system may be implemented as two separate modules within the user equipment. In some examples, the touch sampling rate used by the input system may differ from the display refresh rate used by the display system. In other examples, the touch sampling rate may be the same as the display refresh rate. In either case, the user equipment may lack mechanisms for synchronizing touch sampling for detecting touch input on the touchscreen and display refresh for updating frames displayed on the touchscreen. This can introduce touch latency (e.g., in addition to the latency associated with rendering the frames to be displayed on the touchscreen), which will degrade real-time visual feedback based on user input (e.g., touch input) to the touchscreen. Furthermore, due to this latency, the rendered frames may not be smooth, which may result in visual jitter noticeable to the user of the user equipment. In some examples, a higher touch sampling rate can reduce touch latency. However, the use of higher touch sampling rates may be associated with significant power overhead, and may therefore lead to increased power consumption of user devices.

[0017] Various aspects relate to hybrid touch sampling modes for touch sampling of a user equipment's touchscreen. Hybrid touch sampling modes may include touch sampling in interrupt mode and touch sampling in polling mode. In some aspects, the user equipment may detect touch movement events associated with the user equipment's touchscreen while operating in interrupt mode. The user equipment may combine the detection of touch movement events to switch from interrupt mode to polling mode. When operating in polling mode, the user equipment may poll for touch events associated with the touchscreen at polling points that are earlier than the time associated with the vertical sync (Vsync) signal. For example, the polling point may be earlier than the time associated with the Vsync signal by a specific time offset. The user equipment may render frames for display on the touchscreen based at least in part on the polled touch events at the polling points, in conjunction with the Vsync signal. In some examples, when operating in polling mode, the user equipment may poll for touch events at one or more subsequent polling points (e.g., within one or more subsequent Vsync cycles) that are earlier than the subsequent time associated with the Vsync signal, until no more touch movement events are detected at the polling points. In some examples, the user device may switch to interrupt mode by detecting touch events other than touch movement events during polling.

[0018] Specific aspects of the subject matter described in this disclosure can be implemented to achieve one or more of the following potential advantages. In some examples, by combining the detection of touch movement events to switch from interrupt mode to polling mode, and polling touch events at a specific time offset earlier than the time associated with the Vsync signal when operating in polling mode, the user device can reduce touch latency compared to remaining in interrupt mode and performing touch sampling at the touch sampling rate associated with interrupt mode. Therefore, real-time visual feedback based on user input to the touchscreen can be improved. For example, this can improve the touch response of the user device to application scrolling, game touch response, and / or other touch movement controls or inputs on the user device's touchscreen. Furthermore, when operating in polling mode, the user device can improve the smoothness of rendered frames by rendering frames to be displayed on the touchscreen based on polling of touch events at the polling timing. In some examples, by disabling interrupt mode when operating in polling mode, the user device can reduce power consumption compared to increasing the touch sampling rate associated with interrupt mode. Therefore, the user device can reduce touch latency without significantly increasing power consumption.

[0019] Figure 1 This is a diagram illustrating an example environment 100 in which the systems and / or methods described herein can be implemented. For example... Figure 1 As shown, environment 100 may include user equipment 110, wireless communication equipment 120, and / or network 130. The devices in environment 100 may be interconnected via wired connections, wireless connections, or a combination of wired and wireless connections.

[0020] User equipment 110 may include one or more devices capable of receiving, generating, storing, processing, and / or providing information associated with filtered inputs of user equipment 110, as described elsewhere herein. User equipment 110 may include communication devices and / or computing devices. For example, user equipment 110 may include communication devices, mobile phones, user equipment, laptop computers, tablet computers, desktop computers, game consoles, set-top boxes, wearable communication devices (e.g., smartwatches, smart glasses, head-mounted displays, or virtual reality headsets) or similar types of devices. In some embodiments, user equipment 110 may include a keyboard and / or mouse (e.g., a keyboard and / or mouse capable of wired or wireless communication with computing devices).

[0021] Wireless communication device 120 may include one or more devices capable of receiving, generating, storing, processing, providing, and / or routing information associated with filtered inputs of a user device, as described elsewhere herein. Wireless communication device 120 may include communication devices and / or computing devices. For example, wireless communication device 120 may include servers such as application servers, client servers, web servers, database servers, host servers, proxy servers, virtual servers (e.g., executing on computing hardware), or servers in a cloud computing system. In some embodiments, wireless communication device 120 may include computing hardware used in a cloud computing environment. In some embodiments, wireless communication device 120 may include user devices (e.g., user devices capable of wired or wireless communication with a keyboard, mouse, etc.), as described herein.

[0022] Network 130 may include one or more wired and / or wireless networks. For example, network 130 may include a wireless wide area network (e.g., a cellular network or public terrestrial mobile network), a local area network (e.g., a wired local area network or a wireless local area network (WLAN), such as a Wi-Fi network), a personal area network (e.g., a Bluetooth network), a near-field communication network, a telephone network, a private network, the Internet, and / or combinations of these or other types of networks. Network 130 enables communication between devices in environment 100.

[0023] Figure 1 The number and arrangement of devices and networks shown are provided as an example. In practice, there may be different arrangements. Figure 1 The devices and / or networks shown are compared to additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or devices and / or networks arranged in a different manner. Furthermore, Figure 1 The two or more devices shown can be implemented within a single device, or Figure 1 The single device shown can be implemented as multiple distributed devices. Additionally or alternatively, a collection of devices in environment 100 (e.g., one or more devices) can perform one or more functions described as being performed by another collection of devices in environment 100.

[0024] Figure 2 This is a diagram illustrating example components of device 200 according to the present disclosure. Device 200 may correspond to user equipment 110 and / or wireless communication device 120. In some aspects, user equipment 110 and / or wireless communication device 120 may include one or more devices 200 and / or one or more components of device 200. Figure 2 As shown, device 200 may include bus 205, processor 210, memory 215, input component 220, output component 225, communication component 230 and / or sensor 235.

[0025] Bus 205 may include one or more components that enable wired and / or wireless communication between components of device 200. Bus 205 may connect components such as via operative coupling, communicative coupling, electronic coupling, and / or electrical coupling. Figure 2 Two or more components are coupled together. For example, bus 205 may include electrical connections (e.g., wires, traces, and / or leads) and / or wireless buses. Processor 210 may include a central processing unit, graphics processing unit, microprocessor, controller, microcontroller, digital signal processor, field-programmable gate array, application-specific integrated circuit, and / or another type of processing component. Processor 210 may be implemented in hardware, firmware, or a combination of hardware and software. In some aspects, processor 210 may include one or more processors capable of being programmed to perform one or more operations or processes described elsewhere herein.

[0026] Memory 215 may include volatile memory and / or non-volatile memory. For example, memory 215 may include random access memory (RAM), read-only memory (ROM), hard disk drive, and / or another type of memory (e.g., flash memory, magnetic memory, and / or optical memory). Memory 215 may include internal memory (e.g., RAM, ROM, or hard disk drive) and / or removable memory (e.g., removable via a universal serial bus connection). Memory 215 may be a non-transitory computer-readable medium. Memory 215 may store information related to the operation of device 200, one or more instructions, and / or software (e.g., one or more software applications). In some aspects, memory 215 may include one or more memories, such as those coupled (e.g., communicatively coupled) to one or more processors (e.g., processor 210), via bus 205. The communicative coupling between processor 210 and memory 215 enables processor 210 to read and / or process information stored in memory 215 and / or store information in memory 215.

[0027] Input component 220 enables device 200 to receive input, such as user input and / or sensed input. For example, input component 220 may include a touchscreen, keyboard, keypad, mouse, button, microphone, switch, sensor, GPS sensor, GNSS sensor, accelerometer, gyroscope, and / or actuator. Output component 225 enables device 200 to provide output, such as via a display (e.g., touchscreen), speaker, and / or light-emitting diode. Communication component 230 enables device 200 to communicate with other devices via wired and / or wireless connections. For example, communication component 230 may include a receiver, transmitter, transceiver, modem, network interface card, and / or antenna.

[0028] Sensor 235 includes one or more devices capable of detecting characteristics associated with device 200 (e.g., characteristics related to the physical environment of device 200 or characteristics related to the condition of device 200). Sensor 235 may include one or more photodetectors (e.g., one or more photodiodes), one or more cameras, one or more microphones, one or more gyroscopes (e.g., microelectromechanical systems (MEMS) gyroscopes), one or more magnetometers, one or more accelerometers, one or more position sensors (e.g., global positioning system (GPS) receivers or local positioning system (LPS) devices), one or more motion sensors, one or more temperature sensors, one or more pressure sensors, and / or one or more touch sensors, etc.

[0029] Device 200 may perform one or more operations or procedures described herein. For example, a non-transitory computer-readable medium (e.g., memory 215) may store a set of instructions (e.g., one or more instructions or code) for execution by processor 210. Processor 210 may execute the set of instructions to perform one or more operations or procedures described herein. In some aspects, execution of the set of instructions by one or more processors 210 causes one or more processors 210 and / or device 200 to perform one or more operations or procedures described herein. In some aspects, hardwired circuitry may be used in place of or in combination with instructions to perform one or more operations or procedures described herein. Additionally or alternatively, processor 210 may be configured to perform one or more operations or procedures described herein. Thus, the aspects described herein are not limited to any particular combination of hardware circuitry and software.

[0030] In some aspects, device 200 may include components for detecting touch movement events associated with the device's touchscreen when operating in interrupt mode; components for switching from interrupt mode to polling mode in conjunction with the detection of touch movement events; components for polling touch events associated with the touchscreen at a polling timing offset from the time associated with the Vsync signal when operating in polling mode; and / or components for rendering frames for display on the touchscreen in conjunction with the Vsync signal, at least in part based on the polled touch events at the polling timing. In some aspects, the components of device 200 for performing the processes and / or operations described herein may include components for combining... Figure 2 One or more components of the described device 200, such as bus 205, processor 210, memory 215, input component 220, output component 225, communication component 230 and / or sensor 235.

[0031] Figure 2 The number and arrangement of components shown are provided as an example. Figure 2Compared to the components shown, device 200 may include additional components, fewer components, different components, or components arranged in a different manner. Additionally or alternatively, the set of components of device 200 (e.g., one or more components) may perform one or more functions described as being performed by another set of components of device 200.

[0032] Figure 3 These are illustrations of examples 300, 310, and 320 of touch sampling of a touchscreen of a user equipment according to the present disclosure.

[0033] User equipment equipped with a touchscreen (e.g., user equipment 110) may include an input system associated with the touchscreen and a display system associated with the touchscreen. In some examples, the input system may be an input component 220, may be included in an input component 220, or may include an input component 220. In some aspects, the input system may include a touch integrated circuit (IC) configured to scan the touch panel of the touchscreen to obtain the coordinates of a touch input (e.g., finger coordinates) on the touchscreen. In some examples, the display system may be an output component 225, may be included in an output component 225, or may include an output component 225. In some examples, the input system and the display system may be implemented as two separate modules in the user equipment.

[0034] In some examples, the user device can perform touch sampling in interrupt mode. For instance, interrupt mode could be the default mode for touch sampling on the user device. Figure 3 As shown, in interrupt mode, the input system can perform touch sampling at periodic touch sampling times 302 according to the touch sampling rate. The touch sampling rate is the frequency at which touch sampling is performed (e.g., how often) (e.g., the frequency at which touch sampling times 302 occur). The input system can perform touch sampling at touch sampling times 302 to monitor touch events. For example, at each touch sampling time 302, the input system can detect whether a touch event has occurred. The input system can detect various types of touch events, including touch press events, touch release events, and / or touch movement events. A touch press event may correspond to a new touch input to the touchscreen (e.g., a user touching the touchscreen with their finger) or a stationary touch input to the touchscreen. A touch movement event may correspond to the movement of touch input on the touchscreen (e.g., a user's finger moving while remaining in contact with the touchscreen). A touch release event may correspond to the end or removal of touch input on the touchscreen (e.g., a user's finger lifting off the touchscreen).

[0035] When an input system detects a touch event, the input system (e.g., the input system's touch firmware) may report the touch event to the user device. For example, the input system may send an interrupt request (IRQ) to report the touch event. The IRQ may report the type of the detected touch event and / or the location associated with the touch event (e.g., finger coordinates). In some examples, a system server executing on the user device may receive the IRQ. The system server (e.g., an input reader of the system server) may read the touch event reported by the IRQ, and the system server (e.g., an input dispatcher of the system server) may dispatch the touch event to an application executing on the user device. For example, the application may be a game or another type of application in which output is displayed on the touchscreen, and the touch event may be associated with the application. The application may receive the touch event from the system server. When the Vsync signal 304 is received or detected by the user device and / or the application, the application may consume the touch event. For example, the application may apply touch input associated with the touch event and begin rendering a frame to be displayed on the touchscreen, at least in part, based on the touch event. The Vsync signal 304 may be sent / generated by a display system (e.g., by a hardware synthesizer of the display system). The Vsync signal 304 synchronizes the display pipeline (e.g., CPU and / or GPU frame rendering, SurfaceFlinger compositing, and / or frame buffer sending to the display, etc.) with the display refresh cycle. Figure 3 As shown, Vsync signal 304 can be generated / sent periodically according to the display refresh rate. In some examples, a delay may be introduced between when a touch event is reported (e.g., at touch sampling time 302) and when the touch event is applied and consumed (e.g., at the time associated with Vsync 304), which may increase the overall touch latency between touch input on the touchscreen and the output associated with the touch input displayed on the touchscreen.

[0036] like Figure 3 As shown, Example 300 illustrates an example where the touch sampling rate is equal to the display refresh rate. For example, the touch sampling rate and the display refresh rate may each be 90Hz or another frequency. As shown in Example 300, the touch sampling timing 302 and the Vsync signal 304 may be asynchronous. As indicated by reference numeral 306, the lack of synchronization between the touch sampling timing 302 and the Vsync signal 304 may introduce a delay between the reporting of a touch event and the consumption of the touch event.

[0037] like Figure 3As further illustrated, Example 310 shows an example of touch sampling where the touch sampling rate is greater than the display refresh rate. For example, the touch sampling rate could be 100Hz, and the display refresh rate could be 60Hz. In other examples, other touch sampling rates and / or display refresh rates may be used. As shown in Example 310, when the touch sampling rate is greater than the display refresh rate, there may be a variable delay (indicated by reference numerals 312 and 314) between when a touch event is reported (e.g., at different touch sampling times 302) and when it is consumed. This can result in unsmooth rendered frames that appear stuttering or jittery to the user of the user device.

[0038] like Figure 3 As further illustrated, Example 320 shows an example of touch sampling where the touch sampling rate is equal to a multiple of the display refresh rate (e.g., touch sampling rate = n × display refresh rate, where n is an integer). For example, the touch sampling rate could be 180 Hz, and the display refresh rate could be 90 Hz, etc. As shown in Example 320, the latency between when a touch event is reported and when the touch event is consumed can be reduced (as indicated by reference numeral 322) (e.g., compared to Example 300). However, a higher touch sampling rate may result in increased power consumption of the user device.

[0039] In some aspects, the user equipment can use a hybrid touch sampling mode for touch sampling. When operating in interrupt mode, the user equipment can detect touch movement events associated with the user equipment's touchscreen. The user equipment can combine the detection of touch movement events to switch from interrupt mode to polling mode. When operating in polling mode, the user equipment can poll the touch events associated with the touchscreen at a polling timing that is a specific time offset earlier than the time associated with the Vsync signal. The user equipment can combine the Vsync signal with at least part of the polled touch events at the polling timing to render a frame for display on the touchscreen. In some aspects, when operating in polling mode, the user equipment can poll the touch events at one or more subsequent polling timings (e.g., within one or more subsequent Vsync cycles) that are earlier than the subsequent time associated with the Vsync signal until no more touch movement events are detected at the polling timing. In some aspects, the user equipment can combine the detection of touch events other than touch movement events at the polling timing to switch to interrupt mode. Therefore, touch latency can be reduced compared to touch sampling using only interrupt mode. Furthermore, the hybrid touch sampling mode can reduce touch latency without significantly increasing power consumption (e.g., without increasing the touch sampling frequency in interrupt mode). Additionally, the hybrid touch sampling mode can improve the smoothness of rendered frames.

[0040] As indicated above, Figure 3 This is provided as an example. Other examples are available with reference to [the relevant information]. Figure 3 The descriptions are different.

[0041] Figures 4A to 4E This is an illustration of example 400 associated with a hybrid touch sampling mode according to this disclosure. Figures 4A to 4E As shown, Example 400 includes a user device (e.g., user device 110) with a touchscreen. A hybrid touch sampling mode may include the user device switching between an interrupt mode for touch sampling and a polling mode for touch sampling.

[0042] like Figure 4A As shown by reference numeral 405, the user equipment can monitor touch events associated with the touchscreen when operating in interrupt mode. In some aspects, interrupt mode can be the default touch sampling mode of the user equipment. When operating in interrupt mode, the user equipment can monitor touch events associated with the user equipment's touchscreen at periodic touch sampling times according to the touch sampling rate. For example, at each touch sampling time, the user equipment can perform touch sampling to determine whether a touch event has occurred. When operating in interrupt mode, the user equipment can monitor touch press events, touch release events, and / or touch movement events, etc. In some aspects, when the user equipment operates in interrupt mode, the user equipment's input system (e.g., the input system associated with the user equipment's touchscreen) can monitor touch events (e.g., at touch sampling times), as described above. Figure 3 This is discussed. For example, when the user equipment is operating in interrupt mode, the user equipment can enable the input system to monitor touch events.

[0043] like Figure 4A Furthermore, as shown by reference numeral 410, the user equipment can detect touch movement events associated with the touchscreen while operating in interrupt mode. The user equipment (e.g., its input system) can detect touch movement events at least in part based on monitoring touch events at the touch sampling point. When the input system detects a touch event (e.g., a touch press event, a touch release event, or a touch movement event) at the touch sampling point, the input system can report the touch event. For example, the input system can send an IRQ reporting the touch event to the user equipment (e.g., to a system server running on the user equipment). The IRQ can report the type of touch event detected. In some aspects, the input system can detect touch movement events (e.g., movement of touch input on the touchscreen) at the touch sampling point, and the input system can send an IRQ reporting the touch movement event. The user equipment (e.g., a system server running on the user equipment) can receive the IRQ reporting the touch movement event from the input system.

[0044] like Figure 4BAs shown by reference numeral 415, the user equipment can switch from interrupt mode to polling mode in conjunction with the detection of a touch movement event. In some aspects, whenever a new touch event is reported (e.g., via an IRQ) while the user equipment is operating in interrupt mode, the user equipment can determine whether a touch movement event has been detected. For example, the user equipment can determine whether the reported touch event is a touch movement event. When a touch movement event is detected while the user equipment is operating in interrupt mode (e.g., the reported touch event is a touch movement event), the user equipment can switch from interrupt mode to polling mode. When the reported touch event is not a touch movement event (e.g., the reported touch event is a touch press event or a touch release event), the user equipment can continue to monitor touch events in interrupt mode.

[0045] In some respects, polling mode is a mode in which the user equipment polls the input system associated with the touchscreen to obtain touch data associated with the touchscreen. In other respects, when the user equipment switches to polling mode, it can disable interrupt mode. For example, the user equipment can prevent the input system associated with the touchscreen from monitoring touch events at touch sampling times associated with interrupt mode. In other respects, when the user equipment operates in polling mode, the input system can report touch events associated with the touchscreen only in response to polling requests from the user equipment.

[0046] like Figure 4B As further illustrated by reference numeral 420, when operating in polling mode, the user equipment can poll for touch events associated with the touchscreen at a polling timing earlier than the time associated with the Vsync signal. In some aspects, the polling timing may be preceded by a reserved time offset from the time associated with the Vsync signal. The reserved time offset may be a reserved time amount configured between the polling timing and the Vsync signal time. The reserved time offset may be set to minimize the delay between the polling timing and the Vsync signal time while providing sufficient time for polling the input system associated with the touchscreen to obtain touch data associated with the touch event and for retrieving touch data from the input system. In some aspects, at the polling timing, the user equipment may send a polling request to the input system for touch data associated with the touchscreen. For example, the touch data may include the coordinates of a touch point (e.g., finger coordinates) on the touchscreen at the polling timing. The polling request may trigger the input system (e.g., the touch IC of the input system) to scan the touch panel of the touchscreen to obtain touch data (e.g., the coordinates of the touch point), and the user equipment may receive the touch data from the input system in response to the polling request.

[0047] In some aspects, the user equipment may wake up a polling thread at a polling opportune time to poll for touch events associated with the touchscreen. In some aspects, the polling thread may be a separate thread with a timer created to poll for touch data, such as the coordinates of touch points on the touchscreen. In some aspects, the polling thread is associated with a timer for waking up the polling thread at the next polling opportune time, which is a pre-reserved time offset ahead of the next Vsync signal (e.g., ahead of the next time associated with the Vsync signal). In some aspects, the timer may be calibrated using the Vsync signal to improve accuracy. For example, the timer may be calibrated using the refresh rate associated with the Vsync signal such that when the user equipment operates in polling mode, the timer wakes up the polling thread at the same pre-reserved offset ahead of the Vsync signal in each Vsync cycle (e.g., for each frame).

[0048] like Figure 4B As further illustrated by reference numeral 425, the user equipment can render a frame for display on a touchscreen based at least in part on polling touch events at polling times. The user equipment can also render a frame based at least in part on polling touch events at polling times that are pre-reserved offsets ahead of the Vsync signal time, in conjunction with a Vsync signal. For example, the user equipment can begin rendering the frame at a time associated with the Vsync signal (e.g., the time when the Vsync signal is generated by the display system and / or received by a component of the user equipment). The user equipment can render the frame using touch data retrieved by polling touch events at polling times, which provides better real-time feedback compared to touch data reported in an IRQ (e.g., reported in interrupt mode). As shown by reference numeral 430, the user equipment can display the frame on the user equipment's touchscreen.

[0049] like Figure 4C As indicated by reference numeral 435, when operating in polling mode, the user equipment may repeatedly poll touch events at one or more subsequent polling points (e.g., within one or more subsequent Vsync cycles) prior to the subsequent time associated with the Vsync signal, until no touch movement event is detected at the polling point. Each subsequent polling point may be preceded by a reserved time offset from the corresponding Vsync time in the corresponding Vsync cycle. In some aspects, when the user equipment polls touch events at polling points while operating in polling mode (e.g., as discussed in conjunction with reference numeral 420), the user equipment may determine whether the touch event at the polling point is a touch movement event. For example, the user equipment may determine whether a touch movement event was detected (e.g., whether movement was detected from a previous touch event) or whether no touch movement event is detected, at least in part, based on touch data retrieved at the polling point.

[0050] If the touch event at the polling timing is a touch movement event, the user device can continue operating in polling mode. That is, given that the touch event at the polling timing is a touch movement event, the user device can poll for the next touch event associated with the touchscreen at a next touch timing that is pre-allocated an offset earlier than the next Vsync time (e.g., within the next Vsync cycle). In this case, the user device can then render the next frame based at least in part on polling the next touch event at the next polling timing, in conjunction with the Vsync signal, and the user device can display the next frame on the touchscreen.

[0051] like Figure 4C Furthermore, as shown by reference numeral 440, the user equipment can switch from polling mode to interrupt mode by incorporating the fact that the polled touch event at the polling time is not a touch movement event. As discussed with reference numeral 435, when the user equipment is operating in polling mode and polling touch events at the polling time, the user equipment can determine whether the touch event at the polling time is a touch movement event. For example, the user equipment can determine whether a touch movement event has been detected (e.g., whether movement was detected from a previous touch event) or whether a touch movement event is no longer detected, at least in part, based on touch data retrieved at the polling time. For example, a touch movement event may no longer be detected if the user equipment determines that the touch event is a touch lift-off event (e.g., the touch input has been removed / lifted from the touchscreen) or if movement was not detected from a previous touch event. In some aspects, the user equipment can switch from polling mode to interrupt mode by incorporating the fact that the polled touch event at the polling time is not a movement event (e.g., the user equipment can return to interrupt mode). Incorporating the switch from polling mode to interrupt mode, the user equipment can then monitor touch events while operating in interrupt mode (e.g., as discussed with reference numeral 405).

[0052] Figure 4D An example procedure 450 for a user device to perform touch sampling using a hybrid touch sampling mode is shown. For example... Figure 4D Furthermore, as shown in box 452, the user equipment can operate in interrupt mode. For example, the interrupt mode could be the default touch sampling mode, and the user equipment can begin process 450 operating in interrupt mode. The user equipment can monitor touch events (e.g., during touch sampling) while operating in interrupt mode.

[0053] As shown in box 454, when the user equipment is operating in interrupt mode, new touch events can be reported. For example, a new touch event could be a touch press event, a touch release event, or a touch move event. The new touch event can be detected by an input system associated with the user equipment's touchscreen, and the input system can send an IRQ reporting the new touch event.

[0054] As shown in box 456, the user equipment may determine whether a touch movement event has been detected. For example, the user equipment may determine whether a reported touch event (e.g., a new touch event) is a touch movement event. If the user equipment determines that no touch movement event has been detected (e.g., the reported touch event is not a touch movement event), process 450 returns to box 452, and the user equipment may continue operating in interrupt mode. If the user equipment determines that a touch movement event has been detected (e.g., the reported touch event is a touch movement event), process 450 proceeds to box 458.

[0055] As shown in box 458, the user equipment can switch to polling mode. The user equipment can switch from interrupt mode to polling mode by combining the determination of detecting a touch movement event (in box 456). As shown in box 460, when operating in polling mode, the user equipment can wake up the polling thread at a polling timing that is a pre-determined time offset from the Vsync signal. As shown in box 462, the user equipment can poll for touch events at a polling timing that is a pre-determined time offset from the Vsync signal. For example, the polling thread can poll the input system associated with the touchscreen at the polling timing to obtain touch data associated with the touch event.

[0056] As shown in box 464, the user equipment may determine whether a touch movement event is detected in the current Vsync cycle. For example, the user equipment may determine whether a polled touch event is a touch movement event based on touch data retrieved at a polling timing. In some aspects, the user equipment may determine whether a touch movement event has been reported in response to polling the touch event at a polling timing (e.g., polling the touch data). If the user equipment determines that a touch movement event is detected in the current Vsync cycle, process 450 returns to box 460, and the user equipment may wake up the polling thread again at the next polling timing in the next Vsync cycle (e.g., using a timer associated with the polling thread). If the user equipment determines that no touch movement event is detected in the current Vsync cycle, process 450 proceeds to box 466.

[0057] As shown in box 466, the user equipment can switch to interrupt mode. The user equipment can switch from polling mode to interrupt mode by combining the determination that no touch movement event was detected in the current Vsync cycle (in box 464). Process 450 then returns to box 452, and the user equipment can operate in interrupt mode (e.g., the user equipment can monitor touch events in interrupt mode), as discussed above.

[0058] Figure 4E Example 470 is shown using a hybrid touch sampling mode for touch sampling. (As in...) Figure 4EAs indicated by reference numeral 472, the user equipment begins operation in interrupt mode. As indicated by reference numeral 474, when operating in interrupt mode, the user equipment detects a touch press event during touch sampling. For example, an input system associated with the user equipment's touchscreen can send an IRQ reporting the touch press event to the user equipment. The user equipment can continue operating in interrupt mode after detecting the touch press event.

[0059] As shown by reference numeral 476, when operating in interrupt mode, the user equipment detects a touch movement event during a touch sampling timing. For example, an input system associated with the user equipment's touchscreen can send an IRQ reporting the touch movement event to the user equipment. The touch point associated with the touch movement event detected during the touch sampling timing is located on the touchscreen as (x1, y1). As shown by reference numeral 478, the user equipment switches from interrupt mode to polling mode based on the detection of the touch movement event.

[0060] As shown by reference numeral 480 in the attached figure, when operating in polling mode, the user equipment polls for touch events at a first polling timing offset 484 from the Vsync signal 482 in the first Vsync cycle. The touch events polled at the first polling timing are touch movement events, and the touch point associated with the touch event polled at the first polling timing is located at (x2, y2) on the touchscreen. The user equipment may begin rendering the first frame associated with the first Vsync cycle at the time (t1) of the Vsync signal in the first Vsync cycle. At t1, the user equipment may render the first frame based on the touch movement event at the location (x2, y2) polled at the first polling timing. The location (x2, y2) is more up-to-date than the location (x1, y1) (e.g., the latter will be used for rendering in interrupt mode touch sampling), and therefore closer to the current touch point location at t1. Furthermore, as Figure 4E As shown, the delay between the first polling timing and t1 is equal to the reserved time offset 484, which is less than the delay between the touch movement event detected in interrupt mode and t1 (as shown by reference numeral 486 in the figure).

[0061] The user equipment continues to operate in polling mode after the first Vsync cycle, provided that the touch event polled during the first polling timing is a touch movement event. As shown by reference numeral 488, when operating in polling mode, the user equipment polls touch events at a second polling timing that precedes the Vsync signal in the second Vsync cycle. The touch event polled during the second polling timing is a touch movement event. The user equipment continues to operate in polling mode after the second Vsync cycle, provided that the touch event polled during the second polling timing is a touch movement event. As shown by reference numeral 490, when operating in polling mode, the user equipment polls touch events at a third polling timing that precedes the Vsync signal in the third Vsync cycle. The touch event polled during the third polling timing is a touch release event. As shown by reference numeral 492, the user equipment switches from polling mode to interrupt mode when the touch event polled during the third polling timing is not a touch movement event.

[0062] As indicated above, Figures 4A to 4E This is provided as an example. Other examples are available with reference to [the relevant information]. Figures 4A to 4E The examples described are different.

[0063] Figure 5 This is an illustration of example 500 associated with a hybrid touch sampling mode according to this disclosure. Figure 5 As shown, reference numeral 510 illustrates an example of touch sampling (for touch movement events) using the default (e.g., interrupt only) touch sampling mode, and reference numeral 520 illustrates an example using a combination of... Figures 4A to 4E Examples of touch sampling (for touch movement events) using a hybrid touch sampling mode are discussed.

[0064] like Figure 5 As shown, T0 is the time when the IRQ reporting a touch event (e.g., a touch movement event) is reported. Before reporting the IRQ, the input system (e.g., the touch IC) may scan the touch panel of the touchscreen to obtain the touch point coordinates P0 (X0, Y0). T1 is the time when the user device obtains the polling result from the input system (e.g., the touch IC) when operating in polling mode of hybrid touch sampling mode. When operating in polling mode, the user device may transmit a polling request and trigger the touch IC to scan the touch panel of the touchscreen to obtain the touch point coordinates P1 (X1, Y1). T2 is the time when the Vsync signal is received and the user device begins rendering the frame (shown as "Frame-0"). n This refers to the time frame -0 is displayed on the touchscreen (e.g., visible to the user on the user device). For example, from T2 to T... n The time may include CPU rendering, GPU rendering, SurfaceFlinger compositing, and / or sending frame buffers to the touchscreen.

[0065] In the default (e.g., interrupt-only) touch sampling example shown by reference numeral 510, the user equipment calculates and renders frame -0 based on an IRQ that reports touch events (e.g., touch movement events), which indicates coordinates P0(X0,Y0). In this example, the touch movement latency (e.g., from the touch point to the corresponding frame displayed on the screen) is (T n - T0 = 55ms). In this example, the delay / hysteresis distance of the touch input is (P n (X n , Y n ) - P0(X0, Y0)), where P n (X) n ,Y n ) is T n Location of the current touch point (e.g., finger location).

[0066] In the hybrid touch sampling example shown by reference numeral 520, the user equipment calculates and renders frame -0 based on a polling result indicating coordinates P1(X1, Y1). In this example, the touch movement latency (from touch point location to the corresponding frame displayed on the screen) is (T n - T1 = 50ms). In this example, the human delay / lag distance is (P n (X n , Y n (- P1(X1, Y1)). Therefore, in this example, hybrid touch sampling can reduce touch latency by 5ms compared to the default touch sampling.

[0067] As indicated above, Figure 5 This is provided as an example. Other examples are available with reference to [the relevant information]. Figure 5 The descriptions are different.

[0068] Figure 6 This is a flowchart of an example process 600 associated with a hybrid touch sampling mode according to this disclosure. In some aspects, Figure 6 One or more process frames are executed by a user device (e.g., user device 110). In some respects, Figure 6 One or more process frames are performed by another device or a group of devices separate from or including the user equipment, such as wireless communication devices (e.g., wireless communication device 120). Additionally or alternatively, Figure 6 One or more process frames may be executed by one or more components of device 200, such as processor 210, memory 215, input component 220, output component 225, communication component 230 and / or sensor 235.

[0069] like Figure 6 As shown, process 600 may include: when operating in interrupt mode, detecting a touch movement event associated with the touchscreen of the user device (block 610). For example, when operating in interrupt mode, the user device may detect a touch movement event associated with the touchscreen of the user device, as described above.

[0070] like Figure 6 As further shown, process 600 may include switching from interrupt mode to polling mode in conjunction with the detection of a touch movement event (block 620). For example, a user device may switch from interrupt mode to polling mode in conjunction with the detection of a touch movement event, as described above.

[0071] like Figure 6 As further shown, process 600 may include: when operating in polling mode, polling touch events associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with the Vsync signal (box 630). For example, when operating in polling mode, the user device may poll touch events associated with the touchscreen at a polling timing that is a time offset earlier than the time associated with the Vsync signal, as described above.

[0072] like Figure 6 As further shown, process 600 may include: rendering a frame for display on a touchscreen based at least in part on polling touch events at polling times, in conjunction with the Vsync signal (box 640). For example, a user device may render a frame for display on a touchscreen based at least in part on polling touch events, in conjunction with the Vsync signal, as described above.

[0073] Process 600 may include additional aspects, such as any single aspect or any combination of aspects described below and / or in conjunction with one or more other processes described elsewhere in this document.

[0074] In a first aspect, process 600 includes: when operating in an interrupt mode, monitoring touch events associated with the touchscreen according to a touch sampling rate, wherein detecting touch movement events includes detecting touch movement events at least in part based on monitoring touch events.

[0075] In a second aspect, either alone or in combination with the first aspect, process 600 includes: displaying a frame on a touchscreen.

[0076] In a third aspect, either alone or in combination with one or more of the first and second aspects, process 600 includes: disabling interrupt mode by switching from interrupt mode to polling mode.

[0077] In the fourth aspect, either alone or in combination with one or more of the first to third aspects, disabling the interrupt mode includes causing the input system associated with the touchscreen to avoid monitoring touch events at the touch sampling timing associated with the interrupt mode.

[0078] In the fifth aspect, detecting a touch movement event, either alone or in combination with one or more of the first to fourth aspects, includes receiving an interrupt request reporting the touch movement event from an input system associated with the touchscreen.

[0079] In the sixth aspect, polling touch events associated with the touchscreen at a polling timing, either alone or in combination with one or more of the first to fifth aspects, includes: waking up a polling thread for polling touch events associated with the touchscreen at a polling timing, wherein the polling thread is associated with a timer for waking up the polling thread at a next polling timing that is a time offset earlier than the next time associated with the Vsync signal.

[0080] In the seventh aspect, the timer is calibrated using a refresh rate associated with the Vsync signal, either alone or in combination with one or more of the first to sixth aspects.

[0081] In the eighth aspect, polling touch events associated with the touchscreen at a polling time, either alone or in combination with one or more of the first to seventh aspects, includes polling touch data associated with the touchscreen at the polling time.

[0082] In the ninth aspect, alone or in combination with one or more of the first to eighth aspects, the touch data includes the coordinates of a touch point on the touchscreen at the polling time.

[0083] In the tenth aspect, alone or in combination with one or more of the first to ninth aspects, process 600 includes: when operating in polling mode and the touch event is a movement event, polling the next touch event associated with the touchscreen at a next touch timing offset by a time prior to the next time associated with the Vsync signal; and rendering the next frame for display on the touchscreen based at least in part on polling the next touch event at the next polling timing, in conjunction with the Vsync signal.

[0084] In the eleventh aspect, alone or in combination with one or more of the first to tenth aspects, process 600 includes: combining a polled touch event that is not a movement event at the polling timing to switch from polling mode to interrupt mode.

[0085] In the twelfth aspect, alone or in combination with one or more of the first to eleventh aspects, process 600 includes: monitoring touch events when switching from polling mode to interrupt mode to operate in interrupt mode.

[0086] although Figure 6 An example box for process 600 is shown, but in some respects, it differs from... Figure 6 Compared to the boxes depicted, process 600 includes additional boxes, fewer boxes, different boxes, or boxes arranged in a different manner. Additionally or alternatively, two or more boxes in process 600 may be executed in parallel.

[0087] The following provides an overview of some aspects of this disclosure:

[0088] Aspect 1: A method performed by a user equipment, the method comprising: when operating in an interrupt mode, detecting a touch movement event associated with a touchscreen of the user equipment; switching from the interrupt mode to a polling mode in conjunction with detecting the touch movement event; when operating in the polling mode, polling the touch event associated with the touchscreen at a polling timing that is a time offset earlier than a time associated with a vertical synchronization (Vsync) signal; and rendering a frame for display on the touchscreen in conjunction with the Vsync signal based at least in part on polling the touch event at the polling timing.

[0089] Aspect 2: The method according to aspect 1, the method further comprising: when operating in the interrupt mode, monitoring touch events associated with the touchscreen according to a touch sampling rate, wherein detecting the touch movement event includes detecting the touch movement event at least in part based on monitoring the touch event.

[0090] Aspect 3: The method according to any one of aspects 1 to 2, the method further includes: displaying the frame on the touch screen.

[0091] Aspect 4: The method according to any one of aspects 1 to 3, the method further comprising: disabling the interrupt mode by switching from the interrupt mode to the polling mode.

[0092] Aspect 5: According to the method of aspect 4, disabling the interrupt mode includes: causing the input system associated with the touchscreen to avoid monitoring touch events at the touch sampling timing associated with the interrupt mode.

[0093] Aspect 6: The method according to any one of Aspects 1 to 5, wherein detecting the touch movement event comprises: receiving an interrupt request reporting the touch movement event from an input system associated with the touchscreen.

[0094] Aspect 7: The method according to any one of Aspects 1 to 6, wherein polling the touch event associated with the touchscreen at the polling timing comprises: waking up a polling thread for polling the touch event associated with the touchscreen at the polling timing, wherein the polling thread is associated with a timer for waking up the polling thread at a next polling timing that is earlier than the next time associated with the Vsync signal by the time offset.

[0095] Aspect 8: According to the method of aspect 7, wherein the timer is calibrated using a refresh rate associated with the Vsync signal.

[0096] Aspect 9: The method according to any one of Aspects 1 to 8, wherein polling the touch event associated with the touch screen at the polling timing includes: polling touch data associated with the touch screen at the polling timing.

[0097] Aspect 10: According to the method of aspect 9, the touch data includes the coordinates of a touch point on the touchscreen at the polling time.

[0098] Aspect 11: The method according to any one of Aspects 1 to 10, the method further comprising: when operating in the polling mode and in conjunction with the touch event being a movement event, polling the next touch event associated with the touchscreen at a next touch timing that is a time offset earlier than the next time associated with the Vsync signal; and rendering the next frame for display on the touchscreen in conjunction with the Vsync signal based at least in part on polling the next touch event at the next polling timing.

[0099] Aspect 12: The method according to any one of aspects 1 to 11, the method further comprising: switching from the polling mode to the interrupt mode in conjunction with the fact that the touch event polled at the polling timing is not a movement event.

[0100] Aspect 13: The method according to aspect 12, the method further comprising: monitoring touch events when operating in the interrupt mode in conjunction with switching from the polling mode to the interrupt mode.

[0101] Aspect 14: An apparatus for wireless communication at a device, the apparatus comprising: one or more processors; one or more memories coupled to the one or more processors; and instructions stored in the one or more memories and executable by the one or more processors to cause the apparatus to perform the method according to one or more aspects of aspects 1 to 13.

[0102] Aspect 15: An apparatus for wireless communication at a device, the apparatus comprising: one or more memories; and one or more processors coupled to the one or more memories, the one or more processors being configured to cause the device to perform the method according to one or more of aspects 1 to 13.

[0103] Aspect 16: An apparatus for wireless communication, the apparatus comprising at least one component for performing the method according to one or more of aspects 1 to 13.

[0104] Aspect 17: A non-transitory computer-readable medium storing code for wireless communication, the code including instructions executable by one or more processors to perform the method according to one or more aspects 1 to 13.

[0105] Aspect 18: A non-transitory computer-readable medium storing a set of instructions for wireless communication, the set of instructions comprising one or more instructions which, when executed by one or more processors of a device, cause the device to perform the method according to one or more aspects of aspects 1 to 13.

[0106] Aspect 19: A device for wireless communication, the device comprising: a processing system including one or more processors and one or more memories coupled to the one or more processors, the processing system being configured to cause the device to perform the method according to one or more aspects of aspects 1 to 13.

[0107] Aspect 20: An apparatus for wireless communication at a device, the apparatus comprising: one or more memories; and one or more processors coupled to the one or more memories, the one or more processors being individually or collectively configured to cause the device to perform the method according to one or more of aspects 1 to 13.

[0108] While the foregoing disclosure provides examples and descriptions, it is not intended to be exhaustive or to limit the aspects to the precise form disclosed. Modifications and variations may be made based on the foregoing disclosure, or from various forms of practice.

[0109] As used herein, the term "component" is intended to be interpreted broadly as hardware and / or a combination of hardware and software. Whether referred to as software, firmware, middleware, microcode, hardware description language, or other names, "software" should be interpreted broadly as meaning instructions, instruction sets, code, code segments, program code, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, procedures, and / or functions, etc. As used herein, a "processor" is implemented in hardware and / or a combination of hardware and software. It will be apparent that the systems and / or methods described herein can be implemented through various forms of hardware and / or combinations of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods is not limiting in any way. Therefore, no specific software code is referred to in this document to describe the operation and behavior of the systems and / or methods, as those skilled in the art will understand that the software and hardware can be designed, at least in part, based on the descriptions herein, to implement the systems and / or methods.

[0110] As used in this article, depending on the context, "meeting the threshold" can mean a value greater than the threshold, greater than or equal to the threshold, less than the threshold, less than or equal to the threshold, equal to the threshold, not equal to the threshold, etc.

[0111] Although specific combinations of features are set forth in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of various aspects. Many of these features may be combined in ways not specifically set forth in the claims and / or not disclosed in the specification. The disclosure of various aspects includes each dependent claim in combination with each other claim in the claim set. As used herein, the phrase referring to “at least one of” the list of items means any combination of these items, including a single member. As an example, “at least one of a, b, or c” is intended to cover a, b, c, a+b, a+c, b+c, and a+b+c, as well as any combination having multiple identical elements (e.g., a+a, a+a+a, a+a+b, a+a+c, a+b+b, a+c+c, b+b, b+b+b, b+b+c, c+c, and c+c+c, or any other ordering of a, b, and c).

[0112] No element, action, or instruction used herein should be construed as essential or necessary unless explicitly stated otherwise. Furthermore, as used herein, the articles “a” and “an” are intended to include one or more items and are used interchangeably with “one or more.” Similarly, as used herein, the article “described” is intended to include one or more items mentioned in connection with the article “described” and is used interchangeably with “one or more.” Furthermore, as used herein, the terms “set” and “group” are intended to include one or more items and are used interchangeably with “one or more.” If only one item is desired, the phrase “only one” or similar terminology will be used. Additionally, as used herein, the terms “having” and the like are intended to be open-ended terms that do not limit the elements they modify (e.g., an element “having” A may also have B). Furthermore, the phrase “based on” is intended to mean “at least partially based on” unless otherwise explicitly stated. Additionally, as used herein, the term “or” is intended to be open-ended when used in a series and is interchangeable with “and / or” unless otherwise explicitly stated (e.g., if used in conjunction with “any” or “only one”).

Claims

1. A user equipment, the user equipment comprising: One or more memory units; and One or more processors, said one or more processors coupled to said one or more memories, said one or more processors being configured to enable the user equipment to: When operating in interrupt mode, detect touch movement events associated with the touchscreen of the user equipment; The system switches from interrupt mode to polling mode by detecting the touch movement event. When operating in the polling mode, touch events associated with the touchscreen are polled at a polling point that is a time offset earlier than the time associated with the vertical synchronization (Vsync) signal; as well as The Vsync signal is used to render frames for display on the touchscreen, based at least in part on polling the touch event at the polling time.

2. The user equipment of claim 1, wherein the one or more processors are further configured to cause the user equipment to: When operating in the interrupt mode, touch events associated with the touchscreen are monitored according to the touch sampling rate. In order for the user equipment to detect the touch movement event, the one or more processors are configured to enable the user equipment to detect the touch movement event at least in part based on monitoring the touch event.

3. The user equipment of claim 1, wherein the one or more processors are further configured to cause the user equipment to: The frame is displayed on the touchscreen.

4. The user equipment of claim 1, wherein the one or more processors are further configured to cause the user equipment to: The interrupt mode is disabled by switching from the interrupt mode to the polling mode.

5. The user equipment of claim 4, wherein, in order to disable the interrupt mode in the user equipment, the one or more processors are configured to cause the user equipment to: This prevents the input system associated with the touchscreen from monitoring touch events at the touch sampling time associated with the interrupt mode.

6. The user equipment of claim 1, wherein, in order for the user equipment to detect the touch movement event, the one or more processors are configured to cause the user equipment to: Receive an interrupt request from the input system associated with the touchscreen to report the touch movement event.

7. The user equipment of claim 1, wherein, in order for the user equipment to poll the touch event associated with the touchscreen at the polling timing, the one or more processors are configured to cause the user equipment to: At the specified polling timing, a polling thread is activated to poll for touch events associated with the touchscreen. The polling thread is associated with a timer for waking up the polling thread at the next polling opportunity, which is an advance of the time offset from the next time associated with the Vsync signal.

8. The user equipment of claim 7, wherein the timer is calibrated using a refresh rate associated with the Vsync signal.

9. The user equipment of claim 1, wherein, in order for the user equipment to poll the touch event associated with the touchscreen at the polling timing, the one or more processors are configured to cause the user equipment to: The touch data associated with the touchscreen is polled at the polling time.

10. The user equipment of claim 9, wherein the touch data includes the coordinates of a touch point on the touchscreen at the polling time.

11. The user equipment of claim 1, wherein the one or more processors are further configured to cause the user equipment to: When operating in the polling mode and in conjunction with the touch event being a movement event, poll for the next touch event associated with the touchscreen at the next touch timing that is a time offset earlier than the next time associated with the Vsync signal; and The next frame is rendered for display on the touchscreen based at least in part on polling the next touch event at the next polling time, in conjunction with the Vsync signal.

12. The user equipment of claim 1, wherein the one or more processors are further configured to cause the user equipment to: The polling mode is switched to the interrupt mode when the polling event is not a movement event at the polling time.

13. The user equipment of claim 12, wherein the one or more processors are further configured to cause the user equipment to: Touch events are monitored when switching from the polling mode to the interrupt mode to operate in the interrupt mode.

14. A method performed by a user equipment, the method comprising: When operating in interrupt mode, detect touch movement events associated with the touchscreen of the user equipment; The system switches from interrupt mode to polling mode by detecting the touch movement event. When operating in the polling mode, touch events associated with the touchscreen are polled at a polling point that is a time offset earlier than the time associated with the vertical synchronization (Vsync) signal; as well as The Vsync signal is used to render frames for display on the touchscreen, based at least in part on polling the touch event at the polling time.

15. The method according to claim 14, further comprising: When operating in the interrupt mode, touch events associated with the touchscreen are monitored according to the touch sampling rate. The detection of the touch movement event includes detecting the touch movement event based at least in part on monitoring touch events.

16. The method of claim 14, further comprising: The frame is displayed on the touchscreen.

17. The method of claim 14, further comprising: The interrupt mode is disabled by switching from the interrupt mode to the polling mode.

18. The method of claim 14, wherein polling the touch event associated with the touchscreen at the polling timing comprises: At the specified polling timing, a polling thread is activated to poll for touch events associated with the touchscreen. The polling thread is associated with a timer for waking up the polling thread at the next polling opportunity, which is an advance of the time offset from the next time associated with the Vsync signal.

19. The method of claim 14, further comprising: When operating in the polling mode and the touch event is a movement event, the next touch event associated with the touchscreen is polled at the next touch timing, which is a time offset earlier than the next time associated with the Vsync signal. as well as The next frame is rendered for display on the touchscreen based at least in part on polling the next touch event at the next polling time, in conjunction with the Vsync signal.

20. A non-transitory computer-readable medium storing an instruction set, the instruction set comprising: One or more instructions that, when executed by one or more processors of the user equipment, cause the user equipment to perform the following operations: When operating in interrupt mode, detect touch movement events associated with the touchscreen of the user equipment; The system switches from interrupt mode to polling mode by detecting the touch movement event. When operating in the polling mode, touch events associated with the touchscreen are polled at a polling point that is a time offset earlier than the time associated with the vertical synchronization (Vsync) signal; as well as The Vsync signal is used to render frames for display on the touchscreen, based at least in part on polling the touch event at the polling time.