This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC1110 PM2 power drain

I have an app which is pretty simple (and standard?):

- transmit some data

- wait a short while to listen for another device

- go to sleep (PM2) for about one second, do some housekeeping, go to sleep again........ (transmit again once a minute).

The problem is that current consumption in PM2 is most of the time at around 2mA, i.e. as if the HS RC oscillator is still running. Looking at the scope output, and stripping out all other code except the sleep/wake cycle, it is clear that some sleep seconds use hardly any power (too small to measure on my scope), as expected,  but about 75% of the sleep modes are taking 2mA. Exactly the same code is running for every sleep cycle! 

 I have incorporated all notes from DN106 and errata notes on the subject .

(Later edit.....)

OK, have now got it sleeping correctly every time by adjusting use of WORCTL and WOREVT. But there is a wake period of approx (3 *  sleep timer resolution) every time before it sleeps - i.e. about 3 ms or 90 ms depending on setting of WORCTL.WOR_RES.

Does anyone have any code to put the unit to sleep for 1 second reliably, without wasting 3 ms first?

 

 

  • quilkin said:

    OK, have now got it sleeping correctly every time by adjusting use of WORCTL and WOREVT. But there is a wake period of approx (3 *  sleep timer resolution) every time before it sleeps - i.e. about 3 ms or 90 ms depending on setting of WORCTL.WOR_RES.

    Does anyone have any code to put the unit to sleep for 1 second reliably, without wasting 3 ms first?

    Hi Quilkin,

    it is not easy to say where the time is wasted without seeing the code. I could image that you have some alignment to the 32kHz clock edge in order to get accurate sleep time. This for example introduce obviously some delay. But better you post your code.

    regards

    spachner

  • Thanks Spachner

    Since my posting, some new samples have appeared on the TI website. I tried the sleep example and got pretty much the same with that code as with my own. It appears that to wait the double 32KHz clock edges, with the 32 exponent, it takes 2 ms or so. With the 1024 exponent it takes 30ms. Doesn't make much sense to me. But the net result is that the PM2 sleep current, while advertised as 0.5 uA, is effectively a lot more because there is always the overhead of the time taken to get into the sleep mode. Obviously, the longer you can stay asleep the better, so that's how I'll progress from now.

    Cheers

    Quilkin