1 Reply Latest reply on May 21, 2020 9:04 PM by LinglingG_46

    PSoC4 Capsens sensitivity and enviroment change issue

    ChHs_4614611

      Hi,

       

      I have two issue about Capaense function.

       

      1) I use Sense's CSD function for vehicle air condition HMI product.

          When I  capture every buton parameter in Sense Tuner.

          If some button still too  sensitivity.   Which parameter is recommended to adjust?

          Capsense_parameter.jpg

       

      2) I put our product in the chamber and run environment test  recently.

         When temperature or humidity change. Some bottom auto triggered by itself.  

         When environment different cause  baseline change .

         The below is my detect key function code.  If I want to make  trigger level can trace baseline

         How to modify and suggest?

      ------------------------------------------------------------------------------------------------------------------------------- 

      void DetectKey(void)

      {

          if(CapSense_NOT_BUSY == CapSense_IsBusy())

          {

              CapSense_ProcessAllWidgets(); /* Process all widgets */                     

             

              CapSense_ScanAllWidgets();             

            

              if (CapSense_IsAnyWidgetActive()) /* Scan result verification */

              {                     

                  /* Touch has detected */

                  for(appData.index = 0; appData.index < CapSense_TOTAL_SCAN_SLOTS; appData.index++)

                  {

                      if(CapSense_IsWidgetActive(TouchKeyId[appData.index]))

                      {

                          /* Get which key has pressed */

                          appData.TouchbuttonStatus = appData.index ;

                                                                                                    

                          /* Proccess Key Data */                  

                          ProccessKeyData(appData.TouchbuttonStatus);

                          appData.KeyNeedToSend = AS_TRUE;

                      }                              

                  }

                  /* Assgin Key data for SPI frame */

                  SPI_KeyData();                                  

              }

              else//No key has pressed

              {

                  ProccessKeyData(NO_KEYPress);/* Proccess Key Data for SPI array */

                  appData.KeyDetectCounter = 0;

              }

          }

      }