I tried to use an Arduino implementation. Hours of digging through the source code later because half this stuff is undocumented I'm giving up, because the design choices are fundamentally stupid and broken. Why did I even try? Seriously. Sigh.
-
Show this thread
-
If you're wondering: ESP8266 variant. Can't make the main thread go to sleep and wake it up on wifi events. You get to poll. Which doesn't work when you want power saving. Which I kind of do because I'm building a temperature sensor and 70mA constantly will warm it up.
5 replies 1 retweet 10 likesShow this thread -
It's really sad, because I implemented my entire application in 200 lines of code using all these wonderful pre-existing libraries, and now I have to rewrite it (which will probably be 2000 lines) because I hit a fundamental showstopper with power management.
4 replies 0 retweets 7 likesShow this thread -
https://github.com/esp8266/Arduino/issues/1381 … ? any issues with this thread? Keep in mind it is only possible to enter sleep modes if you are connected to an infrastructure. APs need to _always_ be listening :(
1 reply 0 retweets 0 likes -
There are two problems. One, it doesn't work properly, possibly because of bugs in the underlying esp-open-sdk. Two, even if it worked, the TCP server class is not callback-driven and requires polling from the loop thread.
1 reply 0 retweets 0 likes -
I'm trying a trivial test with esp-open-sdk where I just enable light sleep and do nothing. After 10 seconds it goes into sleep briefly, I see ping latencies increase to < DTIM interval (up to 300ms), but only for a split second, then it wakes up and stays awake forever.
1 reply 0 retweets 0 likes -
Keep in mind that I do *not* want to force sleep. I just want to automatically sleep when everything is idle. This is how it's supposed to work according to that power management PDF from Espressif.
1 reply 0 retweets 0 likes -
What core version are you running? Official Espressif?
1 reply 0 retweets 0 likes -
I was using esp-open-sdk, switching to official Espressif now to see if it works better.
1 reply 0 retweets 0 likes
Looks like ESP8266_NONOS_SDK-2.2.1 works better, it actually enters light sleep and mostly stays there. I see 1-3mA power draw most of the time. And one of the changelog entries is "Fix light sleep issues of high current and fail to sleep in some cases" soo...
-
-
Can you use that with the Arduino environment? (I never use the Arduino environment because the NONOS_SDK is so ridiculously good, so I don't really know)
1 reply 0 retweets 0 likes -
Probably, but there's still the issue of the Arduino APIs all being based on a giant master polling loop. The best you could do is serve requests on a delay polling loop. My new non-Arduino implementation is completely event-driven.
0 replies 0 retweets 1 like
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.