I have done a simple project for my daughter, it’s a Lullaby tune player but with a hack!
I attach the project zip file.
The problem is that in hibernation mode I have a consumption current of 265uA instead of 1 to 6uA and after checking all the specifications I can’t see from where the current consumption is coming from.
The values are at 2.7Volts.
So that you understand the code, the project is a PSoC 4 049-KIT (3.8mA while playing the tune) without the USB-serial interface (this part consumes 2.7mA).
It has a power switch, 2 AA 1.5V batteries, a schottky Diode (0.3 v) to protect against polarity inversion, it has a piezo disk, it has a voltage divider (1MOhm and 10KOhm pot) (consumption 2.7uA), it uses the Low Power Comparator to exit from hibernation (6uA), it uses the switch from the board to enter a configuration mode and before it enters hibernation, all pins are configured to high Z (impedance). In hibernation mode the documentation states that the current consumption is from 150nA to 1uA.
When the power is turned on, it plays a Brahms Lullaby for 5 minutes then it goes to hibernation, if it detects movement in the piezo (can be a not very hard nok to the table 1.5meters in distance) the low power comparator wakes the system from hibernation and plays for another 5 minutes, and goes to hibernation.
If you press the 049-KIT button and turn the power on it enters a configuration mode to set the sensitivity of the movement with the potentiometer, in this mode it plays a 0.5 seconds beep and goes into hibernation, then you have to turn it off and on again to go into the normal mode.
My question is did I make something wrong that isn’t optimizing the current consumption?
Currently the batteries last for 280 days on hibernation, but I would like at least to improve by a factor of 25 to the 10uA range. I would like to know how much I can push this design with PSoC.
João Nuno Carvalho