Updated Energy Saving (markdown)

Norbert Richter 2018-02-19 14:37:27 +01:00
parent 807566b869
commit dd20c902f4
1 changed files with 59 additions and 2 deletions

@ -1,6 +1,7 @@
Using the [Sleep command](https://github.com/arendst/Sonoff-Tasmota/wiki/Commands#management) you can instruct Tasmota to sleep for the set milliseconds in its main cycle. While sleeping your device will consume less power. Using the [Sleep command](https://github.com/arendst/Sonoff-Tasmota/wiki/Commands#management) you can instruct Tasmota to sleep for the set milliseconds in its main cycle. While sleeping your device will consume less power.
Setting this around 50 ms reduces power consumption from ~1.1W to ~0.4W on an idling (relay off) sonoff and button presses are still noticed correctly. With this setting you have to concentrate very hard to click the button so fast that it is not recognized by the device. Setting this around 50 ms reduces power consumption from ~1.1 W to ~0.7 W on an idling (relay off) sonoff and button presses are still noticed correctly. With this setting you have to concentrate very hard to click the button so fast that it is not recognized by the device.
If your Sonoff needs to do something continuously, this will be affected. E.g. Sonoff LED will flicker and Sonoff POW will not be able to correctly total the energy consumption. Spot readings of power, voltage, etc. will however remain correct. If your Sonoff needs to do something continuously, this will be affected. E.g. Sonoff LED will flicker and Sonoff POW will not be able to correctly total the energy consumption. Spot readings of power, voltage, etc. will however remain correct.
@ -9,3 +10,59 @@ If your Sonoff needs to do something continuously, this will be affected. E.g. S
> Expect overall button/key/switch misses and wrong values on Sonoff Pow > Expect overall button/key/switch misses and wrong values on Sonoff Pow
The TelePeriod is also affected by the Sleep command. You may need to set TelePeriod significantly lower to get telemetry data as often as expected, especially for Sleep values greater than 50ms. The TelePeriod is also affected by the Sleep command. You may need to set TelePeriod significantly lower to get telemetry data as often as expected, especially for Sleep values greater than 50ms.
**Note:**
As the WiFi Modem on an ESP8266 is the major consumer - using Sleep with WiFi AP mode enabled is more or less without effect.
## Sonoff power consumtion and measurement
The result of the most home used energy meters are very imprecise for power consumtion < 10 W and become more and more imprecise for lower values; furthermore the results of such meters are depending very strong of the load type (capacitive/inductive) and is very imprecise for non-ohmic load types as the Sonoff is.
Additonal to that using Sleep - which also periodicaly cycles the power of the WiFi modem of the Sonoff - the result of such meters are more or less useless.
## Example of power consumtion
### Absolute AC line measurement using calibrated meter
The following measurement was done directly on 230 V/AC line using a _Sonoff Dual R2_ connected on two different MID calibrated meter (Eastron SMD630 MID/saia-burgess ALE3).
#### _Sonoff Dual R2_ power consumtion using Sleep
Sleep: | 0 | 1 | 50 | 200
------------ | ------------ | ------------ | ------------- | ------------
Energy | 29.0 Wh | 39.1 Wh | 18.9 Wh | 26.0 Wh
Runtime | 23.4661 h | 46.7219 h | 25,0258 h | 38.2058 h
Power | 1.24 W | 0.84 W | 0.76 W | 0.68 W
All measurements were done with
- WiFi STA mode, enabled and connected (70%)
- MQTT enabled and connected
- Syslog enabled and connected
- `Teleperiod 60` for debuging
- relays off
- measure period of 24-46 h to reduce measuring fault
The first impression is that a higher sleep value reduce the consumtion, but slightly. The second result is that using `Sleep <value>` (`value` &ne; 0, e. g. 1) is enough reducing the power consumtion at minimum 1/3 up to 45 % (value=200).
### Quantity measurement of ESP-12 module/ESP8266 3.3V line
To find out why Sleep reduce the power consumtion and with which quantity, the 3.3 V DC current of ESP8266 of an ESP-12 module was measured using an oscilloscope and (for easy reading the oscilloscope diagram) a 1 &ohm; shunt which results in a 1:1 interpretation between voltage and current.
This measurement simplified the measure of a time based power consumtion; no integration must be done. On the other side note that the quantity measurement does not respect the effectiveness of the complete Sonoff circuit.
#### Sleep 0
Using `Sleep 0` there are no `delay()` calls in Tasmota main loop and therefore the power consumtion is continuous at current ~80 mA:
![sleep 0](https://user-images.githubusercontent.com/6636844/36341353-2c67b1e8-13ed-11e8-8e45-b75136704291.png)
#### Sleep 1
Due to the fact that the Tasmota main loop now calls `delay()` (even with 1 ms) it seems it results in peroidically (100 ms) enabling the WiFi Modem Sleep mode within the WiFi Manager library. It results in periodically lowering the current to 15-20 mA for periodically ~90 ms:
![sleep 1](https://user-images.githubusercontent.com/6636844/36341400-f129a18a-13ed-11e8-882b-d6640a0c5d61.png)
#### Sleep 100
Further increasing the sleep value there are more and more ~90 ms periods with additonal lowering the current to 8-10 mA - I realy don't know where this comes from:
![sleep 100 1](https://user-images.githubusercontent.com/6636844/36341463-04485df0-13ef-11e8-8f93-2b6d4c42b4b1.png)
#### Sleep 250
As already noticed with `Sleep 100` the number periods having 8-10 mA instead of 15-20 mA are again increasing:
![sleep 250 1](https://user-images.githubusercontent.com/6636844/36341493-5696bf48-13ef-11e8-8155-44ac90200df8.png)
The quantity measurement confirms the suspicion that a sleep value &ne; 0 results in reduce the power consumtion about 1/3.