This Help Article explains the low power measurement using applications available in WICED Studio 6.0 for CYW943907AEVAL1F evaluation kit.

 

A low power app note is available in WICED 6.0  at 43xxx_Wi-Fi/doc/WICED-Powersave-App-Note.pdf for CYW94390x, STM32 and AT91SAM4S.

 

1. Board Rework: Following modification has to be made in CYW943907AEVAL1F to measure power consumption.

    1. Remove R41.
    2. Remove R55.
    3. Short respective terminals of R41 and R55 as shown in the Figure 2.b and jump wires for ammeter connection.

     Note: Short wires at R41 & R55 terminals to a common ammeter terminal to measure IVBAT+IVDDIO as shown in Figure 1 below.

 

Board Modifications.png

Figure 1. Board Modification

 

IMG_20171123_111604 edited.jpg

Figure 2.a. CYW943907AEVAL1F Before Rework

 

IMG_20171123_152938 edited2.jpg

Figure 2.b. CYW943907AEVAL1F After Rework

 

2. Testing

 

     i. Make the connections as shown in the figures 3.a and 3.b.

IMG_20171123_153043 edited.jpg

Figure 3.a. CYW943907AEVAL1F Bottom.

 

IMG_20171123_153515 edited.jpg

Figure 3.b. CYW943907AEVAL1F Top.

 

     ii. Create make target, download and run applications mentioned in section 3 below .

 

 

3. Example Power Save Applications for CYW943907AEVAL1F:

             

     i. Application Sleep (Deep Sleep)- 43xxx_Wi-Fi/apps/test/apps_sleep

 

In this example, the application:

        • Periodically goes to Deep Sleep in a co-operative way.
        • Wakes up through timer.
        • Saves variables in Always On RAM (AONRAM) and verifies them after warm boot.
        • Registers event handlers for entering and leaving Deep Sleep. Does not load firmware to WLAN side.

apps_sleep 1.png

Figure 4. apps_sleep.c- Power Consumption on CYW943907AEVAL1F board ~360uA in Deep Sleep (at Marker 2)

 

     ii. Ping Deep Sleep (Deep Sleep + Networking)- 43xxx_Wi-Fi>/apps/snip/ping_deepsleep

 

In this example, the application:

        • Connects to Access Point (AP) and pings AP periodically.
        • Periodically goes into Deep Sleep in a Co-operative way.
          • Checks for networking to be idle.
          • Suspends networking stack.
        • Resumes networking after coming out of Warm boot.

 

ping_deepsleep 0.png

Figure 5. Ping Deep Sleep- Average power consumption ~1.45mA (between markers 1 and 2)

 

     iii. Ping Power Save- 43xxx_Wi-Fi/apps/snip/ping_powersave/ping_powersave.c

 

In the ping_powersave demo:

 

        • The system connects to AP and periodically pings the AP.
        • In between pings, the system suspends network timers and enters low-power mode (Sleep) for WIFI_SLEEP_TIME( by default 1 second - defined in ping_powersave.c) seconds.
        • The system resumes network timers when coming out of sleep.

 

ping_powersave 0.png

Figure 6. Ping Power Save- Average current consumption ~61.15mA (between markers 1 and 2)

 

 

    iv. Powersave (Deep Sleep + Sleep Use Cases)- 43xxx_Wi-Fi/apps/test/powersave/powersave.c

 

        • Console-based application
        • Commands can be
          • Entered using UART console
          • Statically compiled
        • Following features are supported

 

Change POWERSAVE_STANDALONE_TEST_DEEPSLEEP_NO_ASSOC to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_DEEPSLEEP_NO_ASSOC              1

NO_ASSOC deep sleep 0.png

Figure 7. Power Save- Average current consumption ~1.14mA (between markers 1 and 2)

 

Change POWERSAVE_STANDALONE_TEST_DEEPSLEEP_ASSOC to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_DEEPSLEEP_ASSOC                 1

ASSOC 0.png

Figure 8. Power Save- Average current consumption ~1.54mA (between markers 1 and 2)

 

Change POWERSAVE_STANDALONE_TEST_WAIT_FOR_WLAN to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_WAIT_FOR_WLAN                   1

POWERSAVE_STANDALONE_TEST_WAIT_FOR_WLAN 0.png

Figure 9. Power Save- Average current consumption ~40.43mA (between markers 1 and 2)

 

Change POWERSAVE_STANDALONE_TEST_ACTIVE_WAIT_FOR_WLAN to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_ACTIVE_WAIT_FOR_WLAN            1

POWERSAVE_STANDALONE_TEST_ACTIVE_WAIT_FOR_WLAN 0.png

Figure 10. Power Save- Average current consumption ~11.90mA (between markers 1 and 2)

 

Change POWERSAVE_STANDALONE_TEST_LOW_POWER_NETWORKING to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_LOW_POWER_NETWORKING            1

POWERSAVE_STANDALONE_TEST_LOW_POWER_NETWORKING 0.png

Figure 11. Power Save- Average current consumption ~111mA (between markers 1 and 2)

 

Change POWERSAVE_STANDALONE_TEST_WAKEUP_FROM_DEEP_SLEEP_PROFILE to 1 and keep all other tests 0 in powersave.c as shown below,

#define POWERSAVE_STANDALONE_TEST_WAKEUP_FROM_DEEP_SLEEP_PROFILE  1

POWERSAVE_STANDALONE_TEST_WAKEUP_FROM_DEEP_SLEEP_PROFILE 0.png

Figure 12. Power Save- Average current consumption ~901uA (between markers 1 and 2)