CY8CMBR3106S Slider 1+2 not working

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.
user_4656251
Level 1
Level 1

I configured my device with EZClick (and since it didn't work, checked the most relevant configuration registers by hand...). [Find the config bellow]

My problem is following: I have a radial slider using 8 segments (according to the available documentation, I used the 5 from slider 1 and the 3 first ones from slider 2 combined in a so called "high resolution slider"). I could check by reading DIFFERENCE_COUNT_SENSORx registers that they all work (individually), however, when reading the SLIDER1_POSITION register (description is as follows: Slider 1 or high-resolution slider (depending on configuration) position indicator (units: counts). 255 indicates no touch), the value increases as long as I stay on the first 5 segments (slider1) and jumps to 255-no touch as soon as I reach the 6th one (or the 8th one when going backward [keeping in mind it's radial] ).

I pretty much tried everything I could ... so you're my only hope

I'd be happy to answer questions!

Config from EZClick:

const unsigned char CY8CMBR3106S-LQXI_configuration[128] = {

    0xC9u, 0x3Fu, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x1Fu, 0x7Fu, 0x7Fu, 0x80u,

    0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu,

    0x7Fu, 0x7Fu, 0x7Fu, 0x7Fu, 0x03u, 0x00u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x01u, 0x01u,

    0x05u, 0x00u, 0x00u, 0x02u, 0x00u, 0x02u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x1Eu, 0x00u, 0x00u,

    0x00u, 0x1Eu, 0x00u, 0x00u, 0x00u, 0x00u, 0x01u, 0x01u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x24u, 0x03u, 0x01u, 0x59u,

    0x00u, 0x37u, 0x04u, 0x00u, 0x00u, 0x0Au, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x02u, 0x00u, 0x00u,

    0x00u, 0x25u, 0xFEu, 0x80u, 0x00u, 0x00u, 0x00u, 0x03u,

    0x2Du, 0x80u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u,

    0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0xFAu, 0xB2u

};

If necessary I could provide a video example of what's happening....

Thanks in advance

PS: joined the EZClick config file

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

Hi user_4656251

1. Can you please reduce the "Resolution" from 254 to a lower value to check? Please keep it at 160 and check the performance.

2. Can you share the schematic of the board and a picture of the sensor pattern?

Thanks,
Hari

0 Likes

Hi AH_96,

Thanks for your reply. Sorry for the delay, I was away for a 2 days so had no chance to have my hands on the device.

Indeed, it was lower initially. I just changed it recently in a desperate attempt to get it working!

So I changed it to 160 but ... it still behaves exactly the same!

I attached a picture of the sensors pattern (I did it using Cypress touch library in Altium). I do know it's a little bit close but the space is really constrained ... and still it's working when reading individual sensors so I see no reason why it should be a problem for the slider...

I also attached the schematic ... even though I'm not sure it'll be much usefull.

Thank you very much for your help!

CapaSCH.PNG

CapaPAT.PNG

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

Hi user_4656251

The schematic and the layout seems to be correct, so there is some error in implementation.

Can you run the system diagnostic on the sensors in EZ-Click to make sure everything is correct? Also, could you please give us a log of the difference counts on the sensors, especially the sensors on slider2 so that we can make sure it is working as expected?


Best regards,
Hari

0 Likes
lock attach
Attachments are accessible only for community members.

Hi Hari,

Unfortunately I don't have a device that connects directly to EZ-Click. Instead the CY8CMBR3106S is connected via I2C to a STM32f7 microcontroller. So I believe I won't be able to run system diagnostic, right?

As for the difference counts on sensors, especially the ones of slider2, sure. There below you can find a few values I reported by reading from the host (sequential read of 59 registers starting at BUTTON_STAT).

I also joined 2 little videos.

On the first one [actually Vid2], each led is controlled by a PWM value (0x00-0xFF) that is the difference count of the sensor it is located in.

We can see that each sensor responds pretty well...

On the second one [actually Vid1], I configured them to display the binary value of SLIDER1_POSITION (which, according to the datasheet [CapSense® Express™ Controllers Registers TRM (Technical Reference Manual) Document No. 001-91082 Rev. *E] should contain "Slider 1 or high-resolution slider (depending on configuration) position indicator (units: counts). 255 indicates no touch."). (I actually also tried to read SLIDER2_POSITION in another desperate attempt... but I always get 255 [as one would expect!] )

We can see we get an increasing binary value displayed on the leds when sliding my finger CCW (as expected) until I reach the 3 rightmost segments ... it then switches all the leds on, that is 1111 1111b = 255d = "no touch" ... I also tried going CW ... the value decreases until again I reach the 3 rightmost segments: it then also displays "no touch".

Actualisation frequency: ~44Hz (attached oscillogram corresponds to the first video)

If I can do anything else to explain ...

0 Likes

Hi Hari,
Unfortunately, I have to leave the project right now. (and there's summer vacations coming so we'll close)


However, I gave the link to the one that'll follow it up ... and I'll still keep up with it but I won't be able to have my hands back on the device anymore.

Thanks for your help !!
Really looking forward to see it working (in video...) ... I hate to leave unfinished work behind.

Best regards,

Kévin

0 Likes