ルアのnode.dsleep()
関数に上限があると誰かが知っていますか?私は睡眠の最大時間を意味します。私は数分間それを設定しようとしたが、それは問題なく、かなり正確だった。 しかし、私が4時間にそれをセットアップする必要があるとき、それは信頼できず、ESPは30分後にほとんど目を覚まします。ESP8266 Lua - node.dsleep(...)に上限がありますか?
ありがとうございます!
カーキ
ルアのnode.dsleep()
関数に上限があると誰かが知っていますか?私は睡眠の最大時間を意味します。私は数分間それを設定しようとしたが、それは問題なく、かなり正確だった。 しかし、私が4時間にそれをセットアップする必要があるとき、それは信頼できず、ESPは30分後にほとんど目を覚まします。ESP8266 Lua - node.dsleep(...)に上限がありますか?
ありがとうございます!
カーキ
これはファームウェアの制限のようです。
Per the NodeMCU documentation:
node.dsleep() は、ディープスリープモードを開始しタイムアウトになったときに目を覚まします。
最大スリープ時間は4294967295us〜71分です。これはSDKの制限です。 2016年1月5日より前のファームウェアのスリープ時間は最大35分です。
これは、32ビット整数の制限に起因すると考えられます。 4294967295は、符号なし32ビット整数が格納できる最大数です。これらの情報から、前述のファームウェア更新に先立って、これは元々、最大2147483647usのスリープ時間を持つ符号付き整数であったと仮定できます。これは35分47.5秒に変換されます。
うわー、完璧な答え、ありがとう!その文書が見つかりませんでした。 – Kaki