I am currently working on a redesign of one of our products and for that we want to go with cypress.
I came to realize that the current consumption of our chosen MCU (CY8C4126AZI-S445) is way to high.
In the old design there was a controller with these characteristics:
active mode 220µA
The maximum average current for the entire board is at 130µA
So the controller should be average at around 30µA.
With our chosen controller I get around 500µA with a deepsleep time of 45s and an active time of 5s.
And this is without any functions aside from the WDT. So the estimated current of the final design would be even higher.
Are there any suggestions which controller might fit these needs?
Sorry if there is already a thread like this. I could not yet find any satisfying answers.
Can you please let us know the procedure and the setup used to measure the current consumption of the device? What are the active mode and the deep sleep currents that you are able to observe with your design? Also, please let us know the power configuration of the device during each of these modes.
Additionally, this document might be able to help with some of the power reduction techniques - PSoC® 4 Low-Power Modes and Power Reduction Techniques
thanks for your reply.
For current measurement I connected the Miniprog3 as usual and opened the VTARG line and put my multimeter there using alligator clamps.
Also I connected a 2200µF electrolytic capacitor to VDDD (Pin 50) and VSSD (Pin 49) as a decoupling capacitor. Yet the values are still fluctuating a little.
For the values I measured anew after deleting all the unnecessary parts from the project:
Empty program (only code line is CyGlobalIntEnable;) : 1.8 - 1.9mA
When I add CySysPmDeepSleep(); (no Watchdog functionality or anything else): 24µA
Now I add WDT functionality.
First with a 50ms wakeup period (WDT_ACTIVE_MODE): ca. 60µA
Second with a 1s wakeup period (WDT_STANDBY_MODE): 25-30µA
While this might look good in the first place, there is no actual functionality, so nothing to do at wakeup time yet.
For example I added a simple UART and Put Out "Hello" after wakeup and I already measure around 230µA (with 1s wakeup period). That is too much.
Also shouldn't deep sleep current (without watchdog) be around one tenth lower?
I add the project so you might check.
I agree that the deep sleep current is high. Can you please share the schematic file of your design? As you are measuring directly from the power line could there be other components powered in your design? Also, could there be any leakage current among the components?
I did go through the project that you have shared, can you please try removing all components from the TopDesign and then try after programming the device? Although the difference might be less, it might add up in Deep Sleep mode. Additionally, this will also not enable the GPIOs and they will be in High Z mode.
Please let me know your observations
I attach the design. This is pretty much according to the datasheet. there are no additional components.
From the top Design I deleted everything but the GlobalWdt and isr_GlobalWdt and commented according codelines. To rule out a leakage, I measured with two different boards.
The results are pretty much the same as before:
empty project: 1,07mA
empty project: 1,09mA