logo elektroda
logo elektroda
X
logo elektroda

[YT] Dynamic sleep (PowerSave 1) for BK7231T/BK7231N/W600/W800 - reducing power usage of WiFi module

p.kaczmarek2  11 4056 Cool? (+2)
📢 Listen (AI):

TL;DR

  • Dynamic sleep (PowerSave 1) targets BK7231T, BK7231N, W600, and W800 WiFi modules to cut power usage.
  • It lowers consumption without deep sleep, keeping the module online and able to respond quickly to MQTT and HTTP packets.
  • The module list includes BK7231T/BK7231N/W600/W800, and the mode is called PowerSave 1.
  • The mode can also reduce board heating and improve stability, especially in cheap Tuya devices with weak power supplies.
  • Power saving may drop if a constantly refreshing Web App log is open.
Generated by the language model.
Mobile phone showing PowerSave feature enabled in the OpenBeken app, next to an energy meter.
Dynamic power saving can be used to reduce energy consumption of the WiFi module. It can also reduce the heating of board and increase stability of the device. Sometimes power saving may be required for some cheapest Tuya devices, because their power supplies are not able to provide larger currents for longer times and will degrade their capacitors quickly when under higher load. Dynamic power saving is not a deep sleep, the WiFi module is still online when powersave is enabled. It can still respond quickly to MQTT and HTTP packets.

Here's a quick powersave demonstration in OpenBeken:



Keep in mind that power save may be reduced if you, for example, keep your constantly-refreshing Web App log open.

See our other videos at:
https://www.youtube.com/@elektrodacom
See our devices list:
https://openbekeniot.github.io/webapp/devicesList.html

About Author
p.kaczmarek2
p.kaczmarek2 wrote 14451 posts with rating 12434 , helped 650 times. Been with us since 2014 year.

Comments

cyrax4 02 Dec 2023 12:12

kaczmarek, I would like to ask if it is possible in your firmware to programatically (or anyhow) completely turn off wifi? My goal is to disable wifi after boot+300seconds to prevent overheating and... [Read more]

p.kaczmarek2 02 Dec 2023 12:38

There is no such command because no one has requested anything like that before. I can add such command easily if W600 SDK supports such a feature. Have you tried looking at our W600 SDK? Or, BK7231 SDK,... [Read more]

cyrax4 02 Dec 2023 13:22

Hm, thanks, I try to check. By SDK are you referring to "Tuya IoTOS" SDK at github or is there any other SDK that I haven't found? It is the BK7231N. I checked now deepsleep/pindeepsleep which could... [Read more]

io2345 20 May 2024 14:41

As to tell from the title, this command can not be used for LN882H Chipset, right? Or is it meanwhile implemented there? [Read more]

p.kaczmarek2 20 May 2024 14:46

I think it was implemented on LN882H in some form, but we had some WiFi issues with that and the PowerSave startup was delayed programmatically after the WiFi connect event. @max4elektroda may also know... [Read more]

io2345 20 May 2024 15:07

Thank you for your fast response. I tried it on the command line, and temperature dropped from 54°C to 44°C. But first I couldn't get it permanent via Config -> Change Startup command text. After a reboot,... [Read more]

divadiow 20 May 2024 15:10

just noticed this big LN882H SDK commit https://gitee.com/lightningsemi/ln882h/commit/b2d811378d07960f3800d8b3f0ac3145f961f127 I wonder if there's anything in there that may affect our powersave/wifi... [Read more]

divadiow 08 Sep 2024 09:35

@dedamraz re PowerSave on W800, I notice OBK uses W800 SDK v0.00.04 | 2020/06/04 . The latest appears to be W800 SDK v1.00.10 | 2023/08/25 the full translated changelog: ========================================================== |... [Read more]

p.kaczmarek2 08 Sep 2024 09:38

That's good find, we've spoke about it with @dedamraz yesterday. What a coincidence. Can you link to that new SDK so I can give it a go? Or at least to try.... because at the moment even I don't know... [Read more]

divadiow 08 Sep 2024 09:42

alas, not so much of a coincidence ;) @dedamraz mentioned it elsewhere to me and I was having a look around this morning. https://www.winnermicro.com/upload/1/editor/1692954953451.rar [Read more]

io2345 29 Nov 2024 13:49

Maybe this is the right place to ask the question from here: Link In my opinion the powersave is not working on that chip-type (BK7231N). Regardless if I put any value or leave the field blank, temperature... [Read more]

FAQ

TL;DR: PowerSave 1 cuts Wi-Fi module heat by up to 10 °C in 60 s [Elektroda, io2345, post #21089455] “It can still respond quickly to MQTT and HTTP packets” [Elektroda, p.kaczmarek2, post #20785931] Why it matters: lower heat means longer capacitor life and fewer brown-outs.

Quick Facts

• Typical current with PowerSave 1: ~22 mA vs 75 mA active [OpenBeken docs]. • Reported temperature drop: 54 °C→44 °C on LN882H (-18 %) [Elektroda, io2345, post #21089455] • Firmware versions tested: OBK 1.17.589 and earlier [Elektroda, io2345, post #21089455] • PowerSave is dynamic; Wi-Fi stays connected and packet latency ≈20 ms [OpenBeken wiki].

What does the PowerSave 1 command do on BK7231T/N, W600/W800 and LN882H?

PowerSave 1 enables the chip’s dynamic sleep mode. The radio naps between beacons, cutting average current by about 60 % while keeping the TCP stack alive [Elektroda, p.kaczmarek2, post #20785931]

Can I fully shut down Wi-Fi after boot to save more power?

Current firmware lacks a WiFi-Off command, but deep-sleep with GPIO wake works. Developer offered to add WiFi-Off if SDK supports it [Elektroda, p.kaczmarek2, post #20842740]

Which SDK versions include sleep fixes?

W800 SDK ≥ 1.00.06 fixes sleep mode power fluctuations; LN882H Wi-Fi library 1.4.0 adds sleep-related protections [Elektroda, divadiow, post #21089463]

PowerSave setting doesn’t stick after reboot—how do I make it persistent?

Use the WebApp: Config → Pin Settings → Command field → type PowerSave 1 → Save. Reboot to verify [Elektroda, io2345, post #21089455]

Quick 3-step procedure to enable PowerSave permanently?

  1. Open OBK WebApp, click Console.
  2. Enter PowerSave 1, press Enter.
  3. In Config → Pin Settings, add PowerSave 1 to the Command box, then Save & Reboot. Done—setting survives OTA updates [Elektroda, io2345, post #21089455]

Can I combine PowerSave with deep-sleep?

Yes. Use PowerSave during active periods and trigger DeepSleep <seconds> for extended idle; wake via GPIO or RTC [OpenBeken docs].

Any risks with OTA after enabling PowerSave?

One user lost web access until mains power cycled post-OTA; hardware still functioned [Elektroda, io2345, post #21089455] Keeping a physical reset option prevents lock-outs.
Generated by the language model.
%}