cancel
Showing results for 
Search instead for 
Did you mean: 

PSoC 4 MCU

New Contributor

In my futur application, I need to be able to detect multiple button touch.

0 Likes
Reply
1 Solution
Employee

Hello Thomas,

You could use a PSoC then, since you have 64 sensors in your application.

You can refer to PSoC4_CapSense_Tuner_I2C code example by navigating to PSoC Creator-> File-> Code example.

You can add two button widgets to have 32 sensors each in the CapSense component configuration window.

The total response time depends on the scan and process time of CapSense sensors.

You could reduce the scan time, by reducing resolution and setting the modulator clock frequency to highest possible value.

Process time could be reduced by disabling filters and setting manual thresholds.

Please refer to CapSense component datasheet for more information. (http://www.cypress.com/documentation/component-datasheets/psoc-4-capacitive-sensing-capsense )

Thanks,
Shanmathi

View solution in original post

0 Likes
Reply
5 Replies
Employee

Hi,

Each button you have enabled will be scanned individually at every 20 ms typically, in active mode.

A typical touch event would take >50 ms. So, all the sensors which was active during the scan would be updated in the BUTTON_STAT register.

You can refer to MBR3 register TRM for details on BUTTON_STAT registers http://www.cypress.com/file/127221/download

You could also use LATECHED_BUTTON_STAT register, if you would like to avoid missing any touch events.

Please refer to How to clear LATCHED_BUTTON_STAT ( CY8CMBR3116)

Thanks,
Shanmathi

0 Likes
Reply
New Contributor

Thank you Shanmathi

50 ms for a scan look’s way too long for me, as I need to do real trig trig by the touch button.

Do cypress has an another device with speed scan button.

I know a device witch use a cy8c20436a-24lqxi and it looks able to do real time trig, so more faster than 50ms

do I have to look into Psoc family to have faster scan button ?

thanks

thomas

0 Likes
Reply
Employee

Hi Thomas,

Do your require fast taps to be detected on the sensors? Could you also elaborate more on your application?

Is there any rough estimate on the requirement of response time?

Yes, in general you could use PSoC devices to reduce the loop time and have a higher response time.

You can refer to Table 3-2 of http://www.cypress.com/file/46081/download for the advantages offered by 4th generation CapSense devices.

Thanks,

Shanmathi

0 Likes
Reply
New Contributor

Hello Shanmathi,

Yes I need very fast taps to be detected on the sensors.

I build a musical keyboard MIDI controler, with 64 touch. So I need that the touch on 1 or 10 sensors to be detacted as fast as possible to avoid latency and be able to play music with the keyboard.

I do not know exactly the estimate requirement of response time, but I need the most faster response, to let the user play as he wish.

Do you know the estimate loop time on a PSoC ?

I'm a beginer in programming, so Do you have some code example for something like 64/ multiple buttons sensor ?

What is the hardware solution to implement the code in the PSoC when it is on my PCB ?

Thanks,

Thomas

0 Likes
Reply
Employee

Hello Thomas,

You could use a PSoC then, since you have 64 sensors in your application.

You can refer to PSoC4_CapSense_Tuner_I2C code example by navigating to PSoC Creator-> File-> Code example.

You can add two button widgets to have 32 sensors each in the CapSense component configuration window.

The total response time depends on the scan and process time of CapSense sensors.

You could reduce the scan time, by reducing resolution and setting the modulator clock frequency to highest possible value.

Process time could be reduced by disabling filters and setting manual thresholds.

Please refer to CapSense component datasheet for more information. (http://www.cypress.com/documentation/component-datasheets/psoc-4-capacitive-sensing-capsense )

Thanks,
Shanmathi

View solution in original post

0 Likes
Reply