Hello,
I am trying to read DEBUG_DIFFERENCE_COUNT0 register. We have designed our PCB with CY8CMBR3116 and 12 buttons and it is working fine for button touch detection. Now I want to evaluate its performance. So, I am reading DEBUG_CP and DEBUG_DIFFERENCE_COUNT0 registers. I have written the button id to SENSOR_ID register. DEBUG_CP values seems to be ok but DEBUG_DIFFERENCE_COUNT0 value is always 255 when there is touch and 0 when there is no touch. But if we place a finger at a distance of about less than 1cm from button, it gives values between 80 to 250. So, I referred Capsense design guide for capsense performance tuning. According to this document, if DEBUG_DIFFERENCE_COUNT0 is greater than 50 counts, SNR should be in the ratio 5:1. So, to understand these settings, I started working on CY3280-MBR3 evaluation kit and trying to evaluate this on the button provided on evaluation board.
So I created a project on EZ-Click V2.0 and its settings are as follows.
In Capsense design guide document, for noise count measurements, it says
So, I tried same on evaluation kit. and getting following waveform.
For signal measurement, in Capsense design guide, following is suggested.
But when I tried on evaluation kit, I am getting,
unlike in Capsense design guide, in my case, baseline level also changes. So, I am not getting how to measure the signal. Or Is there any other setting that is needed?
After tuning the capsense performance on evaluation kit, I can try to tune my customised PCB also.
So, Please let me know what needs to be done in this case.
Thanks in advance.
Mamata
Solved! Go to Solution.
1: Unlike in Capsense design guide, in my case, baseline level also changes. So, I am not getting how to measure the signal. Or Is there any other setting that is needed?
Because you enable the feature "auto-reset". You can choose "disable" to disable the auto-reset function.
2: Uncheck the “Automatic Threshold”, if the diff count is 750
which more than 255, you can change the sensitivity from 100 to 400 like below:
3: We should change the finger threshold depending on the signal.
3:More you can refer to the MBR capsense design guide: https://www.cypress.com/documentation/application-notes/an90071-cy8cmbr3xxx-capsense-design-guide
Section: CapSense Performance Tuning
4: Hope it can be helpful for you!
It seems that the touch is not recognized because the diff count is lower than the finger threshold.
In your project, the check box "Automatic threshold" un-checked.
Please confirm if the CapSense works when the "Automatic threshold" checked.
The reason why the baseline is changed to the raw count level is the "Auto-reset period" is enabled in the "Global Configuration" tab.
Regards,
Noriaki
Hello Noriaki,
Thanks for your response.
As suggested by you, I have checked the box 'Automatic Threshold'.
I get following waveform,
Here, it shows the difference of 750 counts in the raw count when sensor is touched.
Thanks,
Mamata
1: Unlike in Capsense design guide, in my case, baseline level also changes. So, I am not getting how to measure the signal. Or Is there any other setting that is needed?
Because you enable the feature "auto-reset". You can choose "disable" to disable the auto-reset function.
2: Uncheck the “Automatic Threshold”, if the diff count is 750
which more than 255, you can change the sensitivity from 100 to 400 like below:
3: We should change the finger threshold depending on the signal.
3:More you can refer to the MBR capsense design guide: https://www.cypress.com/documentation/application-notes/an90071-cy8cmbr3xxx-capsense-design-guide
Section: CapSense Performance Tuning
4: Hope it can be helpful for you!