CE210291 with Touchpad

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hello, we use the example CE210291, but not for a button, but for a TouchPad (~ 25x25mm), 3x3 buttons. The buttons have a Diamond pattern. This on a 0.55mm glass back and front with Indium Thin Oxid (see attached image).
With the AutoTune setting, the Touch does not work well, no matter what sensitivity is set (some area are not detected correctly).

Is the design not correct, or does something need to be changed in the software setup?

Many thanks

0 Likes
1 Solution
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk

 

ITOs have a higher resistance than copper based PCBs. So, this might require manual tuning. You need to se the sense clock frequency such that the sensors charge and discharge completely (you can check this by probing the sensor line using an oscilloscope. You can also check the tuner and see how the sensors are performing and set the Finger Threshold and Noise threshold accordingly (80% of signal level as FT and 40% of signal level as NT). 

 

Can you try the same and let us know the performance? Please share the parameters that you set and the tuner waveform if you still face any issues. 

 

Best regards, 
Hari

 

View solution in original post

0 Likes
10 Replies
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk

 

ITOs have a higher resistance than copper based PCBs. So, this might require manual tuning. You need to se the sense clock frequency such that the sensors charge and discharge completely (you can check this by probing the sensor line using an oscilloscope. You can also check the tuner and see how the sensors are performing and set the Finger Threshold and Noise threshold accordingly (80% of signal level as FT and 40% of signal level as NT). 

 

Can you try the same and let us know the performance? Please share the parameters that you set and the tuner waveform if you still face any issues. 

 

Best regards, 
Hari

 

0 Likes
lock attach
Attachments are accessible only for community members.
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hello @Hari,

Many thanks for your quick reply.

We use very low impedance ITO. The resistance of the traces to the sensor is maximum 1 KOhm.
The touch diff-values are high enough from my point of view.  Around >100 at setting 0.3pF finger capacitance. See attached the tuner sensor data (the data shows the touches at 9 different positions. Certain positions are not detected or are detected incorrectly).

Setup at the moment: Full Auto Tune, 0.3pF,  auto-reset enabled, no filter.
What manual settings would you start with here?

Best regards

0 Likes
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk,

 

The waveform shared looks very promising. Can you please move your finger (or touch probe) slowly and check the performance? I suspect the scan time causing some data points to be missed causing this issue. 

I would also recommend noting down the values from the tuner and setting it in manual tuning with debounce set to 1 and noise threshold set to a very low value such as 5 - so that we get the fastest response for ruling out timing being the issue.

 

Could you also send a screenshot of the parameters from Tuner, such as the sense clock frequency, resolution, idac numbers etc?

 

Best regards, 
Hari

0 Likes
lock attach
Attachments are accessible only for community members.
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Please find attached more data. Sensor_data_3.png shows (from time 50): Touch slide from left to right at 3 positions, and from top to bottom at 3 positions.

0 Likes
lock attach
Attachments are accessible only for community members.
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

@Hari please find below additional Touchpad View. 

Only on the far right and only vertically the touch is recognized correctly (highlighted violet).
It is the same with manual tuning.

Edit1: I found now a setup that works better, see screenshot below:

Hawk_0-1613554420945.png

 

Edit2: I only get signals in CSD mode, but not in CSX mode.

0 Likes
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk 

 

Do you have a ground plane under the touchpad? That could be the reason for the poor CSX performance. Can you share a snapshot of your layout?

Also note that CSX requires manual tuning as smartsense is not supported in CSX widgets yet - so it is possible that tuning is the issue in csx. 

 

You can set the firmware thresholds according to the recommendation - 

Hari_0-1613714414012.png

Debounce, as the name suggests, is used to reject any high frequency glitch in the signal, so it can be set to 1 or 2 if your scan time is too long.

 

Best regards, 
Hari

 

0 Likes
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hi @Hari 

Thanks a lot.

I have attached a screenshot of the layout in the first post, see "screensh_pattern.png".
We are currently only testing the naked touch panel (DITO, 0.55mm glass) without display or anything else on the back.
Does Cypress specifically offer even deeper support for manual tuning here?
Also we have some question regarding the power consumption, because it is much higher than with simple 9 keys (in fast-scan mode / active mode)...

In CSD mode, the touch position is detected incorrectly from time to time even with your above setting.

In CSX mode, see screenshot below setup and sensor data - no data at all.

 

Hawk_0-1613720781852.png

 

 

0 Likes
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk 

 

1. In the layout, are the dotted diamond patterns on the same layer or in the bottom layer?

 

2. We can help you with manual tuning as well. Are there certain positions in the board that report the error in touch? If so, you can just enable those sensors and see the signal level. You can also set the noise threshold to a very low value (eg: 5) initially and then try to tune the sensors. 

 

3. I suppose there is another discussion for the power consumption issue - https://community.cypress.com/t5/PSoC-4-MCU/Touchpad-vs-Single-Keys-Power-consumption/m-p/267272

 

4. In CSX mode, the IDAC might be saturating again. You can click on the individual sensors (Touchpad0_Rx0_Tx0) and check the IDAC number. You need to tune the sensors for best results. You can refer CE228931 for details on tuning CSX sensors.  https://www.cypress.com/documentation/code-examples/ce228931-psoc-4-capsense-csx-tuning

 

Best regards, 
Hari

0 Likes
Hawk
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hello @Hari,

thanks for your reply:

1. On the bottom layer (double ITO, 0.55mm glass)

4. I found only one setting where IDAC values are reliably between 20...90, it is with Tx clock 1000 kHz and 75 nA/bit gain. And it looks like this mode can't handle thick overlays (6mm glass), unlike CSD mode. Can this be?

0 Likes
Hari
Moderator
Moderator
Moderator
750 replies posted 500 replies posted 250 solutions authored

Hi @Hawk 

 

Yes, CSX is only recommended for thin overlays and for thick overlays such as 6mm, the dCm (change in mutual capacitance due to finger) is going to be very small.

CSD would be the way to go here.

 

Best regards, 
Hari

0 Likes