We have been working on low power modes for the CC3200 and need your input on the API’s. The CC3200 power management system is quite complicated and has many combinations. I think there are only a couple of interest though since those will give the lowest power. Details can be found in the CC3200 Power Management Application note.
The most interesting mode is LPDS and the combination of being disconnected from the network and the option to keep connected to the network.
- LDPS always connected. In this use case the MCU will go into LPDS but the radio will keep a connection with the WiFi Access Point but is idle. In this case the system will consume about 700 uA when in LPDS. When the system comes out of LDPS you will immediately be able to start communicating with the network.
- LDPS for both MCU and radio. The radio will disconnect from WiFi. I this case the system will consume about 130 uA. The the system comes back up the radio will need to re-connect to the AP before network traffic can start. The cool thing for this use case is that you can choose not to connect to WiFi when you come out of LDPS. This gives you the option to collect e.g. sensor data when you wakeup and then only connect to the AP when you are ready to send out over the network.
- Hibernate. I have not yet looked at this.
We already have sleep()/sleepSeconds() and suspend() API’s for MSP430 and skeleton implementations of those for the CC3200 that don’t do much right now. I would like to reuse those and fit the above 2 into these API’s.
- Would you like to see other power modes implemented?
- How would you like to see the “stay connected” vs “disconnect” during LPDS brought out as options?
If you would like to share your thoughts then please post them in the topic “CC3200 WiFi library low power API design“