Decoding of touch data based on the codeword portion

The method addresses the inefficiency of decoding entire codewords by using partial codeword portions for faster and more accurate touch position estimation in capacitive touch sensing, achieving high report rates and reduced ambiguity.

JP2026514107APending Publication Date: 2026-05-01MICROCHIP TECHNOLOGY INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
MICROCHIP TECHNOLOGY INC
Filing Date
2024-04-03
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Existing capacitive touch sensing technologies require decoding of the entire codeword before estimating the touch position, which is inefficient for applications with fast output report rates.

Method used

A code division multiplexed touch sensing method that uses spread spectrum technology to estimate the touch position by decoding a partial codeword portion before receiving all received signals, utilizing subsets of codewords assigned based on previous touch position estimations.

Benefits of technology

Enables faster and more accurate touch position estimation with increased report rates, such as up to 200Hz, by alternately decoding partial and complete codeword portions, reducing ambiguity and improving signal-to-noise ratio.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026514107000001_ABST
    Figure 2026514107000001_ABST
Patent Text Reader

Abstract

A capacitive touch sensing system comprising a processor and a machine-readable storage medium for storing instructions, having transmitting and receiving electrodes positioned at node intersections to have mutual capacitance that deviates when a node is touched, the system performing the following: assigning a complete codeword to the transmitting electrodes; identifying a subset of the transmitting electrodes based on previous touch position estimation; generating a transmit signal for the transmitting electrodes; receiving a first portion of a receive signal indicating capacitance for the receiving electrodes; decoding a first portion of the receive signal for the receiving electrodes using the first portion of the codeword; and calculating a touch position estimation for the subset of the transmitting electrodes based on the decoded first portion of the receive signal.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] (Claiming priority) This application claims priority to U.S. Provisional Patent Application No. 63 / 461,013, filed on 21 April 2023, which is incorporated herein by reference as if it were fully described herein.

[0002] (Technical field) This disclosure relates to code division multiplexing in a capacitive touch sensing device, and more particularly to decoding received data that has been code division multiplexed based on a codeword portion in order to estimate the touch position in a capacitive touch sensing device. [Background technology]

[0003] Code-division multiplexing (CDM) is a spread-spectrum technique that enables the use of the same channel multiple times. In spread-spectrum implementations of capacitive touch sensors, each signal is assigned a codeword. Signal data is available on a shared channel. Each signal has a unique codeword assigned to it, called a chip sequence or orthogonal sequence, because the codeword contains a symbol or "chip". By knowing the codeword, a receiver can distinguish between different signals. A codeword consists of +1 or -1. Each codeword has L chips, where L is also the maximum number of orthogonal signals. Two codewords are orthogonal when their dot product is zero (0). The dot product of only the first elements of such two codewords is usually non-zero; that is, the codeword parts are often non-orthogonal to each other.

[0004] However, in some applications, it is important to estimate the transmitted information or obtain channel gain before the entire codeword is received and processed. Such applications include, for example, capacitive touch sensing applications with relatively fast output report rates.

[0005] In particular, human interface devices (HIDs) that use capacitive touch sensing have a relatively fast output report rate. Capacitive touch sensing devices include sensor electrodes that function as antennas, often formed in layers of conductive material, such as copper stripes on a printed circuit board (PCB). These electrodes are electrically connected to a touch detection unit, for example, on the same PCB, forming a compact unit. The measurement of the touch detection unit depends, among other things, on the position of the object (finger / hand) near the sensor electrode, which affects the capacitive coupling between the electrode and the object, and yields a measurement signal of the object corresponding to the distortion of the AC electric field. Touch sensing techniques for two-dimensional touch detection often use a signal deviation matrix (i.e., in (x,y)) across Tx-Rx nodes to identify the position where the user's finger is touching. A touchscreen may have, for example, a 16×16 signal deviation matrix of Tx-Rx nodes having Tx electrodes (m=0,1,2,...,15) and Rx electrodes (n=0,1,2,...,15). The codeword for the Tx electrode (m) is transmitted, the received signal for the Rx electrode (n) is received, and the information for the electrode node (n,m) is decoded. When using CDM, decoding is only possible after the received signal has been fully received, i.e., only when it contains information from the entire transmitted codeword. However, in some touchscreen applications, it is important to obtain an estimate (of the transmitted information, or complex channel gain) before the received signal has been fully received and processed.

[0006] A code-division multiplexed touch sensing method is needed that uses spread spectrum technology to estimate the touch position before receiving all received signals. [Overview of the project]

[0007] According to one embodiment, a code division multiplexed touch sensing scheme is provided that uses a spread spectrum technique to estimate the touch position before receiving all received signals.

[0008] One embodiment provides a method, the method providing a capacitive touch sensing system comprising transmitting electrodes and receiving electrodes positioned such that they have mutual capacitance between the transmitting electrode and the receiving electrode at electrode intersections called nodes, wherein the capacitance at each node deviates when touched; the step of identifying a first subset and a second subset of transmitting electrodes based on previous touch position estimation; the step of assigning codewords from the first subset of codewords to each of the transmitting electrodes in the first set of transmitting electrodes, wherein each codeword is a complete codeword having a first codeword portion and a second codeword portion; and the step of assigning codewords from the second subset of codewords, The method includes the steps of assigning a codeword to each of the transmitting electrodes of a second set of signal electrodes, wherein each codeword is a complete codeword having a first codeword portion and a second codeword portion; generating a transmit signal for each of the transmitting electrodes according to the assigned codeword; transmitting the transmit signal; receiving a first portion of the received signal for each of the receiving electrodes, indicating the respective capacitances between the receiving electrode and each of the transmitting electrodes; decoding the first portion of the received signal for each of the receiving electrodes using the first portion of the first subset of the codeword; and calculating a touch position estimate for the first subset of the transmitting electrodes based on the decoded first portion of the received signal.

[0009] One embodiment provides the method described in the preceding paragraph, the method comprising: receiving a second portion of a received signal for each receiving electrode; decoding the complete received signal for each receiving electrode using a complete codeword; calculating a touch position estimate of a set of transmitting electrodes based on the decoded complete received signal; and sequentially and alternately decoding a first portion of a received signal to decode the complete received signal.

[0010] One embodiment provides a method according to either of the two preceding paragraphs, the method comprising the steps of: defaulting on each of the codewords from a first subset of codewords to each of a first set of transmitting electrodes; defaulting on each of the codewords from a second subset of codewords to each of a second set of transmitting electrodes, wherein the codewords comprise a unique number, the transmitting electrodes are uniquely numbered, and the defaulting on step includes: assigning the codeword with the lowest number to the lowest numbered transmitting electrode; and assigning the codeword with the second lowest number to the second lowest numbered transmitting electrode.

[0011] One embodiment provides a method according to any one of the three preceding paragraphs, comprising the step of repeating the step of performing touch position estimation.

[0012] One embodiment provides a method according to any one of the four preceding paragraphs, the step of assigning each codeword from a first subset of codewords to each of a first set of transmitting electrodes includes the step of adaptively assigning each codeword from the first subset of codewords to a transmitting electrode that has been identified as touched or presumed to have been touched, based on a previous touch position estimation; and the step of assigning each codeword from a second subset of codewords to each of a second set of transmitting electrodes includes the step of adaptively assigning each codeword from the second subset of codewords to a transmitting electrode that has been identified as not touched or presumed to have been touched, based on a previous touch position estimation.

[0013] One embodiment provides a method according to any one of the five preceding paragraphs, wherein the step of assigning each codeword from a second subset of codewords to each of a second set of transmitting electrodes includes the step of adaptively assigning each codeword from the second subset of codewords to a transmitting electrode that has been identified as not touched or presumed to be not touched, based on a previous touch position estimation, and the step of assigning each codeword from a first subset of codewords to each of a first set of transmitting electrodes includes the step of adaptively assigning each codeword from the first subset of codewords to the remaining unassigned transmitting electrodes.

[0014] One embodiment provides a method according to any one of the six preceding paragraphs, wherein each codeword comprises a binary sequence having 2*K chips of an Hadamard matrix where K is an integer, and each codeword portion of the codeword comprises K chips.

[0015] In one embodiment, a system is provided, the system comprising a capacitive touch sensing system having transmitting electrodes and receiving electrodes positioned such that they have mutual capacitance between transmitting electrodes and receiving electrodes at electrode intersections called nodes, wherein the capacitance at each node deviates when touched, the system comprising a processor and a machine-readable storage medium for storing instructions, the instructions which, when executed by the processor, instruct the system to identify a first subset and a second subset of transmitting electrodes based on previous touch position estimation, and to assign codewords from the first subset of codewords to each of the transmitting electrodes in the first set of transmitting electrodes, wherein each codeword is a complete codeword having a first codeword portion and a second codeword portion. The system is configured to: assign a codeword from a second subset of codewords to each of the transmitting electrodes in a second set of transmitting electrodes, each of which is a complete codeword having a first codeword portion and a second codeword portion; generate a transmit signal for each of the transmitting electrodes in the first subset of transmitting electrodes according to the assigned codewords; transmit the transmit signal; receive a first portion of the received signal for each of the receiving electrodes, which represents the respective capacitance between the receiving electrode and each of the transmitting electrodes; decode the first portion of the received signal for each of the receiving electrodes using the first portion of the first subset of codewords; and calculate a touch position estimate for the first subset of transmitting electrodes based on the decoded first portion of the received signal.

[0016] One embodiment provides the system described in the previous paragraph, wherein, when executed by a processor, the instruction causes the system to: receive a second portion of the received signal for each receiving electrode; decode the complete received signal for each receiving electrode using the complete codeword; calculate a touch position estimate for a set of transmitting electrodes based on the decoded complete received signal; and sequentially and alternately decode the first portion of the received signal and decode the complete received signal.

[0017] One aspect provides the system described in any one of the two previous paragraphs, and when the instructions are executed by a processor, the system is caused to: by default, assign each of the signature words from the first subset of signature words to each of the first set of transmission electrodes; and by default, assign each of the signature words from the second subset of signature words to each of the second set of transmission electrodes, where the signature words include unique numbers, the transmission electrodes are uniquely numbered, and the default assignment includes assigning the signature word with the lowest number to the lowest numbered transmission electrode and assigning the signature word with the second lowest number to the second lowest numbered transmission electrode.

[0018] One aspect provides the system described in any one of the three previous paragraphs, and when the instructions are executed by a processor, the system is caused to repeatedly perform touch position estimation.

[0019] One aspect provides the system described in any one of the four previous paragraphs, and when the instructions are executed by a processor, the system is caused to: adaptively assign each of the signature words to the transmission electrodes identified as touched or presumed to have been touched based on the previous touch position estimation; and adaptively assign each of the signature words to the transmission electrodes identified as not touched or presumed to have not been touched based on the previous touch position estimation.

[0020] One aspect provides the system described in any one of the five previous paragraphs, and assigning each of the signature words from the second subset of signature words to each of the second set of transmission electrodes includes adaptively assigning each of the signature words from the second subset of signature words to the transmission electrodes identified as not touched or presumed to have not been touched based on the previous touch position estimation.

[0021] One embodiment provides the system described in the preceding paragraph, wherein assigning each codeword from a first subset of codewords to each of a first set of transmitting electrodes includes adaptively assigning each codeword from a first subset of codewords to the remaining unassigned transmitting electrodes.

[0022] One embodiment provides a system as described in any one of the seven preceding paragraphs, wherein each codeword comprises a binary sequence having 2*K chips of an Hadamard matrix where K is an integer, and each codeword portion of a codeword comprises K chips. The figure shows an example of a capacitive touch sensing system and method using code division multiplexing. [Brief explanation of the drawing]

[0023] [Figure 1] The sensor layout shows 10 receiving electrodes RX0, ..., Rx9 and 16 transmitting electrodes Tx0, ..., Tx15. [Figure 2A] The touch surface and time axis are shown, illustrating a single-finger touch on the electrode intersection of Tx3 and Rx3, which maintains a constant position over time. [Figure 2B] The default codeword pair TX(S2T) mapping is shown for the touch surface and single-finger touch shown in Figure 2A. [Figure 2C] Figure 2B shows the codeword-to-Tx mapping and the tip value of the codeword. [Figure 2D] The codeword-to-Tx mapping and tip values ​​are shown in Figure 2C, highlighting the configuration of the default codeword-to-Tx mapping matrix, where the Hadamard matrix consists of four quadrants with smaller Hadamard matrices. [Figure 3A] The touch surface and time axis are shown, illustrating a two-finger touch with a constant finger position over time. [Figure 3B] The codeword-to-Tx mapping shown in Figure 2B is observed, and for the touch surface shown in Figure 3A, ambiguous detection is achieved after 8 chips. [Figure 3C]Figures 3A and 3B show the adapted assignment or mapping of codewords to the transmitting electrodes. [Figure 4A] The touch surface and time axis are shown, illustrating two-finger touches on Tx0 to Tx7 where the touch position remains constant over time. [Figure 4B] The codeword-to-tx mapping shown in Figure 2B is evident, and for the touch surface shown in Figure 4A, clear detection is achieved after 8 chips. [Figure 5A] The touch surface and time axis are shown, illustrating a three-finger touch that maintains a constant position over time. [Figure 5B] The adapted codeword-to-TX(S2T) mapping is shown, and for the touch surface shown in Figure 5A, clear detection is obtained after 8 chips, and the adapted mapping may be based on previous touch estimation, unlike the default mapping. [Figure 6] This shows a timeline of alternating transmission of 100% and 50% of code-division multiple access data. The 50% of code-division multiple access data is based on a codeword portion or an incomplete set of codewords for estimating the signal deviation matrix of a capacitive touch sensing system. [Figure 7] A block diagram of a system comprising a capacitive touch sensing system, a processor, and a storage medium is shown. [Figure 8] The present invention describes a method that includes the steps of assigning a codeword to a transmitting electrode, decoding a received signal with the codeword, and estimating the current touch position. [Modes for carrying out the invention]

[0024] Reference numbers for any illustrated element appearing in multiple different figures have the same meaning across the multiple figures, and any reference or discussion herein of any illustrated element in the context of any particular figure applies to each other figure in which the same illustrated element is shown.

[0025] The embodiment provides a code division multiplexing (CDM) touch sensing scheme that implements spread spectrum technology, which decodes partial CDM received data based on a portion of a codeword to estimate a touch location before the received signal of the entire multiplexed codeword is received and decoded using the complete codeword or a complete set of codewords. Each codeword portion of a codeword may be compiled into an Hadamard matrix, and each codeword portion includes each row of the Hadamard matrix.

[0026] If the approximate positions of one or more fingers touching the touch surface of a capacitive sensing system are known, a subset of the set of orthogonal codewords can be assigned to the multiple touched Tx electrodes. The multiple codewords within the subset assigned to the multiple touched Tx electrodes begin with multiple mutually orthogonal subcodewords. On the receiver side, despreading and clear touch detection can be performed after receiving the data for the multiple mutually orthogonal subcodewords within the subset assigned to the multiple touched Tx electrodes, without waiting for all the codewords of the data to be received.

[0027] Figure 1 shows a schematic diagram of a mutual capacitance touch detection system. This touch detection system comprises a set of parallel transmitting electrodes and a set of parallel receiving electrodes positioned orthogonally to the set of parallel transmitting electrodes in a two-dimensional (x,y) plane. Tx-Rx electrode intersections, crossings, or “nodes” are located at the intersections of the transmitting and receiving electrodes. Figure 1 shows a mutual capacitance touch detection system having a 16 × 10 array of Tx-Rx electrode nodes. In the touch detection system, when a finger touches the touch surface of a node in this (x,y) plane, the measurement of the node changes. The measurement of a Tx-Rx electrode node is governed by the mutual capacitance between each electrode, which is affected by the finger touching the node. When a finger touches a node, the change in the measurement of the node is a signal deviation because the capacitance of the node changes when the node is touched. As used herein, the term “touching” is not limited to physical contact but includes proximity sufficient to cause a significant change in capacitance at the node that can be detected as a signal deviation.

[0028] The received signal can be observed for each receiving electrode, and the received signal indicates the respective capacitance between the receiving electrode and the transmitting electrode. Since a single receiving electrode (e.g., Rx2) receives transmitted signals from multiple transmitting electrodes (Tx0~Tx15), the transmitted signals can be independently decoded by assigning a complete codeword (e.g., a 16-chip binary codeword) to each transmitting electrode. The assigned codeword may be rows of a 16-size Hadamard matrix. The received signal can be decoded by its complete assigned codeword to identify the transmitted signal of each transmitting electrode. In the mutual capacitive touch detection system shown in Figure 1, the received signal of each receiving electrode (Rx0~Rx9) can be separately decoded by its complete assigned codeword to identify the transmitted signal of each transmitting electrode (Tx0~Tx15), and thus all transmitted signals are decoded to identify the deviation of the transmitted signal at the “touched” node. The signal deviation matrix (i.e., in (x,y)) across a 16 × 10 array of Tx-Rx electrode nodes can be derived from the decoded received signal. The touch position in the two-dimensional (x,y) plane can then be estimated for the time at which the received signal is observed. U.S. Patent No. 9,927,933 discloses a system having a gesture detector with multiple input channels and one output channel using an AC near-field generated through at least one transmitting electrode coupled to an output channel, some of which are coupled to the receiving electrodes of the gesture detector. The entire disclosure of U.S. Patent No. 9,927,933 is incorporated herein by reference for any purpose.

[0029] The portion of the signal deviation matrix across the 16x10 array of Tx-Rx electrode nodes (i.e., at (x,y)) can also be derived in less time than it takes to transmit the complete codeword. For example, the portion of the signal deviation matrix can be derived after receiving only 8 chips of the received signal and before receiving all 16 chips of the received signal containing the complete codeword. First, a subset T of the transmitting electrodes... サブセットA signal is identified, and its signal is affected (signal deviation) by a finger touching any receiving electrode at the previous time. Next, eight transmitting electrodes, including the one identified as being affected by a finger at the previous time, are given a Hadamard matrix H of size 16, with each being a codeword in Figure 2C. 16 Each of the first eight rows is assigned, and the Hadamard matrix H16 in Figure 2C is composed of four Hadamard matrices H8, as shown in Figure 2D and further described below. Figures 2B-2D show the default codeword assignments, but the adapted codeword-to-TX electrode mapping is for a subset of the transmitting electrodes being touched T サブセット The first eight codewords (Hadamard matrix H of size 16) 16 Based on the previous touch estimate, it can be reallocated to the first 8 rows of the following: Then, a Hadamard matrix H of size 16. 16 The remaining 8 lines are a subset T of the transmitting electrode. サブセット The remaining transmit electrodes outside of the 16 are assigned to the untouched transmit electrodes. The transmit system then operates to transmit the transmit signal, i.e., the codeword, for all 16 transmit electrodes. After receiving the first 8 chips of the receive signal, the detection system performs a CDM despread operation using a Hadamard matrix H8 of size 8 to derive a partial signal deviation matrix (i.e., in x,y) across the 16×10 array of Tx-Rx electrode nodes. This estimate is sometimes called a 50% estimate because it is based on the codeword portion (8 chips out of the complete 16 chips), which is 50% of the complete codeword in the H8 Hadamard matrix, and the signal deviation matrix is ​​T サブセット Only the transmitting electrode in the signal deviation matrix can be calculated and updated, and the rest of the signal deviation matrix is ​​assumed to be unchanged compared to the previous 100% (whole) estimate. In the case of the 100% (whole) estimate, the received signal contains both the first part of the codeword (first 8 chips) and the second part of the codeword (second 8 chips), resulting in the reception of the complete codeword (16 chips), and the complete received signal can be decoded for the receiving electrode using the complete codeword.

[0030] Figures 2A to 2D illustrate a capacitive touch sensing system including transmitting and receiving electrodes positioned to have mutual capacitance between a transmitting electrode and a receiving electrode at an electrode intersection called a node (see FIG. 1), wherein the capacitance at each node deviates when touched, providing, identifying a first subset and a second subset of transmitting electrodes based on a previous touch position estimate, assigning a codeword (default or adapted) from a first subset of codewords to each of the transmitting electrodes in the first subset of transmitting electrodes, each of the codewords from the first subset of codewords being a complete codeword having a first codeword portion and a second codeword portion, assigning a codeword (default or adapted) from a second subset of codewords to each of the transmitting electrodes in the second subset of transmitting electrodes, each of the codewords from the second subset of codewords being a complete codeword having a first codeword portion and a second codeword portion, generating a transmission signal for each of the transmitting electrodes according to the assigned codeword, transmitting the transmission signal, receiving a first portion of a received signal indicative of the mutual capacitance between each of the receiving electrodes and each of the transmitting electrodes for each of the receiving electrodes, decoding the first portion of the received signal for each of the receiving electrodes using a first portion of the first subset of codewords, and calculating a touch position estimate for the first subset of transmitting electrodes based on the decoded first portion of the received signal, thereby performing an estimation of a touch position.

[0031] The signal deviation matrix over a 16 × 10 array of Tx-Rx electrode nodes (i.e., at (x, y)) can be further derived after reception of all 16 chips. The detection system performs a despreading operation for all transmitting electrodes using a full-size 16 × 16 Hadamard matrix H of complete codewords. 16 Thereby, the obtained signal deviation matrix can be an estimate having an improved signal-to-noise ratio (SNR) compared to a 50% estimate. This second estimate is H 16Because it is based on a complete codeword (16 chips) in the Hadamard matrix, it is sometimes called 100% estimation.

[0032] The array of Tx-Rx electrode nodes may be of any size and aspect ratio. The codeword can take any form, and in particular, any diffusion sequence. The tip value can take values ​​other than +1 and -1, for example, +2 and -2. An estimated signal deviation matrix of the array of Tx-Rx electrode nodes can be derived using an Hadamard matrix or any other mathematical structure.

[0033] A signal deviation matrix and detection system that alternates between 50% and 100% report estimations can provide an increased report rate for touch position estimation. As illustrated with reference to Figure 1, the report rate for touch position estimation can be doubled by performing estimations based on the first 8 chips of the 8 codewords of the first group of transmitting electrodes (50% estimation) in addition to performing estimations based on all 16 chips of the 16 codewords of the combination of the first and second groups of transmitting electrodes (100% estimation). Estimations in any communication / sensing system that involve estimations calculated after 100% of the data is available may be incorrect because the estimations are based on guesswork and are subject to measurement noise and other variables.

[0034] For some applications, a high report rate, such as 200Hz, is desirable. A report rate as high as 200Hz can be achieved by alternating between 50% and 100% estimation.

[0035] When used as a CDM sensing system, each transmitting electrode is assigned an orthogonal diffusion sequence or a diffusion sequence or codeword from a set of codewords. As used herein, default assignment or mapping means initial or original mapping of a codeword to a transmitting electrode without using a previous touch estimation to signal the assignment or mapping. As used herein, adaptive assignment or mapping of a codeword means later assigning or mapping a codeword to a transmitting electrode based on a previous touch estimation. Adaptive mapping may map a first set of codewords to any transmitting electrode that is estimated or inferred to have been touched by a previous touch estimation.

[0036] In the mutual capacitive touch detection system shown in Figure 1, there are 16 transmit (Tx) electrodes Tx0, Tx1, ..., Tx15. Figure 2D shows the default codeword-to-TX(S2T) mapping of codewords to the transmit electrodes, where the transmit electrodes are numbered from Tx0 to Tx15 from top to bottom. The sequence or set of codewords is represented by a Hadamard matrix of size 16.

[0037]

number

[0038]

number

[0039]

number

[0040] Figure 2A shows the touch surface and time axis, illustrating a one-finger touch (indicated by a circle on the plane representing the touch surface) on the electrode intersection of Tx3 and Rx3, which has a constant position over time (indicated by a cylinder extending from the plane representing the touch surface). Figure 2B shows the default codeword pair TX(S2T) mapping of the touch surface and one-finger touch shown in Figure 2A, with codewords c0~c 15 Each is assigned to a transmitting electrode Tx0 to Tx15, and each codeword has 16 chips. In this example, one finger is touching the touch surface of Tx3. The finger is not touching any of the other electrodes, especially the Tx electrodes TX8 to Tx15. Therefore, there is no change in the position of the touch and no new touches, so there is no effect on the signal deviation from the finger touching the Tx electrodes Tx8 to Tx15, and as a result there is no ambiguity in the signal deviation. The touch on TX8 to Tx15 is part C0 of codewords C0 to C7. (8) ~C7 (8) Codeword C8~C 15 Part C0 (8) ~C7 (8)Since this is the same, receiving the first 8 chips may result in ambiguous received data for touching Tx0-Tx7. As used herein, the term “ambiguous” means that there are two or more identical codeword parts, so the detection system cannot definitively determine the touch position between two or more possible locations. As shown in Figures 2C-2D, the first 8 chips of the codeword assigned to transmit electrodes Tx0-Tx7 are identical to the first 8 chips of the codeword assigned to transmit electrodes Tx8-Tx15, and as a result, the touch position is ambiguous because the touch position could be either transmit electrodes Tx0-Tx7 or transmit electrodes Tx8-Tx15. Since CDM is based on a set of orthogonal codewords, in this example the rows of the Hadamard matrix are size 16. Two codewords are orthogonal when their dot product is zero (0). Two codewords are substantially orthogonal when the codewords contain a dot product of less than 0.1 times the codeword length. Orthogonality means that even if you touch a Txm, other

[0041]

number

[0042]

number

[0043]

number

[0044]

number

[0045]

number

[0046]

number

[0047]

number

[0048] Figure 2D shows a diagram of codewords as shown in Figure 2C, where an orthogonal set of codewords has rows of a Hadamard matrix of size 16. Figure 2D highlights the construction of the default codeword-to-Tx mapping matrix, where the Hadamard matrix consists of four quadrants with smaller Hadamard matrices.

[0049]

number

[0050] Figure 2D shows how to construct an Hadamard matrix, and the Hadamard matrix H of size 16. 16 This is constructed recursively in four quadrants of a size 16 Hadamard matrix containing four copies of a size 8 Hadamard matrix H8, one of which in the lower right quadrant is sign-reversed, and the size 8 Hadamard matrix H8 is a set of orthogonal rows with 8 chip lengths. This matrix has a special construction method, namely, a size 16 Hadamard matrix H8 from four copies of a size 8 Hadamard matrix H8 16 For it to be constructed, there exists an iterative pattern. A Hadamard matrix H8 of size 8 has orthogonal rows.

[0051] After eight Rx chips have been received, there is ambiguity between touches to Tx#0~#7 and #8~#15 because the subcodewords Tx#0~#7 and #8~#15 are identical. For example, a touch to Tx#11 results in the same Rx signal as a touch to Tx#3. This ambiguity exists when there is a possibility of touches to both Tx#0~#7 and #8~#15. However, if it can be inferred that there are no touches to Tx#8~#15, then touches to Tx#0~#7 can be clearly resolved even after only the first eight chips of the original codeword's 16 chips have been received, and vice versa.

[0052] Figure 3A shows the touch surface and time axis, illustrating a two-finger touch, i.e., one touch on Tx electrode #3 (Tx3) and another touch on Tx electrode #11 (Tx11). Figure 3B shows the codeword pair TX(S2T) mapping of the touch surface shown in Figure 3A. In this example, one finger is touching the Tx3 touch surface and the other finger is touching the Tx11 touch surface. None of the other electrodes are touched by fingers. Therefore, if there is no change in touch position, there may be ambiguity in the signal deviation because of the influence of fingers touching Tx electrodes Tx8~Tx15 on the signal deviation. The codewords for Tx8~Tx15 are the first 8 chips of codewords C0~C7, which are codewords C8~C 15 Since the first 8 chips are identical, there may be ambiguity with the codewords Tx0~Tx7 after receiving the first 8 chips (see Figure 2D). The ambiguity in Figure 3B can be resolved by decoding after receiving all 16 chips, since the second 8 chips of the codeword are not identical. Alternatively, Figure 3C shows an adapted assignment or mapping of the codewords to the transmit electrodes, which can eliminate the ambiguity of the codewords when decoding after receiving the first 8 chips. With the adapted assignment, codewords C0~C3 are assigned to transmit electrodes Tx2~Tx5, respectively, and codewords C4~C7 are assigned to transmit electrodes Tx10~Tx13, respectively. The touched transmit electrodes (Tx2~Tx5 and Tx10~Tx13) are assigned codewords C0~C7, and the remaining untouched transmit electrodes (Tx0~Tx1, Tx6~Tx9, and Tx14~Tx15) are assigned codewords C8~C 15 Since it is assigned, there is no ambiguity in this adapted assignment.

[0053] Figure 4A shows the touch plane and time axis, illustrating a two-finger touch on Tx0-Tx7, i.e., one touch on Tx electrode #2 (Tx2) and another touch on Tx electrode #5 (Tx5). Figure 4B shows the touch plane and codeword pair TX(S2T) mapping of a one-finger touch at a time point prior to that shown in Figure 4A. No fingers touch any of the other electrodes, particularly Tx electrodes Tx8-Tx15. Therefore, if there is no change in touch position, there is no effect on the signal deviation from fingers touching Tx electrodes Tx8-Tx15, and consequently, there is no ambiguity in the signal deviation. In this example, the two-finger touch can be clearly resolved / detected after only eight receiving chips when both are located on Tx electrodes Tx0-Tx7. Any number of touches to the region of Tx electrodes Tx0-Tx7 can be resolved if it is assumed that there are no touches to Tx electrodes Tx8-Tx15. The codewords for Tx8-Tx15 may be ambiguous after the reception of the first 8 chips, as these codeword portions are identical to those of the codewords for Tx0-Tx7. If it has been previously estimated that there was no touch to Tx8-Tx15, the detection system may infer that if there was any touch, it was a touch to Tx0-Tx7 rather than to Tx8-Tx15.

[0054] Figure 5A shows the touch surface and time axis, illustrating two fingers covering Tx electrodes Tx2-Tx6 and one finger covering Tx electrodes Tx9-Tx11. Figure 5B shows the adapted codeword-to-TX(S2T) mapping, where the codewords are mapped as follows: C0→Tx2, C1→Tx3, C2→Tx4, C3→Tx5, C4→Tx6, C5→Tx9, C6→Tx10, C7→Tx11. This adaptive mapping can provide clear detection after 8 chips for the touch surface and finger touch positions shown in Figure 5A. One way to avoid ambiguity is to confirm by previous touch estimation that all touches are on transmit electrodes Tx0-Tx7, and therefore, the currently touching finger can be inferred to be located on transmit electrodes Tx0-Tx7. However, in this example in Figures 5A and 5B, the ambiguity problem regarding finger touch to any Tx electrode can be resolved under the condition that a sufficient number of Tx electrodes remain untouched, or more precisely, that each Tx-Rx channel can be assumed to yield a zero signal deviation. The first eight diffusion sequences or H 16 The codewords are adaptively assigned to the touched Tx electrodes. In particular, the two fingers covering Tx electrodes Tx2-Tx6 and the one finger covering Tx electrodes Tx9-Tx11 shown in Figure 5A are assigned the codewords shown in Figure 5B.

[0055]

number

[0056]

number

[0057] Sequences or codewords can be spread by Sylvester's construction. Sylvester's recursive construction

[0058]

number

[0059] According to one embodiment, the Hadamard matrix H 16 This can be expressed as follows:

[0060]

number

[0061] Figure 6 shows a graph illustrating an example of measurement and finger position estimation updates over time. In this example, at 10-millisecond intervals, the system alternately receives 50% and 100% of the chips for 50% and 100% estimations, respectively. At 0 milliseconds, no prior information about the finger position to the touch sensor is provided. Therefore, the default assignment or mapping of codewords to the Tx electrodes is applied, which is why the data bars are shown as contours rather than solid lines. At 10 milliseconds, the graph shows that the system has received data for the first 8 chips. If there had been previous touch information at time 0ms, and if a mapping from codewords to Tx was applicable so that codewords from the first 8 rows of the Hadamard matrix H16 were assigned to all touched Tx electrodes, then a position estimation update could be calculated for each Tx electrode. However, since there was no previous touch information available at time 0ms, it was not possible to calculate a perceptible position estimation update during this 0ms time. At 20 milliseconds, the graph shows that the system has received 100% of the transmitted codewords, meaning that a position estimate update has been calculated for 100% of the transmitting electrodes ("100%Tx") by despreading the received data with the codewords from the full-size Hadamard matrix, which also means a signal deviation estimate with an improved SNR compared to a 50%Tx estimate where only the first half of the entire codeword is used. Also at 20 milliseconds, since information about available finger touches was present, the adapted codeword-to-Tx mapping is applied to the next measurement cycle, ensuring that codewords from the set {c0, c1, ..., c7} are mapped to all touched Tx electrodes. At 30 ms with the next 50%Tx estimate, a touch position estimate update is calculated for the Tx electrodes associated with codewords c0, ..., c7 using the received data from the first eight transmitted chips and the codewords from the rows of the Hadamard matrix H8. After receiving data from all 16 transmitted chips, within 40ms, touch position updates are calculated for all 16 Tx electrodes, and new codewords are prepared to be adapted to the Tx map for the next measurement cycle.The graph shows that these steps are repeated at 50 and 60 milliseconds, and again at 70 and 80 milliseconds. Reported estimation can be provided by sequentially and alternately decoding the first portion (50%) of the received signal and then decoding the complete received signal (100%). Thus, the signal deviation matrix providing the touch position estimation can be reported at more frequent time intervals.

[0062] A detection system that alternates between 50% and 100% report estimations can provide an increased report rate for touch location estimation. In this case, touch location estimations are decoded by the detection system at 10-millisecond intervals. On the other hand, if only 100% estimations are decoded, the detection system can estimate touch locations at 20-millisecond intervals. By making estimations based on the first 8 chips of 8 codewords from a first subset of the transmitting electrodes (50% estimation), the codewords are adaptively mapped based on information from previous estimations, and in addition to making estimations based on all 16 chips of 16 codewords from the combined first and second subsets of the transmitting electrodes (100% estimation), the detection system can make estimations at 10-millisecond intervals. The detection system can make touch location estimations at 10-millisecond intervals, 5-millisecond intervals, 1-millisecond intervals, or any time interval greater than 1 millisecond. The detection system can report touch location estimations at any report rate of 50Hz, 100Hz, 150Hz, 200Hz, or greater than 50Hz. The signal deviation matrix, which provides an estimate of the touch position, can be reported at time intervals.

[0063] A first dataset may be sent to provide a 50% estimate, a second dataset may be sent to provide a 100% estimate, a third dataset may be sent to provide another 50% estimate, and so on. Subsequent estimates may be based on previous inferences about the number of fingers touching and their positions. An estimate at a given point in time may be based on the transmission of each codeword portion containing more than 50% of the codeword, for example, the first 8 chips of a 16-chip codeword, or any number of chips from 8 to 16. An estimate at a different point in time may be based on the transmission of each codeword portion containing less than 50% of the codeword, for example, the first 8 chips of a 16-chip codeword, or any number of chips from 1 to 8.

[0064] Figure 7 shows a block diagram of a system having a capacitive touch sensing system 702, a processor 704, and a storage medium 706. The capacitive touch sensing system 702 may include transmitting and receiving electrodes positioned to have mutual capacitance between the transmitting and receiving electrodes at their intersections called nodes, and the capacitance at each node deviates when the node is touched. The processor 704 may be a microcontroller. The machine-readable storage medium 706 includes instructions, which, when executed by the processor, can cause the system to: assign a codeword to each of the transmitting electrodes in a set of transmitting electrodes, each of which is a complete codeword having a first codeword portion and a second codeword portion; identify a first subset of transmitting electrodes and their assigned codewords based on a previous touch position estimation; identify a second subset of transmitting electrodes and their assigned codewords; generate a transmit signal for each of the transmitting electrodes in the first subset of transmitting electrodes according to the assigned codewords; transmit the transmit signal; receive a first portion of the received signal for each of the receiving electrodes, indicating the respective capacitance between the receiving electrode and each of the transmitting electrodes in the first subset of transmitting electrodes; decode the first portion of the received signal for each of the receiving electrodes using the first portion of the first subset of the codewords; and calculate a touch position estimation for the first subset of transmitting electrodes based on the decoded first portion of the received signal.

[0065] Figure 8 shows a flowchart of the method. A capacitive touch sensing system is provided, comprising a transmitting electrode and a receiving electrode positioned such that they have mutual capacitance at node intersections (802), and the capacitance at each node deviates when touched. A codeword is assigned to each of the transmitting electrodes in a set of transmitting electrodes (804), each of which is a complete codeword having a first codeword portion and a second codeword portion. A first subset of transmitting electrodes and their assigned codewords are identified based on a previous touch position estimation (806). A second subset of transmitting electrodes and their assigned codewords are identified (808). A transmit signal is generated for each of the transmitting electrodes in the first subset of transmitting electrodes according to its assigned codeword (810), and the transmit signal is transmitted (812). For each receiving electrode, a first portion of the received signal is received that indicates the respective capacitance between the receiving electrode and each of the transmitting electrodes in the first subset of transmitting electrodes (814). A first portion of the received signal is decoded for each of the receiving electrodes using a first portion of a first subset of the codeword (816). Touch position estimation is calculated for a first subset of the transmitting electrodes based on the decoded first portion of the received signal (818).

[0066] The embodiment can be applied to other sets of codewords, and can also be applied to non-zero time shifts between two codewords in the correlation function, as well as when employing codewords with near-zero cross-correlation.

[0067] In one embodiment, the spreading gain after receiving half the number of codeword chips, i.e., the signal-to-noise ratio (SNR) gain by CDM versus time-division multiplexing (TDM, where only one transmitting electrode has a non-zero stimulus at a time), is half that after receiving all of the codeword chips. For example, the 100% estimated SNR is twice that of the 50% estimated SNR due to the so-called spreading gain.

[0068] While examples have been described above, other variations and examples can be derived from this disclosure without departing from the spirit and scope of these disclosed examples.

Claims

1. It is a method, To provide a capacitive touch sensing system comprising a transmitting electrode and a receiving electrode positioned such that they have mutual capacitance at electrode intersections called nodes, wherein the capacitance at each node deviates when touched, and to provide a capacitive touch sensing system comprising a transmitting electrode and a receiving electrode positioned such that they have mutual capacitance, the capacitance at each node deviates when touched, and A step of performing touch position estimation, Steps include identifying a first subset and a second subset of the transmitting electrodes based on the previous touch position estimation, A step of assigning a codeword from a first subset of codewords to each of the transmitting electrodes in a first set of transmitting electrodes, wherein each codeword from the first subset of codewords is a complete codeword having a first codeword portion and a second codeword portion; A step of assigning a codeword from a second subset of codewords to each of the transmitting electrodes in the second subset of transmitting electrodes, wherein each codeword from the second subset of codewords is a complete codeword having a first codeword portion and a second codeword portion; The steps include generating a transmit signal for each of the transmit electrodes according to the assigned codeword, The steps include transmitting the aforementioned transmission signal, For each receiving electrode, the step of receiving a first portion of the received signal that indicates the respective capacitance between the receiving electrode and the transmitting electrode, The steps include decoding the first portion of the received signal for each of the receiving electrodes using the first portion of the first subset of the codeword, A step of calculating a touch position estimate for a first subset of the transmitting electrodes based on the decoded first portion of the received signal, A method comprising the steps of performing touch position estimation by means of

2. The steps include receiving a second portion of the received signal for each of the receiving electrodes, The steps include decoding the complete received signal for each of the receiving electrodes using the complete codeword, The steps include: calculating a touch position estimate for the set of transmitting electrodes based on the decoded complete received signal; The method according to claim 1, comprising the steps of sequentially and alternately decoding the first portion of the received signal and decoding the complete received signal.

3. The method according to any one of claims 1 to 2, comprising the steps of: assigning each of the codewords from a first subset of the codewords to each of the first set of transmitting electrodes by default; and assigning each of the codewords from a second subset of the codewords to each of the second set of transmitting electrodes by default, wherein the codewords include a unique number; the transmitting electrodes are uniquely numbered; and the step of assigning by default includes the steps of: assigning the codeword having the lowest number to the lowest numbered transmitting electrode; and assigning the codeword having the second lowest number to the second lowest numbered transmitting electrode.

4. The method according to any one of claims 1 to 3, comprising the step of repeating the step of performing the touch position estimation.

5. The method according to any one of claims 1 to 4, wherein the step of assigning each of the codewords from a first subset of the codewords to each of the first set of transmitting electrodes includes the step of adaptively assigning each of the codewords from the first subset of the codewords to a transmitting electrode that has been identified as touched or presumed to have been touched based on the previous touch position estimation, and the step of assigning each of the codewords from a second subset of the codewords to each of the second set of transmitting electrodes includes the step of adaptively assigning each of the codewords from the second subset of the codewords to a transmitting electrode that has been identified as not touched or presumed to have not been touched based on the previous touch position estimation.

6. The method according to any one of claims 1 to 5, wherein the step of assigning each of the codewords from a second subset of the codewords to each of the second set of transmitting electrodes includes the step of adaptively assigning each of the codewords from the second subset of the codewords to a transmitting electrode that has been identified as not touched or presumed to not touched based on the previous touch position estimation, and the step of assigning each of the codewords from a first subset of the codewords to each of the first set of transmitting electrodes includes the step of adaptively assigning each of the codewords from the first subset of the codewords to the remaining unassigned transmitting electrodes.

7. The method according to any one of claims 1 to 6, wherein each of the codewords includes a binary sequence having 2 * K chips of an Hadamard matrix where K is an integer, and each of the codeword portions of the codewords includes K chips.

8. It is a system, A capacitive touch sensing system comprising a transmitting electrode and a receiving electrode positioned such that they have mutual capacitance at electrode intersections called nodes, wherein the capacitance at each node deviates when touched. Processor and The system comprises a machine-readable storage medium for storing instructions, wherein when an instruction is executed by the processor, the system receives the instructions. Identifying a first subset and a second subset of the transmitting electrodes based on the previous touch position estimation, Assigning a codeword from a first subset of codewords to each of the first set of transmitting electrodes, wherein each codeword from the first set of codewords is a complete codeword having a first codeword portion and a second codeword portion; Assigning a codeword from a second subset of codewords to each of the transmitting electrodes in the second subset of transmitting electrodes, wherein each codeword from the second set of codewords is a complete codeword having a first codeword portion and a second codeword portion; To generate a transmission signal for each of the transmitting electrodes according to the assigned codeword, Transmitting the aforementioned transmission signal, For each receiving electrode, a first portion of the received signal indicating the respective capacitance between the receiving electrode and the transmitting electrode is received, Using the first portion of the first subset of the codeword, the first portion of the received signal is decoded for each of the receiving electrodes. Based on the decoded first portion of the received signal, the system calculates a touch position estimate for a first subset of the transmitting electrodes. This enables touch estimation in the system.

9. When the aforementioned instruction is executed by the processor, it will be used to control the system. The second part of the received signal is received for each receiving electrode, Using the complete codeword, the complete received signal is decoded for each of the receiving electrodes. Based on the decoded complete received signal, the touch position estimate is calculated for the set of transmitting electrodes, The system according to claim 8, which sequentially and alternately decodes the first portion of the received signal and decodes the complete received signal.

10. The system according to any one of claims 8 to 9, wherein, when the instruction is executed by the processor, the system defaults to assigning each of the codewords from a first subset of the codewords to each of the first set of the transmitting electrodes, and defaults to assigning each of the codewords from a second subset of the codewords to each of the second set of the transmitting electrodes, wherein the codewords include a unique number, the transmitting electrodes are uniquely numbered, and the default assignment includes assigning the codeword having the lowest number to the lowest numbered transmitting electrode, and assigning the codeword having the second lowest number to the second lowest numbered transmitting electrode.

11. The system according to any one of claims 8 to 10, wherein when the instruction is executed by the processor, the system causes the system to repeatedly perform touch position estimation.

12. When the aforementioned instruction is executed by the processor, it will be used to control the system. Based on the aforementioned touch position estimation, the codewords are adaptively assigned to the transmitting electrodes identified as touched or presumed to have been touched. The system according to any one of claims 8 to 11, wherein, based on the aforementioned prior touch position estimation, the system adaptively assigns each of the codewords to the transmitting electrodes that have been identified as not being touched or that have been identified as not being touched.

13. The system according to any one of claims 8 to 12, wherein assigning each of the codewords from the second subset of the codewords to each of the second set of the transmitting electrodes includes adaptively assigning each of the codewords from the second subset of the codewords to a transmitting electrode that has been identified as not touched or presumed to not touched, based on the previous touch position estimation.

14. The system according to claim 13, wherein assigning each of the codewords from the first subset of the codewords to each of the first set of transmitting electrodes includes adaptively assigning each of the codewords from the first subset of the codewords to the remaining unassigned transmitting electrodes.

15. The system according to any one of claims 8 to 14, wherein each of the codewords includes a binary sequence having 2 * K chips of an Hadamard matrix where K is an integer, and each of the codeword portions of the codewords includes K chips.