# Patent

## Title
Use of random sampling technique to reduce finger-coupled noise

## Abstract

Random sampling techniques include techniques for reducing or eliminating errors in the output of capacitive sensor arrays such as touch panels. The channels of the touch panel are periodically sampled to determine the presence of one or more touch events. Each channel is individually sampled in a round robin fashion, referred to as a sampling cycle. During each sampling cycle, all channels are sampled once. Multiple sampling cycles are performed such that each channel is sampled multiple times. Random sampling techniques are used to sample each of the channels. One random sampling technique randomizes a starting channel in each sampling cycle. Another random sampling technique randomizes the selection of all channels in each sampling cycle. Yet another random sampling technique randomizes the sampling cycle delay period between each sampling cycle. Still another random sampling technique randomizes the channel delay period between sampling each channel.

## Background
RELATED APPLICATIONS
This application claims priority under 35 U.S.C. §119(e) of the U.S. provisional patent application Ser. No. 61/326,830, filed Apr. 22, 2010, and titled “Differential Capacitive Touchpad Circuit and Method,” which is hereby incorporated by reference in its entirety.
The following co-owned, co-filed, and co-pending applications, U.S. patent application Ser. No. 12/986,776, titled “Method and Apparatus for Improving Dynamic Range of a Touchscreen Controller,”; U.S. patent application Ser. No. 12/986,841, titled “System for and Method of Transferring Charge to Convert Capacitance to Voltage for Touchscreen Controllers,”; U.S. patent application Ser. No. 12/986,991, titled “System Integration of Tactile Feedback and Touchscreen Controller for Near-Zero Latency Haptics Playout,”; U.S. patent application Ser. No. 12/987,008, titled “Use of Random Sampling Technique to Reduce Finger-Coupled Noise,”; and U.S. patent application Ser. No. 12/986,905, titled “Method and Apparatus for Generating Piezoelectric Transducer Excitation Waveforms Using a Boost Converter,”, are all also incorporated by reference in their entireties.


FIELD OF THE INVENTION
The present invention relates to the field of capacitive sensor arrays. More particularly, the present invention relates to the field of reducing or eliminating errors in the output of capacitive sensor arrays such as touchscreens.
BACKGROUND OF THE INVENTION
Many electrical devices are incorporating touchscreen type displays. A touchscreen is a display that detects the presence, location, and pressure of a touch within the display area, generally by a finger, hand, stylus, or other pointing device. The touchscreen enables a user to interact with the display panel directly without requiring any intermediate device, rather than indirectly with a mouse or touchpad. Touchscreens can be implemented in computers or as terminals to access networks. Touchscreens are commonly found in point-of-sale systems, automated teller machines (ATMs), mobile phones, personal digital assistants (PDAs), portable game consoles, satellite navigation devices, and information appliances.
There are a number of types of touchscreen technologies. A capacitive touchscreen panel is coated, partially coated, or patterned with a material that conducts a continuous electrical current across one or more capacitive touch sensors, referred to simply as touch sensors. The touch sensors exhibit a precisely controlled field of stored electrons in both the horizontal and vertical axes to achieve capacitance. The human body is also an electrical device that has stored electrons and therefore also exhibits capacitance. When a reference capacitance of the touch sensors is altered by another capacitance field, such as a finger, electronic circuits located at each corner of the panel measure the resultant distortion in the reference capacitance. The measured information related to the touch event is sent to a capacitive touchscreen controller for mathematical processing. Touch sensors can either be touched with a bare finger or with a conductive device being held by a bare hand. Touch sensors also work based on proximity, and do not have to be directly touched to be triggered. In most cases, direct contact to a conductive metal surface does not occur and the touch sensors are separated from the user's body by an insulating glass or plastic layer. Devices with capacitive buttons intended to be touched by a finger can often be triggered by quickly waving the palm of the hand close to the surface without touching.
A capacitive touchscreen is made of an array of touch sensors arranged into rows and columns. A channel can refer to either a single sensor, a row sensor, or a column sensor. In a typical capacitive touchscreen application, the capacitance of each channel is sequentially measured to generate a profile of capacitance change in the capacitive touchscreen. This capacitance profile can be used to detect the presence of a touch event and to report the position of the touch coordinates. Typically, the sampling for each channel is done at a fixed interval. However, this can form beat frequencies that are the same as certain noise frequencies.
Finger-coupled noise is the noise coupled through a finger or a conductive stylus to one or more touch sensors when the user is touching a capacitive touchscreen. Only the touch sensors beneath the finger are affected by the finger-coupled noise. The human body acts an antenna which may pick up ambient noise, such as noise generated by surrounding compact flourescent lights, which is subsequently passed to the touch sensors when touched. The human body is also grounded to the earth, which can be a different ground than the device ground of the capacitive touchscreen. With two different grounds, ground noise will also be added to the overall system. The finger-coupled noise can be of any frequency ranging from close to DC to hundred's of kilohertz (kHz) with an amplitude up to a few volts peak-to-peak. When the noise level at a particular frequency is high enough, it can cause the capacitive touchscreen controller to report a touch when no touch is actually present, referred to as a false touch.
SUMMARY OF THE INVENTION
Random sampling techniques include techniques for reducing or eliminating errors in the output of capacitive sensor arrays such as touch panels. The channels of the touch panel are periodically sampled to determine the presence of one or more touch events. Each channel is individually sampled in a round robin fashion. During each round robin, all channels are sampled once. In this manner, each round robin is referred to as a sampling cycle. Multiple sampling cycles are performed such that each channel is sampled multiple times. In some embodiments, a channel capacitance is determined for each channel by averaging the sampled values for the channel over a predetermined number of sampling cycles. In other embodiments, means other than averaging are used to calculate the channel capacitance, including but not limited to calculating a mean or a weighted average. A random sampling technique is used to sample each of the channels. Multiple different randomization techniques can be used. One random sampling technique randomizes a starting channel in each sampling cycle. Another random sampling technique randomizes the selection of all channels in each sampling cycle. Yet another random sampling technique randomizes the sampling cycle delay period between each sampling cycle. Still another random sampling technique randomizes the channel delay period between sampling each channel.
In one aspect, a method of detecting one or more touch events on a capacitive touch sensitive device is disclosed. The method includes configuring a plurality of channels, each channel corresponding to the capacitive touch sensitive device; sampling each channel in the plurality of channels according to a randomization algorithm; for each channel, calculating a channel capacitance using sampled data; and determining one or more touch events from the channel capacitances calculated for the plurality of channels. In some embodiments, the randomization algorithm comprises performing multiple sampling cycles, each sampling cycle includes sampling each channel in the plurality of channels.
In another aspect, another method of detecting one or more touch events on a capacitive touch sensitive device is disclosed. The method includes configuring a plurality of channels, each channel corresponding to the capacitive touch sensitive device; sampling each channel in the plurality of channels according to a randomization algorithm such that each channel is sampled, wherein sampling each channel comprises measuring a capacitance of each channel; performing multiple sampling cycles, wherein a sampling cycle comprises sampling each channel in the plurality of channels one time; for each channel, calculating a channel capacitance using the measured capacitances from the multiple sampling cycles for the channel; and determining one or more touch events from the channel capacitances calculated for the plurality of channels.
In some embodiments, the randomization algorithm comprises starting each sampling cycle with a randomly selected channel. In some embodiments, each channel in the plurality of channels is sampled in a predetermined sequential order, each sampling cycle starts at the randomly selected channel and sampling continues in the sequential order for a remainder of the sampling cycle. In some embodiments, the randomization algorithm further comprises randomly selecting each channel within the sampling cycle. In some embodiments, a sampling cycle delay period is included between each sampling cycle, further wherein the randomization algorithm comprises randomly changing the sampling cycle delay period between each sampling cycle. In some embodiments, a channel delay period is included between each channel sampling, further wherein the randomization algorithm comprises randomly changing the channel delay period. In some embodiments, the plurality of channels comprises N channels, and the randomization algorithm comprises randomly generating the channel delay period every M channel samples such that a same channel delay period is applied for each of M channel samples before a new channel delay period is randomly generated and applied to a next M channel samples. In some embodiments, M is less than N. In other embodiments, M is greater than N. In some embodiments, noise is distributed across a frequency response of the sampled channels. In some embodiments, noise is distributed across multiple channels in the plurality of channels. In some embodiments, calculating the channel capacitance for each channel comprises averaging the measured capacitances from the multiple sampling cycles for the channel. In some embodiments, each channel comprises either a row sensor in the capacitive touch sensitive device or a column sensor in the capacitive touch sensitive device.
In yet another aspect, an apparatus for detecting one or more touch events on a touch panel is disclosed. The apparatus includes a capacitive touch sensitive device including a plurality of channels, each channel comprising a touch sensor; a processor configured to implement a randomization algorithm; and a measuring circuit coupled to the capacitive touch sensitive device and to the processor, wherein the measuring circuit is configured to sample each channel in the plurality of channels according to the randomization algorithm, wherein the processor is configured to receive sampled data from the measuring circuit, to calculate a channel capacitance for each channel using the received sample data, and to determine one or more touch events from the channel capacitances calculated for the plurality of channels.
In some embodiments, the randomization algorithm comprises performing multiple sampling cycles, each sampling cycle includes sampling each channel in the plurality of channels. In some embodiments, the randomization algorithm further comprises starting each sampling cycle with a randomly selected channel. In some embodiments, the processor and the measuring circuit are configured such that each channel in the plurality of channels is sampled in a predetermined sequential order, each sampling cycle starts at the randomly selected channel and sampling continues in the sequential order for a remainder of the sampling cycle. In some embodiments, the randomization algorithm further comprises randomly selecting each channel within the sampling cycle. In some embodiments, a sampling cycle delay period is included between each sampling cycle, further wherein the randomization algorithm comprises randomly changing the sampling cycle delay period between each sampling cycle. In some embodiments, a channel delay period is included between each channel sampling, further wherein the randomization algorithm comprises randomly changing the channel delay period. In some embodiments, the plurality of channels comprises N channels, and the randomization algorithm comprises randomly generating the channel delay period every M channel samples such that a same channel delay period is applied for each of M channel samples before a new channel delay period is randomly generated and applied to a next M channel samples. In some embodiments, M is less than N. In other embodiments, M is greater than N. In some embodiments, the processor is configured to calculate the channel capacitance for each channel by averaging the measured capacitances from the multiple sampling cycles for the channel. In some embodiments, each channel comprises either a row sensor in the capacitive touch sensitive device or a column sensor in the capacitive touch sensitive device. In some embodiments, the capacitive touch sensitive device comprises a two-dimensional touch panel. In some embodiments, the capacitive touch sensitive device comprises a one-dimensional virtual slider.
In another aspect, another apparatus for detecting one or more touch events on a touch panel is disclosed. The apparatus includes a capacitive touch sensitive device including a plurality of channels, each channel comprising a touch sensor; a processor configured to implement a randomization algorithm; and a measuring circuit coupled to the capacitive touch sensitive device and to the processor, wherein the measuring circuit is configured to sample each channel in the plurality of channels according to the randomization algorithm such that each channel is sampled, wherein sampling each channel comprises measuring a capacitance of each channel, and multiple sampling cycles are performed, wherein a sampling cycle comprises sampling each channel in the plurality of channels one time, wherein the processor is configured to receive measured capacitance data from the multiple sampling cycles, to calculate a channel capacitance for each channel using the received measured capacitance data, and to determine one or more touch events from the channel capacitances calculated for the plurality of channels.



BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the differential sensing scheme and, together with the description, serve to explain the principles of the haptic feedback system, but not limit the invention to the disclosed examples.
FIG. 1 illustrates a block diagram of an exemplary application using the random sampling techniques.
FIG. 2 illustrates an exemplary touch panel used as a capacitance touch interface.
FIG. 3 illustrates a non-random sampling technique for sampling the channels of a touch panel.
FIG. 4 illustrates an exemplary frequency response using the non-random sampling technique.
FIG. 5 illustrates a first random sampling technique for sampling the channels of a touch panel.
FIG. 6 illustrates an exemplary frequency response using the non-random sampling technique.
FIG. 7 illustrates a comparable frequency response to FIG. 6 except that the first random sampling technique is applied.
FIG. 8 illustrates a second random sampling technique for sampling the channels of a touch panel.
FIG. 9 illustrates a third random sampling technique for sampling the channels of a touch panel.
FIG. 10 illustrates a fourth random sampling technique for sampling the channels of a touch panel.
FIG. 11 illustrates an exemplary frequency response using the non-random sampling technique.
FIG. 12 illustrates a comparable frequency response to FIG. 11 except that the third or fourth random sampling technique are applied.



DETAILED DESCRIPTION OF THE EMBODIMENTS
Embodiments of the present invention are directed to random sampling techniques to reduce noise in a capacitive touchscreen. Those of ordinary skill in the art will realize that the following detailed description of the present invention is illustrative only and is not intended to be in any way limiting. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefit of this disclosure.
Reference will now be made in detail to implementations of the present invention as illustrated in the accompanying drawings. The same reference indicators will be used throughout the drawings and the following detailed description to refer to the same or like parts. In the interest of clarity, not all of the routine features of the implementations described herein are shown and described. It will, of course, be appreciated that in the development of any such actual implementation, numerous implementation-specific decisions must be made in order to achieve the developer's specific goals, such as compliance with application and business related constraints, and that these specific goals will vary from one implementation to another and from one developer to another. Moreover, it will be appreciated that such a development effort might be complex and time-consuming, but would nevertheless be a routine undertaking of engineering for those of ordinary skill in the art having the benefit of this disclosure.
While the random sampling techniques will be described in conjunction with the embodiments below, it will be understood that they are not intended to limit the methods and systems of these embodiments and examples. On the contrary, the random sampling techniques are intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the present invention as defined by the appended claims. Furthermore, in the following detailed description, numerous specific details are set forth in order to more fully illustrate the methods and systems. However, it will be apparent to one of ordinary skill in the prior art that the methods and systems may be practiced without these specific details.
In accordance with the present application, some of the components, process steps, and/or data structures may be implemented using various types of processing systems, including hardware, software, or any combination thereof. In addition, those of ordinary skill in the art will recognize that devices of a less general purpose nature, such as hardwired devices, application specific integrated circuits (ASICs), or the like, may also be used without departing from the scope and spirit of the inventive concepts disclosed herein.
Random sampling techniques include techniques for reducing or eliminating errors in the output of capacitive sensor arrays such as touchpads, touchscreens, touch sliders and the like, including touch sensors that detect the presence and position of a stylus, as well as those that detect and determine finger position. As used herein, reference to a finger, a touch, a touch event, or the like refers to a user making contact, or proximate contact as applicable, to the touchscreen or touch panel by a user's finger or conductive device held by the user, such as a conductive stylus. The random sampling techniques describe means of extracting a touch event related signal in the presence of extraneous signals. In particular, the random sampling techniques describe methods of spreading out or reducing any noise, such as finger-coupled noise, present at a dominant frequency to a level that does not cause a false touch. The random sampling techniques randomize the interval at which each sensor channel is sampled. In some embodiments, the randomization is achieved by randomizing the sampling order of the channels. In other embodiments, the randomization is achieved by inserting a random delay between successive channel sampling. While the illustrative embodiment described herein is applied in a mobile telephone, it is understood that capacitive touch sensors are used in a wide variety of devices. Examples of such devices include, but are not limited to, portable devices, such as personal digital assistants (PDAs), global positioning systems (GPS) receivers, as well as larger devices such as touchscreen enabled displays and computer systems, as well as appliances.
FIG. 1 illustrates a block diagram of an exemplary application using the random sampling techniques. A mobile telephone 10 includes a microprocessor 14 coupled to a memory 15 that stores program instructions for execution by microprocessor 14, and generally includes non-volatile storage for such program instructions, as well as temporary storage for use by microprocessor 14. The program instructions stored in memory 15 include program instructions forming computer program products in accordance with embodiments of the present invention that determine the position of one or more fingers and/or styli at the surface of a touch sensor array included in an integrated liquid crystal display (LCD)/touchpad 12. The LCD/touchpad 12 is coupled to a touchpad circuit 20 in accordance with an embodiment of the present invention that includes the capability of measuring the capacitance of the touch sensitive channels of the touchpad within LCD/touchpad 12. The mobile telephone 10 also includes a display controller 16 for coupling microprocessor 14 to the LCD within integrated LCD/touchpad 12 and radio circuits 18 for providing wireless telephone connections. Mobile telephone 10 also includes an audio codec 17 coupled to a microphone 13 and a speaker element 11 that provide for voice communications with a user.
Each touch sensor in the touchpad measures a change in capacitance. The touchpad circuit 20 converts the sensed capacitance change to a voltage. Noise present in the system can alter the change in capacitance perceived by the capacitive touch sensors, making it indistinguishable from a real touch event. Finger-coupled noise can cause the touchpad circuit 20 to report false touches.
FIG. 2 illustrates an exemplary array of capacitive touch sensors, referred to collectively as a touch panel, used as a capacitance touch interface. The touch sensors are configured into rows and columns. The white diamonds are the row touch sensors and the shaded diamonds are the column touch sensors. All white diamonds in a given row, for example the 15 white diamonds in row 1, are serially connected via bridges to form one single row sensor. Similarly, all black diamonds in a given column are serially connected to form one single column sensor. In the exemplary configuration of FIG. 2, the touch panel includes 8 row sensors and 14 column sensors. As used herein, a channel refers to a single touch sensor, a row sensor, or a column sensor. Referring to the touch panel of FIG. 2, each row sensor and each column sensor are referred to as channels. In this exemplary case having 8 row sensors and 14 column sensors, there are a total of 22 channels.
When a finger or a conductive stylus approaches the touch panel, at the area where the touch panel is contacted, the channel capacitance changes, or in the case of the two-dimensional array of touch sensors in FIG. 2, the capacitance of a row sensor and column sensor changes. An analog front end (AFE) circuit converts the capacitance detected by the channel to a proportional voltage. In some embodiments, the touchpad circuit 20 and the AFE circuits are configured as capacitance measuring circuits. In other embodiments, the AFE circuit is alternatively configured so that the differential sensing scheme can be used. The AFE outputs the converted voltage to an analog-to-digital converter (ADC), which coverts the voltage to a digital code representation. The noise sources can change the output of the AFE. In the absence of incident noise, a normal touch causes the ADC output to be changed by a few hundred codes. However, in the presence of incident noise, an un-touched sensor can also cause the ADC output to be changed by a few hundred codes. In this case, the touchpad circuit 20 can not distinguish between an actual touch versus a non-touch with noise coupling. Any conventional touch sensing circuitry can be used to measure and determine the capacitance and capacitance changes of each channel. In a preferred embodiment, the capacitance and capacitance changes are measured and determined using the sensing circuits and methods described in the co-pending U.S. patent application Ser. No. 12/986,841, titled “Charge Transfer Scheme to Convert Capacitance to Voltage for Touchscreen Controller,”.
The channels of the touch panel are periodically sampled to determine the presence of one or more touch events. All channels are not continuously and simultaneously sampled so as to minimize power and processing requirements. Instead, each channel is individually sampled in a round robin fashion. During each round robin, all channels are sampled once. In this manner, each round robin is referred to as a sampling cycle. Multiple sampling cycles are performed such that each channel is sampled multiple times. A channel capacitance is determined for each channel by averaging the sampled values for the channel over a predetermined number of sampling cycles. Channel capacitance is calculated by averaging to reduce the influence of noise.
FIG. 3 illustrates a non-random sampling technique for sampling the channels of a touch panel. There are N number of channels, for example 22 channels as in the touch panel of FIG. 2 having 14 columns and 8 rows. The channels are sampled sequentially, starting from channel 1 and ending with channel N, where the sampled channel 1 is designated by S1, sampled channel 2 is designated by S2, sampled channel 3 is designated by S3 and so on to sampled channel N designated by SN. There is a channel delay period T between sampling of each channel. Each round robin, or sampling cycle, is delayed by a sampling cycle delay period TD. The capacitance of each channel is periodically determined by averaging the sampled values for each channel over K number of sampling periods. For example, the channel capacitance for channel 1 is calculated using the sample value S1 from sampling cycle 1 (round robin 1), sample value S1 from sampling cycle 2 (round robin 2), and so on for each sample value S1 from the remaining sampling cycles up to sampling cycle K (round robin K). The actual values used in this calculation are converted voltages, codes, or other representations of the original data sensed by the sampled channel.
In this non-random sampling technique, every channel is sampled according to a fixed time period defined by (N−1)*T+TD. This constant sampling period forms beat frequencies. The frequency response associated with sampling the touch panel using the non-random sampling technique shows spikes at the beat frequencies. Touch detection is susceptible to noise at the beat frequencies as sampling of the touch event is performed at the same beat frequencies. FIG. 4 illustrates an exemplary frequency response corresponding to a touch event using the non-random sampling technique. The spikes in the frequency response shown in FIG. 4 show the effects of the beat frequencies. Taking an average typically reduces noise by a factor of the square root of the number of averages. But, if there is a fixed frequency relationship between the noise and the sampling period, averaging does not reduce the noise. If noise has the same frequency as the beat frequency, then averaging the sampled values over K sampling cycles does not effect the noise spikes as each sample has the same noise. The same noise is sampled again and again since the noise and the sampling rate have the same frequency.
The noise spikes seen in the non-random sampling technique can be alleviated by randomizing the time interval at which the samples are taken for each channel. Instead of sampling at beat frequencies that leads to systematic noise, sampling is randomized so that taking averages results in spreading the noise across multiple frequencies. The end result using randomization is that even if noise is present at a certain frequency or frequency span, the noise is spread across other frequencies, thereby reducing the peak noise. Using the non-random sampling technique, if a peak noise is present at a certain frequency which is the same frequency as or a multiple of a beat frequency, then the peak noise is not reduced by taking averages. However, the random sampling techniques do lead to a reduced peak noise. Multiple different randomization techniques can be used.
FIG. 5 illustrates a first random sampling technique for sampling the channels of a touch panel. The first random sampling technique randomizes a starting channel in each sampling cycle. In other words, each sampling cycle is started with a random channel. In some embodiments, a random number generator is used to generate the number of the starting channel for each sampling cycle. Alternatively, any conventional method for generating a random starting number can be used. All N channels are sequentially sampled, starting with the randomly selected starting channel. Within each sampling cycle, the sampling sequence loops back to channel 1 after sampling channel N in order to sample all channels during the sampling cycle. As shown in the exemplary sequence of FIG. 5, the first sampling cycle (round robin 1) starts with the randomly selected channel 5, followed by channel 6 and so on until channel N, followed by channel 1, then channel 2 and so on until finishing the first sampling cycle with channel 4. Sampling of each channel is delayed by the channel delay period T. Each sampling cycle is delayed by the sampling cycle delay period TD. The second sampling cycle (round robin 2) starts with the randomly selected channel N, followed by channel 1 and so on until finishing the second sampling cycle with channel N−1. The last sampling cycle K (round robin K) starts with the randomly selected channel 11, followed by channel 12 and so on until finishing the last sampling cycle with channel 10. The capacitance, or representative value, of each channel is periodically determined by averaging the sampled values for each channel over the K sampling cycles. Since the channels are not sampled in the same absolute order from one switching cycle to the next, the processor must rearrange the sample order to perform the average calculation. For example, channel 1 may be the first channel sampled in a given sampling cycle, but channel 1 is not always sampled as the first channel in all sampling cycles. As such, the channel 1 samples must be matched together from different sampling positions within the different sampling cycles in order to be properly averaged. This rearranging requires additional processing.
FIG. 6 illustrates an exemplary frequency response using the non-random sampling technique. FIG. 7 illustrates a comparable frequency response to FIG. 6 except that the first random sampling technique is applied. FIG. 6 shows the noise spurs present on the beat frequencies. FIG. 7 shows a reduction in the noise spurs resulting from the first random sampling technique.
In an alternative embodiment, the first random sampling technique is modified so that each channel is randomly selected, not just the starting channel. In this modified technique, each sample is selected once and at random during each sampling cycle.
FIG. 8 illustrates a second random sampling technique for sampling the channels of a touch panel. The second random sampling technique randomizes the sampling cycle delay period between each sampling cycle. In the second random sampling technique, the sampling order of the channels remains constant from sampling cycle to sampling cycle. As shown in the exemplary sequence of FIG. 8, channel 1 is always sampled first. It is understood that any channel can be selected as the first sampled channel, as long as this channel remains the first sampled channel for all sampling cycles. All N channels are sequentially sampled, starting with the first sampled channel, such as channel 1. In some embodiments, a random number generator is used to generate the channel delay period between each sampling cycle. Alternatively, any conventional method for generating a random starting number can be used.
Sampling of each channel is delayed by the channel delay period T. Each sampling cycle is delayed by the sampling cycle delay period, represented as some fixed period TD plus a randomly generated delay dX. As shown in FIG. 8, the sampling cycle delay period between the first sampling cycle (round robin 1) and the second sampling cycle (round robin 2) is TD+d1, and the sampling cycle delay period between the second sampling cycle and the third sampling cycle (not shown) is TD+d2. The size and range of the random delay dX is programmable so as to meet a desired level of randomization. In some embodiments, the size of the random delay dX is set to be within 10% of the fixed period TD. For each specific touch panel implementation, the programmable value may vary. The capacitance, or representative value, of each channel is periodically determined by averaging the sampled values for each channel over the K sampling cycles. Since the sampling order is the same between each sampling cycle, no additional processing is required to rearrange the channel samples prior to averaging.
FIG. 9 illustrates a third random sampling technique for sampling the channels of a touch panel. The third random sampling technique randomizes the channel delay period between sampling each channel. In the third random sampling technique, the sampling order of the channels remains constant from sampling cycle (round robin) to sampling cycle. As shown in the exemplary sequence of FIG. 9, channel 1 is always sampled first. It is understood that any channel can be selected as the first sampled channel, as long as this channel remains the first sampled channel for all sampling cycles. All N channels are sequentially sampled, starting with the first sampled channel, such as channel 1. In some embodiments, a random number generator is used to generate the channel delay period between each sampling cycle. Alternatively, any conventional method for generating a random starting number can be used.
Sampling of each channel is delayed by the channel delay period, represented as some fixed period T plus a randomly generated delay dX. Each sampling cycle is delayed by the sampling cycle delay period, represented as some fixed period TD plus the randomly generated delay dX. The random delay dX is changed after every M channels are sampled. In the third random sampling technique, M is less than the number of channels N. As shown in FIG. 9, the random delay d1 is applied for the first M channels. The random delay d2 is applied to the next M channels, which includes channel M+1 to channel N in the sampling cycle 1 (round robin 1) and channel 1 to channel 2M−N in the sampling cycle 2 (round robin 2). The random delay d2 applied between the channel M in the sampling cycle 1 to the channel 2M−N in the sampling cycle 2 is added to the fixed portion TD of the sampling cycle delay period. It is understood that the sizes of the random delays d1 and d2 in the third random sampling technique may or may not be the same as the sizes of the random delays d1 and d2 in the second random sampling technique. In some embodiments, the sizes of the random delays d1 and d2 in the third random sampling technique are smaller than the sizes of the random delays d1 and d2 in the second random sampling technique. The size and range of the random delay dX is programmable so as to meet a desired level of randomization. The capacitance, or representative value, of each channel is periodically determined by averaging the sampled values for each channel over the K sampling cycles. Since the sampling order is the same between each sampling cycle, no additional processing is required to rearrange the channel samples prior to averaging.
FIG. 10 illustrates a fourth random sampling technique for sampling the channels of a touch panel. The fourth random sampling technique is the same as the third random sampling technique except that M is greater than the number of channels N.
FIG. 11 illustrates an exemplary frequency response using the non-random sampling technique. FIG. 12 illustrates a comparable frequency response to FIG. 11 except that the third or fourth random sampling technique are applied. FIG. 11 shows the noise spurs present on the beat frequencies. FIG. 12 shows a reduction in the noise spurs resulting from the third or fourth random sampling technique. Similar results as that shown in FIG. 12 are seen using the second random sampling technique.
The random sampling techniques are described above in the context of a two-dimensional array of touch sensors, such as the touch panel of FIG. 2. The random sampling techniques can also be applied to a one-dimensional array of touch sensors, where each individual touch sensor is measured, as opposed to a row or column of touch sensors. An example of such a one-dimensional application is applying the random sampling technique to virtual sliders and scroll wheels.
The present invention has been described in terms of specific embodiments incorporating details to facilitate the understanding of the principles of construction and operation of the invention. Such references, herein, to specific embodiments and details thereof are not intended to limit the scope of the claims appended hereto. It will be apparent to those skilled in the art that modifications can be made in the embodiments chosen for illustration without departing from the spirit and scope of the invention.

## Claims

1. A method of detecting one or more touch events on a capacitive touch sensitive device comprising:
configuring a plurality of channels, each channel corresponding to the capacitive touch sensitive device;
sampling each channel in the plurality of channels according to a randomization algorithm during a first sampling cycle, wherein a randomly selected channel is sampled at a start of the first sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after a defined channel delay period;
sampling, after a defined first sampling cycle delay period between the first sampling cycle and a second sampling cycle, each channel in the plurality of channels according to the randomization algorithm during the second sampling cycle, wherein a randomly selected channel is sampled at a start of the second sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after the defined channel delay period, wherein the defined first sampling cycle delay period is greater than the defined channel delay period;
sampling, after a defined second sampling cycle delay period between the second sampling cycle and a third sampling cycle, each channel in the plurality of channels according to the randomization algorithm during the third sampling cycle, wherein a randomly selected channel is sampled at a start of the third sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after the defined channel delay period, wherein the defined second sampling cycle delay period is greater than the defined channel delay period, wherein the defined second sampling cycle delay period is equal to the defined first sampling cycle period;
matching sampled data sampled during the first sampling cycle for each channel of the plurality of channels to the sampled data sampled during the second sampling cycle and the third sampling cycle for the same channel;
for each channel, calculating a channel capacitance using sampled data, wherein calculating the channel capacitance for each channel comprises averaging the sampled data for each channel over multiple cycles; and
determining one or more touch events based upon the channel capacitances calculated for the plurality of channels,
wherein each channel in the plurality of channels is sampled in a sequential order during the first sampling cycle, the second sampling cycle, and the third sampling cycle.

2. The method of claim 1 wherein each channel comprises either a row of touch sensors in the capacitive touch sensitive device or a column of touch sensors in the capacitive touch sensitive device.

3. The method of claim 1 wherein noise is distributed across a frequency response of the sampled channels.

4. A method of detecting one or more touch events on a capacitive touch sensitive device comprising:
configuring a plurality of channels, each channel corresponding to the capacitive touch sensitive device;
sampling each channel in the plurality of channels according to a randomization algorithm such that each channel is sampled, wherein sampling each channel comprises measuring a capacitance of each channel;
performing a first sampling cycle, wherein the first sampling cycle comprises sampling each channel in the plurality of channels, wherein a randomly selected channel is sampled at a start of the first sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after a defined channel delay period;
performing a second sampling cycle after a defined sampling cycle delay period, wherein the second sampling cycle comprises sampling each channel in the plurality of channels, wherein a randomly selected channel is sampled at a start of the second sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after the defined channel delay period, wherein the defined sampling cycle delay period is greater than the channel delay period;
matching sampled data sampled during the first sampling cycle for each channel of the plurality of channels sampled to the sampled data sampled during the second sampling cycle for the same channel;
for each channel, calculating a channel capacitance using the measured capacitances from multiple sampling cycles for the channel; and
determining one or more touch events from the channel capacitances calculated for the plurality of channels; wherein:
each channel in the plurality of channels is sampled in a predetermined sequential order, each sampling cycle starts at the randomly selected channel and sampling continues in the sequential order for a remainder of the sampling cycle.

5. The method of claim 4 wherein noise is distributed across a frequency response of the sampled channels.

6. The method of claim 4 wherein each channel comprises either a row sensor in the capacitive touch sensitive device or a column sensor in the capacitive touch sensitive device.

7. An apparatus for detecting one or more touch events on a touch panel comprising:
a capacitive touch sensitive device including a plurality of channels, each channel comprising a touch sensor;
a processor configured to implement a randomization algorithm; and
a measuring circuit coupled to the capacitive touch sensitive device and to the processor, wherein the measuring circuit is configured to sample each channel in the plurality of channels during a first sampling cycle according to the randomization algorithm and to sample each channel in the plurality of channels during a second sampling cycle after a defined sampling cycle delay period according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after a defined channel delay period, wherein the defined sampling cycle delay period is greater than the defined channel delay period, wherein a randomly selected channel is sampled at a start of each sampling cycle according to the randomization algorithm, wherein the processor is configured to receive sampled data from the measuring circuit, to match sampled data sampled during a first sampling cycle for each channel of the plurality of channels to the sampled data sampled during a second sampling cycle for the same channel, to calculate a channel capacitance for each channel using the received sample data, and to determine one or more touch events from the channel capacitances calculated for the plurality of channels, wherein the processor is configured to calculate the channel capacitance for each channel by averaging the sampled data for each channel over multiple cycles; wherein
each channel in the plurality of channels is sampled in a predetermined sequential order, each sampling cycle starts at the randomly selected channel and sampling continues in the sequential order for a remainder of the sampling cycle.

8. The apparatus of claim 7 wherein each channel comprises either a row sensor in the capacitive touch sensitive device or a column sensor in the capacitive touch sensitive device.

9. The apparatus of claim 7 wherein the capacitive touch sensitive device comprises a two- dimensional touch panel.

10. The apparatus of claim 7 wherein the capacitive touch sensitive device comprises a one-dimensional virtual slider.

11. An apparatus for detecting one or more touch events on a touch panel comprising:
a capacitive touch sensitive device including a plurality of channels, each channel comprising a touch sensor;
a processor configured to implement a randomization algorithm; and
a measuring circuit coupled to the capacitive touch sensitive device and to the processor, wherein the measuring circuit is configured to sample each channel in the plurality of channels during a first sampling cycle according to the randomization algorithm such that each channel is sampled and to sample each channel in the plurality of channels during second sampling cycle after a defined sampling cycle delay period according to the randomization algorithm such that each channel is sampled, wherein a randomly selected channel is sampled at a start of each sampling cycle according to the randomization algorithm, wherein each channel in the plurality of channels is sampled after a defined channel delay period, wherein the defined sampling cycle delay period is greater than the defined channel delay period, wherein sampling each channel comprises measuring a capacitance of each channel, and multiple sampling cycles are performed, wherein a sampling cycle comprises sampling each channel in the plurality of channels one time, wherein the processor is configured to receive measured capacitance data from the multiple sampling cycles, to match sampled data sampled during a first sampling cycle for each channel of the plurality of channels to the sampled data sampled during a second sampling cycle for the same channel, to calculate a channel capacitance for each channel using the received measured capacitance data, and to determine one or more touch events from the channel capacitances calculated for the plurality of channels, wherein the processor is configured to calculate the channel capacitance for each channel by averaging the sampled data for each channel over multiple cycles; wherein:
each channel in the plurality of channels is sampled in a predetermined sequential order, each sampling cycle starts at the randomly selected channel and sampling continues in the sequential order for a remainder of the sampling cycle.