- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello all,
Currently i am developing software for USB-HID Touchpad.
I tested USB-HID code on CY8CKIT-041-40XX which is working fine for I2C communication.
I am using CY8C4247 AZI-L445 for my finalized project. I want to make HID touchpad using CSX(mutual capacitance) method, because of multi finger touch we need mutual capacitance.
L445 IC is not having Gesture feature, because of that i need to take touch sense without using Gesture feature.
I saw the CSX method for trackpad but in almost examples Gesture is already added.
so, I want to make touchpad development based on getting touch sense data without gesture on trackpad using CSX method. After that this all over data sends to the host using USB protocol.
Please suggest, reference document and and Program code to implement and proceed further.
Thank you for response,
Sanket More ,
India
Solved! Go to Solution.
- Labels:
-
PSoC 4 MCU
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Sanket24 ,
Kindly refer to the thread: https://community.infineon.com/t5/PSoC-4/CY8CKIT40-41-40xx-KIT-CSX-method-without-gesture/td-p/39128...
I have posted a response on it. Try those settings and let us know.
Warm regards
Sobhit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Sanket24 ,
Did you try using the following API: uint32 CapSense_GetXYCoordinates (uint32 widgetId)
This function reports a touch position (X and Y coordinates) value of a specified touchpad widget by extracting information from the wdgtStatus registers (CapSense__POS_Y_VALUE). This function should be used only with the touchpad widgets. This function does not process the widget, but extracts processed results from the Data Structure.
Returns the touch position of a specified touchpad widget:
1. If a touch is detected:
a. Bits [31..16] indicate the Y coordinate.
b. Bits [15..0] indicate the X coordinate.
2. If no touch is detected or a wrong widgetId is specified: CapSense_TOUCHPAD_NO_TOUCH.
In order to process the widget, you should call: cystatus CapSense_ProcessWidgetExt(uint32 widgetId, uint32 mode).
The basic flow should be:
Capsense_Start();
Capsense_InitializeAllBaselines();
Capsense_ScanAllWidgets();
for(;;){
CapSense_UpdateAllBaselines();
if(!Capsense_IsBusy()){
uint32 pos = CapSense_GetXYCoordinates(/*Your TouchPad_WdtId*/);
}
CapSense_ScanAllWidgets();
}
Warm regards
Sobhit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for support,
I have query regarding , setup in CSX block. what are the changes should i need to do.
Sanket more,
India
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Sanket24 ,
Do you want to know the configurations required to be made in the CapSense Component Block for the top design?
Warm regards
Sobhit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Sanket24 ,
Please let us know if you followed these initial steps:
- I expect you are using PSoC Creator 4.4.
- In the Top design you need to choose CapSense v7.0 from Component Catalog.
- Add a widget Touchpad. Selesct sensing mode to be CSX and choose the number of Sensing elements.
Next part is tuning:
Refer to CapSense Design Guide - https://www.infineon.com/dgdl/Infineon-AN85951_PSoC_4_and_PSoC_6_MCU_CapSense_Design_Guide-Applicati...
For Touchpad Tuning refer: Section 5.3.2.6 and 5.3.3.5
Thanks and regards
Sobhit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @Sanket24 ,
Kindly refer to the thread: https://community.infineon.com/t5/PSoC-4/CY8CKIT40-41-40xx-KIT-CSX-method-without-gesture/td-p/39128...
I have posted a response on it. Try those settings and let us know.
Warm regards
Sobhit