Does CY8C21434B have enough RAM to implement a 23 buttons in SmartSense?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi, I have a problem during the Linking process.

I opened a new project with CY8C21434B and I placed the unit SmartSense to implement 23 button in smartsens technology . I followed the first example in datasheet (Code Sample) to implement the firmware.

When I tried to compile the project a link error occurred (RAM not enough):

" ...   

!E <library>(1993): {linker} Cannot allocate space for 46 bytes for 'ram0' area

!E <library>(1993): {linker} Cannot allocate space for 23 bytes for 'SmartSense_ramBtnFThreshold' area

!E <library>(1993): {linker} Cannot allocate space for 23 bytes for 'SmartSense_ramSnSSig' area

!E <library>(1993): {linker} Cannot allocate space for 72 bytes for 'SmartSense_ramSnsParam' area

... "

I tried to enable the parameters of the compiler like code compression, enable paging and stack area on page 1, to get more RAM but is not enough yet.

It seems that up to 16 buttons there isn't a problems. From 17 buttons onwards it start the problems.

Project parameters:

  • PSoC Designer 5.3
  • PSoC  CY8C21434B
  • Unit SmartSense (Ver.1.50; Sensor Autoreset: enable;  Threshold Setting Mode: Automatic)
  • Global Resurce: Vcc:3,3V;  SysClk: 24MHz;  CPU_Clock = 12MHz;
  • Compiler Parameters: Enable paging and Stack offset C8; Code Compression all flags.

Is it possible that CY8C21434B don't have enough RAM to implement 23 button SmartSense?

0 Likes
1 Solution

I will say sorry to you for ignoring some important information in your description.

Because I set the Threshold Setting Mode: Manual in the test project, so I give you previous suggestion.

Now I test it again, found that if configure the project like you says, the chip will lack ram resource.

View solution in original post

0 Likes
3 Replies
LinglingG_46
Moderator
Moderator
Moderator
500 solutions authored 1000 replies posted 10 questions asked

There wasn't sufficient space available in the page 0 of RAM to allocate when you select 23 sensors.

Hence you were getting the error.

Change the stack page offset as shown in the attached picture to 08 or bigger than it like c8.  compiler_settings.jpg

This  creates sufficient space in the page1 of RAM, and try to build the project.

You can try to review the other forum: Re: Smartsense 17button compile error

0 Likes
Anonymous
Not applicable

Thanks Ring for the response but if I set 08 in the stack page offset it's worse. I tried to get closer to the max value (0xFF) but this is not good for stack and RAM is not enough yet.

I think the CY8C21434B not support 23 buttons in SmartSense with automatic threshold setting mode.

Can you confirm this?  or I'm doing something wrong

thanks

0 Likes

I will say sorry to you for ignoring some important information in your description.

Because I set the Threshold Setting Mode: Manual in the test project, so I give you previous suggestion.

Now I test it again, found that if configure the project like you says, the chip will lack ram resource.

0 Likes