Skip to content

Modem sleep does not work #371

Open
Open
@readmodifywrite

Description

@readmodifywrite

NONOS SDK 3.0.3

Calling wifi_set_sleep_type( MODEM_SLEEP_T ) appears to have no effect on the sleep state of the chip. My AP has a DTIM of 1, so I should be seeing ping times vary randomly to over 100 ms. However, the ping times I get are this:

64 bytes from 10.0.0.65: icmp_seq=1 ttl=128 time=6.28 ms
64 bytes from 10.0.0.65: icmp_seq=2 ttl=128 time=1.44 ms
64 bytes from 10.0.0.65: icmp_seq=3 ttl=128 time=1.98 ms
64 bytes from 10.0.0.65: icmp_seq=4 ttl=128 time=1.86 ms
64 bytes from 10.0.0.65: icmp_seq=5 ttl=128 time=2.71 ms
64 bytes from 10.0.0.65: icmp_seq=6 ttl=128 time=2.14 ms
64 bytes from 10.0.0.65: icmp_seq=7 ttl=128 time=1.99 ms
64 bytes from 10.0.0.65: icmp_seq=8 ttl=128 time=1.27 ms
64 bytes from 10.0.0.65: icmp_seq=9 ttl=128 time=1.52 ms
64 bytes from 10.0.0.65: icmp_seq=10 ttl=128 time=2.29 ms
64 bytes from 10.0.0.65: icmp_seq=11 ttl=128 time=3.78 ms
64 bytes from 10.0.0.65: icmp_seq=12 ttl=128 time=4.40 ms
64 bytes from 10.0.0.65: icmp_seq=13 ttl=128 time=1.44 ms
64 bytes from 10.0.0.65: icmp_seq=14 ttl=128 time=3.01 ms
64 bytes from 10.0.0.65: icmp_seq=15 ttl=128 time=1.82 ms
64 bytes from 10.0.0.65: icmp_seq=16 ttl=128 time=13.8 ms
64 bytes from 10.0.0.65: icmp_seq=17 ttl=128 time=2.48 ms
64 bytes from 10.0.0.65: icmp_seq=18 ttl=128 time=4.74 ms
64 bytes from 10.0.0.65: icmp_seq=19 ttl=128 time=2.20 ms
64 bytes from 10.0.0.65: icmp_seq=20 ttl=128 time=13.8 ms
64 bytes from 10.0.0.65: icmp_seq=21 ttl=128 time=2.87 ms
64 bytes from 10.0.0.65: icmp_seq=22 ttl=128 time=2.51 ms
64 bytes from 10.0.0.65: icmp_seq=23 ttl=128 time=1.91 ms
64 bytes from 10.0.0.65: icmp_seq=24 ttl=128 time=1.37 ms
64 bytes from 10.0.0.65: icmp_seq=25 ttl=128 time=1.62 ms
64 bytes from 10.0.0.65: icmp_seq=26 ttl=128 time=1.67 ms
64 bytes from 10.0.0.65: icmp_seq=27 ttl=128 time=2.48 ms
64 bytes from 10.0.0.65: icmp_seq=28 ttl=128 time=2.30 ms
64 bytes from 10.0.0.65: icmp_seq=29 ttl=128 time=2.61 ms
64 bytes from 10.0.0.65: icmp_seq=30 ttl=128 time=7.82 ms
64 bytes from 10.0.0.65: icmp_seq=31 ttl=128 time=2.12 ms
64 bytes from 10.0.0.65: icmp_seq=32 ttl=128 time=1.65 ms
64 bytes from 10.0.0.65: icmp_seq=33 ttl=128 time=2.83 ms
64 bytes from 10.0.0.65: icmp_seq=34 ttl=128 time=1.86 ms
64 bytes from 10.0.0.65: icmp_seq=35 ttl=128 time=2.11 ms
64 bytes from 10.0.0.65: icmp_seq=36 ttl=128 time=28.5 ms
64 bytes from 10.0.0.65: icmp_seq=37 ttl=128 time=11.8 ms
64 bytes from 10.0.0.65: icmp_seq=38 ttl=128 time=4.46 ms
64 bytes from 10.0.0.65: icmp_seq=39 ttl=128 time=2.71 ms
64 bytes from 10.0.0.65: icmp_seq=40 ttl=128 time=2.50 ms
64 bytes from 10.0.0.65: icmp_seq=41 ttl=128 time=2.33 ms
64 bytes from 10.0.0.65: icmp_seq=42 ttl=128 time=1.78 ms
64 bytes from 10.0.0.65: icmp_seq=43 ttl=128 time=6.18 ms
64 bytes from 10.0.0.65: icmp_seq=44 ttl=128 time=2.77 ms
64 bytes from 10.0.0.65: icmp_seq=45 ttl=128 time=2.20 ms
64 bytes from 10.0.0.65: icmp_seq=46 ttl=128 time=2.14 ms
64 bytes from 10.0.0.65: icmp_seq=47 ttl=128 time=2.09 ms
64 bytes from 10.0.0.65: icmp_seq=48 ttl=128 time=2.50 ms
64 bytes from 10.0.0.65: icmp_seq=49 ttl=128 time=4.07 ms
64 bytes from 10.0.0.65: icmp_seq=50 ttl=128 time=1.86 ms
64 bytes from 10.0.0.65: icmp_seq=51 ttl=128 time=2.73 ms
64 bytes from 10.0.0.65: icmp_seq=52 ttl=128 time=6.45 ms
64 bytes from 10.0.0.65: icmp_seq=53 ttl=128 time=2.33 ms
64 bytes from 10.0.0.65: icmp_seq=54 ttl=128 time=1.89 ms
64 bytes from 10.0.0.65: icmp_seq=55 ttl=128 time=1.56 ms
64 bytes from 10.0.0.65: icmp_seq=56 ttl=128 time=11.6 ms
64 bytes from 10.0.0.65: icmp_seq=57 ttl=128 time=6.92 ms
64 bytes from 10.0.0.65: icmp_seq=58 ttl=128 time=2.28 ms
64 bytes from 10.0.0.65: icmp_seq=59 ttl=128 time=4.05 ms
64 bytes from 10.0.0.65: icmp_seq=60 ttl=128 time=2.58 ms
64 bytes from 10.0.0.65: icmp_seq=61 ttl=128 time=4.98 ms
64 bytes from 10.0.0.65: icmp_seq=62 ttl=128 time=1.92 ms

This is not in modem sleep at all.

Has this ever worked properly?

I do not see any bug fixes related to modem sleep for 3.0.4 and 3.0.5.

This is a legacy design, updating to the RTOS SDK is not currently an option.

Is there some other operating condition I need to meet in order for the sleep mode to take effect? Has it ever worked? Are there any examples that show it working?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions