Sorry for a typo for last question:
ANY hint to fine tune our application to let the ROM code work with sleep properly?
These are a few modifications you can make to your hardware to reduce your advertising current:
1. If you have a ferrite bead connected to your battery or your USB to reduce noise, removing that might decrease the power consumption
2. Add a LDO regulator to your board.
I have check with our HW engineer, below is the comment from him:
Here is our schematic for BCM20737 RF circuit. The ferrite bead we designed on our board is with below spec. I don't think it would affect our current consumption that much (your reference board is 600uA, but ours test result is 3000uA). Also, adding a LDO dedicated for these 1.2V power rails (VDDIF, VDDVCO, VDDFE and VDDPLL) should be the wrong direction to go because the LDO does introduce extra power losses. Any other idea to bring the power consumption down?
FERRITE BEAD, 120Ohm@100MHz, 680mA, DCR 0.13 Ohm, 0402
1 of 1 people found this helpful
Did you initialize the GPIO's to a low power state? What are your advertising parameters? I would not expect to see much sleep during advertising if your intervals are small. The system will not sleep if it knows there is work to be done in the near future. I agree there is not enough information (hints) on how to optimize sleep, but I doubt sleep is your problem. Our custom board with a 200 MS fine timer and connection interval roughly the same draws about 1 mA. In theory it should go lower if it was sleeping properly but that's as low as I can get it. An early design of ours was flawed where a voltage regulator was drawing 4 mA because one of the pins needed to be grounded to put the regulator into low power mode. Once that was solved the 4 mA drain was gone.
After remove the resisters on the SPI pin, our current issue has been solved. Thanks.