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.

CC1310: How to reduce Sensor power consumption

Part Number: CC1310

Hello,

We are running CC1310 LaunchPads and 15.4 stack.We are running collector-sensor based example without any modification. We wanted to use  the sensor and collector are battery powered So, we want sensor to be in sleep mode, when it is not sending temp sensor info to collector(For example, we want to send temp. sensor value for every 5 min. to collector, remaining time sensor has to be in sleep mode). Can you please help us  where to change in the application example?

Regards,

Harsha

  • Hi Harsha,

    The sensor example should already be going into standby mode in between transmissions per design. Have you tried the example out and seen that this is not the case?
  • Hi M-W,

    Thanks for your reply. In standby mode how much current it suppose to draw, and when it is transmitting how much current it suppose to draw(To check whether it is saving power, just give appx. values). and also Can you please tell us, what is the packet format of the transmission(How many total no. of bytes sensor sends to collector for every transmission and in that how much is the payload size)?

    Regards,

    Harsha

  • Hi Harsha,

    I would assume to see something in the < 10 uA range when in standby and +4 mA when active. There are multiple types of messages you can find the ones used in the example inside smsgs.h, you should be able to use this to figure out the payload size of the particular message that interest you.

  • Hi M-W,

    Thanks for the Response. Can you please show us where the sensor is going into standby mode and where it is waking up the sensor in the sensor code example.and also what is the Backoff time to send the request from sensor to collector?

         Thanks in advance

    Regards,

    Harsha

  • Hi Harsha,

    It is not a specific part of the code but the behavior of the TI-RTOS power management that puts the device into standby when ever possible. If no power constraints is set in the application and the idle task is running then the power manager will try to put the device into standby (or what ever the lowest accepted mode is). In many cases these constraints are set inside drivers and the stack libraries which means they are not always visible in the code.

    Waking up is simply a matter of a scheduled timer expiring which causes the system to transition into active mode again. For example, if you have a simple program with a while(1) loop and a Task_sleep(nTime); inside it, if no power constraints is set when performing Task_sleep, the device will schedule a timer for nTimer amount of time and pend waiting for the timeout.
    In meanwhile the Idle task will run, invoke the power policy and (if possible) put the device into standby. When doing this it will also schedule another wake up a bit earlier then expected to have time t bring the device back up and running in time for the event.

    The backoff times (and most other configurations) can be found in the config.h file.