You are here

How to reduce power consumption of 21434 | Cypress Semiconductor

How to reduce power consumption of 21434

Summary: 9 Replies, Latest post by arvm on 20 Apr 2009 08:43 AM PDT
Verified Answers: 0
Last post
Log in to post new comments.
falcon01c's picture
4 posts

My case use 21434 to bulid CSD application, (Vdd = 3.3V)

host require less than 1mA power consumption in idle mode,

and use I2C to control work/idle,

so that, i can't use sleep timer,

because maybe lost wake up command.

Read AN47310, than try analog blocks off,

but... 21434 without ARF_CR,

second try , analog buffer off ,

ABF_CR0 in 21434 without PWR bit .....

Now, my solution is IMO=6MHz,


Please tell me,

how to power off analog block with 21434 ?

What can i do to reduce more power consumption in ilde mode ?

graa's picture
Cypress Employee
223 posts

The analog reference power and analog buffer power are only valid for devices with full function analog. For the 21434, if you call CSD_Stop, it should turn off all the analog and digital blocks and the power will now only be from the CPU running. Use the following logic.

1. Turn On CSD

2. Initialize baselines

3. Initialize finger threshold

4. Start I2C

5. Switch Off CSD

6. Wait for command from I2C

7. Start CSD

8. Scan sensors

9. Update baseline, process button press etc

10. Go to 5

But remember, the baseline update will track environmental changes only when the baseline is updated regularly.

falcon01c's picture
4 posts

Dear Ganesh,

thanks for your advise.

Try Stop_CSD(),

it only reduce 0.5mA,

maybe i lost something?

graa's picture
Cypress Employee
223 posts

What is the total current? Even though all the resources are stopped, the CPU itself will consume some current depending on the frequency.

Stub for 6136421's picture
1 post

Can you try the following,

1) Wake up every 64 Hz, using the Sleep Interval.

2) Enable I2C

3) Start CapSense

4) Scan capsense once

5) Stop CapSense, disable all blocks power

6) Disable I2C and its interrupt

7) Enable the GPIO interrupt (on attention line)

8) goto sleep

For I2C, have one dedicated pin as Interrupt pin (Attention pin). When the master makes this pin low, come out of sleep, Enable I2C and keep on scanning (don't go to sleep, untill this pin is High).

The only restriction would be that the master has to make this Attention line Low before sending any I2C commands.

I will try to give you an example project on this method. Please give me 3-4 days time.


Narayana Swamy

falcon01c's picture
4 posts

Dear Ganesh

My solution (IMO=6MHz, CPU_SPEED=SYS_CLK/256, and CSD_Stop)

make current down to 1.8mA from 4.3mA,

but it lost I2C command often.

I try to request more resouce, like pre-start bit or two times wake up command,

to make this case easily.

Dear Narayana

Thanks for your check list,

I will try it.

Ganesh and Narayana, you are so kindly, thanks a lot.

user_11685479's picture
41 posts


SysClk/256 at a SysClk of 6MHz, is too slow for the CPU. You will definitely miss the I2C data at this CPU speed. What you have to do is when an I2C command starts coming in, you should switch the CPU frequency to a higher value to SysClk/1 or SysClk/2. After stopping the CSD and before configuring the CPU clock to SysClk/256, enable rising edge interrupt on the I2C line. When I2C transaction occurs, a GPIO interrupt will also occur. Inside the GPIO interrupt, set the CPU clock to SysClk/1, and disable the GPIO interrupt. When you want to go back to low power mode, change the CPU clock to SysClk/256 and again enable the GPIO interrupt.

graa's picture
Cypress Employee
223 posts

Here is a project that implements sleep and CSD. This may be useful to you.

arvm's picture
Cypress Employee
2 posts

Hi falcon01c,

I have modified the previous attached project to achieve minimum sleep current (3uA).

modification: The drive mode of Rb pin is set to High-Z Analog before PSoC goes to sleep so that Rb resistor does not consume any current during sleep.

Hope this project will help you.



arvm's picture
Cypress Employee
2 posts
Log in to post new comments.