/
_changelog.ino
1698 lines (1698 loc) · 88.8 KB
/
_changelog.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
/* 6.4.1.17 20190214
* Change template update by removing possibility to add user module config keeping template as defined (#5222)
* Fix regression from 6.4.1.16 where GPIO9 and GPIO10 connected devices did not work (#5197)
* Fix GUI wifi password acception starting with asteriks (*) (#5231, #5242)
* Add rule expression enabled by define USE_EXPRESSION in my_user_config.h (#5210)
* Add Configure Template menu option to GUI (#5222)
*
* 6.4.1.16 20190211
* Initial support for online template change using command Template or GUI Configure Other (#5177)
* Add parameter CFG_HOLDER to status 1 message (#5206)
* Update GUI
*
* 6.4.1.15 20190208
* Change image name BE_MINIMAL to FIRMWARE_MINIMAL (#5106)
* Change image names USE_xyz to FIRMWARE_xyz (#5106)
* Add command SerialDelimiter 128 to filter reception of only characters between ASCII 32 and 127 (#5131)
* Add status message to former declined group commands (#5145)
*
* 6.4.1.14 20190203
* Add SetOption32 until SetOption49 diagnostic information to Status 3 report as replacement for second property value in SetOption property name
* Add Resolution property to Status 3 report providing previous SetOption second value property
* Fix IR local echo
* Add user configuration of HLW8012 and HJL-01/BL0937 Energy Monitoring as used in Sonoff S31, Pow Ra and many Tuya based devices
* Add user configuration of MCP39F501 Energy Monitoring as used in Shelly2
* Add support for multiple ADS1115 I2C devices (#5083)
* Add rule support for "==", "!=" ">=" and "<=" (#5122)
* Add Hass status sensor (#5139)
* Change GUI weblog solving possible empty screens (#5154)
* Change PN532 support from I2C to Serial for more stability (#5162)
* Add MHZ19 Temperature as Domoticz Temperature selection (#5128)
*
* 6.4.1.13 20190130
* Add command SetOption36 to control boot loop default restoration (#4645, #5063)
* Add resiliency to saved Settings (#5065)
*
* 6.4.1.12 20190128
* Change code use of boolean to bool and byte to uint8_t
* Change code uint8_t flags to bool flags
*
* 6.4.1.11 20190124
* Remove command SetOption14 as it has been superseded by command Interlock
* Remove command SetOption63 as it has been superseded by command Interlock
* Add command Interlock 0 / 1 / 1,2 3,4 .. to control interlock ON/OFF and add up to 8 relays in 1 to 4 interlock groups (#5014)
* Add core version conditional compile options to provided PWM files (#4917)
* Add support for inverted buttons and inverted buttons without pullup (#4914)
*
* 6.4.1.10 20190121
* Fix Hass discovery of MHZ19(B) sensors (#4992)
* Fix Hass Software Watchdog exception during discovery (#4988)
* Add support for MAX44009 Ambient Light sensor (#4907)
*
* 6.4.1.9 20190115
* Add support for Mi LED Desk Lamp with rotary switch (#4887)
* Fix mDNS addService (#4938, #4951)
* Fix allowable MAX_RULE_VARS to 16 (#4933)
* Add (S)SerialSend3 escape sequence \x to allow hexadecimal byte value (#3560, #4947)
* Add SerialBridge command SSerialSend5 <hexdata>
*
* 6.4.1.8 20190107
* Change sonoff_template.h layout regarding optional module flags like ADC0
* Add command SetOption62 1 to force no Button/Switch pullup on dedicated modules. Currently only supported on Shelly2 (#4841)
* Fix Display exception 28 when JSON value is NULL received
* Fix Home Assistant Sensor Discovery Software Watchdog restart (#4831)
* Add support for OBI Power Socket 2 (#4829)
* Add support for YTF IR Bridge (#4855)
* Change web authentication (#4865)
* Add support for Digoo DG-SP202 Smart Socket with Energy monitoring (#4891)
* Add support for Smanergy KA10 Smart Wall Socket with Energy monitoring
* Add support for Luminea ZX2820 Smart Socket with Energy monitoring (#4921)
* Add define MDNS_ENABLE to control initial mDNS state (#4923)
* Add split interlock part 1 (#4910)
*
* 6.4.1.7 20190106
* Fix HLW8012, HJL01 and BL0937 based energy sensors low Power (below 10W) measurement regression from 6.4.1.6
* Add Power status functionality to LED2 when configured leaving LED1 for Link status indication
* Add no pull-up control to Shelly 2 module (default is pull-up, change GPIO2 to Switch3n for no pull-up) (#4841)
* Add 4 seconds startup delay to button control (#4829)
* Change button driver making it modular
*
* 6.4.1.6 20190105
* Add commands PowerCal, VoltageCal and CurrentCal for HLW8012, HJL01 and BL0937 based energy sensors
*
* 6.4.1.5 20190103
* Remove command SetOption35 0-255 for mDNS start-up delay (#4793)
* Add command SetOption55 0/1 to disable/enable mDNS (#4793)
*
* 6.4.1.4 20190101
* Update Copyright (C) 2019
* Fix epaper driver (#4785)
* Add support for Near Field Communication (NFC) controller PN532 using I2C (#4791)
*
* 6.4.1.3 20181229
* Change sonoff_template.h module lay-out by removing non-configurable GPIOs
* Add support for MAX31855 K-Type thermocouple sensor using softSPI (#4764)
*
* 6.4.1.2 20181228
* Change switch driver making it modular and introduce input filter (#4665, #4724)
* Add define DS18B20_INTERNAL_PULLUP to select internal input pullup when only one DS18B20 sensor is connected eliminating external resistor (#4738)
* Add variable %timestamp% to rules (#4749)
*
* 6.4.1.1 20181224
* Fix most compiler warnings
* Change switch input detection by optimizing switch debounce (#4724)
*
* 6.4.1 20181224
* Change RAM usage BMP/BME I2C sensors
* Change FallbackTopic from cmnd/<mqttclient>/ to cmnd/<mqttclient>_fb/ to discriminate from Topic (#1528)
* Change FallbackTopic detection (#4706)
* Change Hass discovery to short MQTT messages as used by Hass 0.81 and up (#4711)
* Change MQTT GUI password handling (#4723)
* Fix possible dtostrf buffer overflows by increasing buffers
* Fix wifi strongest signal detection (#4704)
* Fix Alexa "this value is outside the range of the device". Needs power cycle and Alexa deletion/discovery cycle. (#3159, #4712)
* Add Slovak language file (#4663)
* Add support for AZ-Instrument 7798 CO2 meter/datalogger (#4672)
* Add define WIFI_SOFT_AP_CHANNEL in my_user_config.h to set Soft Access Point Channel number between 1 and 13 as used by Wifi Manager web GUI (#4673)
* Add define USE_MQTT_TLS_CA_CERT for checking MQTT TLS against root ca using Let's Encrypt cert from sonoff_letsencrypt.h - not supported with core 2.3.0 (#4703)
*
* 6.4.0 20181217
* Change GUI Configure Module by using AJAX for data fetch to cut page size (and memory use) by 40%
In case of web page errors clear your browser cache or do Page Reload (F5 or Ctrl+R)
* Change enforcing flashmode dout but it is still mandatory
* Change bootcount update (being first) flash write to 10 seconds after restart
* Change display and epaper drivers
* Change command WebSend Host header field from IP address to hostname (#4331)
* Change log buffer size from 512 to 520 to accommodate http sensor data (#4354)
* Change default WIFI_CONFIG_TOOL from WIFI_WAIT to WIFI_RETRY in my_user_config.h (#4400)
* Change webgui refresh time delay for Save Settings and local OTA Upload (#4423)
* Change SR-04 driver to use NewPing library (#4488)
* Change MCP230xx driver to support interrupt retention over teleperiod (#4547)
* Change support for MPU6050 using DMP (#4581)
* Fix unintended function overload of WifiState
* Fix wifi connection errors using wifi disconnect and ESP.reset instead of ESP.restart
* Fix Sonoff Pow R2 and Sonoff S31 Serial interface hang caused by Sonoff Basic R2 driver delay implementation (and possibly core bug)
* Fix MQTT connection error after restart
* Fix wifi re-scan connection baseline
* Fix possible strncat buffer overflows
* Fix intermittent Pzem sensor energy overflow calculation error
* Fix shelly2 ghost switching caused by lack of pull-up inputs (#4255)
* Fix hardware serial pin configuration. To keep using hardware serial swap current Rx/Tx pin configuration only (#4280)
* Fix MqttRetry values above 255 seconds (#4424)
* Fix WifiManager functionality on initial installation (#4433)
* Fix ArduinoOTA for Core 2.5.0 (#4620)
* Add minutes to commands Timezone to allow all possible world timezones
* Add more strict checks for GPIO selections
* Add code image and optional commit number to version
* Add dynamic delay to main loop providing time for wifi background tasks
* Add additional start-up delay during initial wifi connection
* Add support for decoding Theo V2 sensors as documented on https://sidweb.nl using 434MHz RF sensor receiver
* Add support for decoding Alecto V2 sensors like ACH2010, WS3000 and DKW2012 weather stations using 868MHz RF sensor receiver
* Add user definition of defines WIFI_RSSI_THRESHOLD (default 10) and WIFI_RESCAN_MINUTES (default 44)
* Add command SetOption58 0/1 to enable IR raw data info in JSON message (#2116)
* Add command IRSend <frequency>|0,<rawdata1>,<rawdata2>,.. to allow raw data transmission (#2116)
* Add command SetOption56 0/1 to enable wifi network scan and select highest RSSI (#3173)
* Add command SetOption57 0/1 to enable wifi network re-scan every 44 minutes with a rssi threshold of 10 to select highest RSSI (#3173)
* Add support for SDM220 (#3610)
* Add default sleep 1 to sonoff-basic to lower energy consumption (#4217)
* Add wifi status to Tuya (#4221)
* Add delays to reduce CPU usage at boot time (#4233)
* Add command SetOption24 0/1 to select pressure unit as hPa or mmHg (#4241)
* Add optional hardware serial when GPIO13(Rx) and GPIO15(Tx) are selected removing hardware serial from GPIO01(Tx) and GPIO03(Rx) (#4288)
* Add support for Gosund SP1 v2.3 Power Socket with Energy Monitoring (#4297)
* Add support for Armtronix dimmers. See wiki for info (#4321)
* Add to command WebSend option to send a direct path when command starts with a slash (#4329)
* Add support for LG HVac and IrRemote (#4377)
* Add initial support for Hass sensor discovery (#4380)
* Add support for Fujitsu HVac and IrRemote (#4387)
* Add support for I2C MGC3130 Electric Field Effect sensor by Christian Baars (#3774, #4404)
* Add command CalcRes to set number of decimals (0 - 7) used in commands ADD, SUB, MULT and SCALE (#4420)
* Add CPU average load to state message (#4431)
* Add command SetOption59 0/1 to change state topic from tele/STATE to stat/RESULT (#4450)
* Add support for SM Smart Wifi Dimmer PS-16-DZ (#4465)
* Add support for Teckin US Power Socket with Energy Monitoring (#4481)
* Add command SetOption60 0/1 to select dynamic sleep (0) or sleep (1) (#4497)
* Add support for iFan02 Fanspeed in Domoticz using a selector (#4517)
* Add support for GPIO02 for newer Sonoff Basic (#4518)
* Add Announce Switches to MQTT Discovery (#4531)
* Add support for Manzoku Power Strip (#4590)
*
* 6.3.0 20181030
* Change web Configure Module GPIO drop down list order for better readability
* Change status JSON message providing more switch and retain information
* Change xsns_17_senseair.ino to use TasmotaModbus library
* Change MCP230xx driver
* Change PubSubClient Mqtt library to non-blocking EspEasy version
* Change energy monitoring using energy sensor driver modules
* Change Webserver page handler for easier extension (thx to Adrian Scillato)
* Change pinmode for no-pullup defined switches to pullup when configured as switchmode PUSHBUTTON (=3 and up) (#3896)
* Change default OTA Url to http://thehackbox.org/tasmota/release/sonoff.bin (#4170)
* Remove support for MQTT Client esp-mqtt-arduino by #define MQTT_LIBRARY_TYPE MQTT_ESPMQTTARDUINO
* Remove commands PowerCal, VoltageCal and CurrentCal as more functionality is provided by commands PowerSet, VoltageSet and CurrentSet
* Remove restart after ntpserver change and force NTP re-sync (#3890)
* Fix showing Period Power in energy threshold messages
* Fix header file execution order by renaming user_config.h to my_user_config.h
* Fix some TSL2561 driver issues (#3681)
* Fix KNX PA exception. Regression from 6.2.1 buffer overflow caused by subStr() (#3700, #3710)
* Fix setting and getting color temperature for Philips Hue emulation (#3733)
* Fix ButtonRetain to not use default topic for clearing retain messages (#3737)
* Fix syslog when emulation is selected (#2109, #3784)
* Fix rule trigger POWER1#STATE execution after restart and SetOption0 is 0 (#3856)
* Fix Home Assistant forced light discovery (#3908)
* Fix invalid configuration restores and decode_config.py crc error when savedata = 0 (#3918)
* Fix timer offset -00:00 causing 12:00 hour offset (#3923)
* Fix I2CScan invalid JSON error message (#3925)
* Fix exception when wrong Domoticz JSON message is received (#3963)
* Fix Sonoff Bridge RfRaw receive (#4080, #4085)
* Fix possible wifi connection error (#4044, #4083)
* Fix invalid JSON floating point result from nan (Not a Number) and inf (Infinity) into null (#4147)
* Fix rule mqtt#connected trigger when mqtt is disabled (#4149)
* Add support for LCD, Matrix, TFT and Oled displays
* Add support for Neo Coolcam Wifi Smart Power Plug
* Add support for Michael Haustein ESP Switch
* Add support for MQTT Client based on lwmqtt to be selected by #define MQTT_LIBRARY_TYPE MQTT_ARDUINOMQTT
* Add support for Neo Coolcam Wifi Smart Power Plug
* Add support for Michael Haustein ESP Switch
* Add support for MQTT Client based on lwmqtt to be selected by #define MQTT_LIBRARY_TYPE MQTT_ARDUINOMQTT
* Add support for DS3231 Real Time Clock
* Add support for HX711 Load Cell with optional web GUI scale interface to demonstrate easy GUI plug-in
* Add support for serial 8N2 communication to TasmotaModbus and TasmotaSerial libraries
* Add support for RF transceiving using library RcSwitch (#2702)
* Add support for Shelly 1 and Shelly 2 (#2789)
* Add support for La Crosse TX20 Anemometer (#2654, #3146)
* Add support for MP3 player using DFRobot RB-DFR-562 (#3723)
* Add Support for Xiaomi-Philips Bulbs (#3787)
* Add support for PCA9685 12bit 16pin hardware PWM driver (#3866)
* Add support for EXS Relay V5.0 (#3810)
* Add support for OBI Power Socket (#1988, #3944)
* Add support for Teckin Power Socket with Energy Monitoring (#3950)
* Add support for Pzem-003/017 DC Energy monitoring module (#3694)
* Add support for Pzem-014/016 AC Energy monitoring module (#3694)
* Add support for CSL Aplic WDP 303075 Power Socket with Energy Monitoring (#3991, #3996)
* Add support for Tuya Dimmer (#469, #4075)
* Add command Display to show all settings at once
* Add command SerialSend5 to send raw serial data like "A5074100545293"
* Add command WebRefresh 1000..10000 to control web page refresh in milliseconds. Default is 2345
* Add command WeightRes 0..3 to control display of decimals for kilogram
* Add command RGBWWTable to support color calibration (#3933)
* Add command Reset 4 (reset to defaults but keep wifi params) and Reset 5 (as reset 4 and also erase flash) (#4061)
* Add command SetOption35 0..255 (seconds) to delay mDNS initialization to control possible Wifi connect problems
* Add command SetOption52 0/1 to control display of optional time offset from UTC in JSON messages (#3629, #3711)
* Add command SetOption53 0/1 to toggle gui display of Hostname and IP address (#1006, #2091)
* Add authentication to HTTP web pages
* Add decimals as input to commands PowerSet, VoltageSet and CurrentSet
* Add tools/decode-config.py by Norbert Richter to decode configuration data. See file for information
* Add define USE_DISPLAYS for selecting image sonoff-display
* Add define USE_BASIC for selecting image sonoff-basic without most sensors
* Add auto reload of main web page to some web restarts
* Add TasmotaModbus library as very basic modbus wrapper for TasmotaSerial
* Add more API callbacks and document API.md
* Add Apparent Power and Reactive Power to Energy Monitoring devices (#251)
* Add token %hostname% to command FullTopic (#3018)
* Add Wifi channel number to state message (#3664)
* Add user configurable GPIO02 and GPIO03 on H801 devices (#3692)
* Add toggle function RGBW lights (#3695, #3697)
* Add network information to display start screen (#3704)
* Add sleep to Nova Fitness SDS01X sensor (#2841, #3724, #3749)
* Add Analog input AD0 enabled to sonoff-sensors.bin (#3756, #3757)
* Add power value below 5W to Sonoff Pow R2 and S31 (#3745)
* Add RF Receiver control to module MagicHome to be used on Arilux LC10 (#3792)
* Add userid/password option to decode-status.py (#3796)
* Add delay after restart before processing rule sensor data (#3811)
* Add force_update to Home Assistant discovery (#3873)
* Add rule triggers SWITCH1#BOOT and POWER1#BOOT (#3904, #3910)
* Add Hebrew language file (#3960)
* Add TotalStartTime to Energy JSON message (#3971)
* Add whitespace removal from RfRaw and SerialSend5 (#4020)
* Add support for two BMP/BME sensors (#4195)
*
* 6.2.1 20180905
* Fix possible ambiguity on command parameters if StateText contains numbers only (#3656)
* Fix Wemo emulation to select the first relay when more than one relay is present (#3657)
* Fix possible exception due to buffer overflow (#3659)
* Fix lost energy today and total energy value after power cycle (#3689)
*
* 6.2.0 20180901
* Allow user override of define MAX_RULE_VARS and MAX_RULE_TIMERS (#3561)
* Disable wifi sleep for both Esp8266/Arduino core 2.4.1 and 2.4.2 to solve device freeze caused by Espressif SDK bug (#3554)
* Change DS18B20 driver to provide better instant results
* Change some sensor drivers to provide instant results
* Change define USE_ALL_SENSORS to USE_SENSORS as it doesn't contain all sensors due to duplicate I2C addresses
* Change some sensor update timings: AdcEvery 200 -> 250, Senseair 300 -> 250, SDM120 300 -> 250, SDM630 300 -> 250
* Change default Wifi config option from WPS to Wifi Manager if WPS is disabled or Wifi Smartconfig if webserver is disabled or Wifi Serial input if Smartconfig is disabled
* Change SHT1x driver to provide better instant results and fix I2C interference
* Change DHT driver to provide better instant results and add decimals to DHT11 (#3164)
* Change DS18x20 driver to provide better instant results (#3169)
* Change CounterType 1 from milliseconds to microseconds (#3437)
* Change scheduler for better sleep support using Uptime, Delay, PulseTime and TelePeriod, Blinktime (#3581)
* Remove unused functionality from Sonoff-minimal to save space
* Remove WPS and SmartConfig from sonoff-minimal saving 56k code space
* Remove TSL2561 debug message and update library (#2415)
* Remove forced restart when sleep command is executed (#3554)
* Fix invalid response using more than 4 switches and domoticz
* Fix sonoff-minimal not using default settings
* Fix unsecure main webpage update
* Fix DHT driver mixing values for different sensors (#1797)
* Fix EnergyReset3 regression not clearing total energy (#2723)
* Fix rules once regression from v6.1.0 (#3198, #3226)
* Fix command Scale buffer overflow (#3236)
* Fix possible WDT due to long MQTT publish handling (#3313)
* Fix command TimeDst/TimeStd invalid JSON (#3322)
* Fix handling of default names when using names starting with shortcut character ",0,1 or 2 (#3392, #3600, #3618)
* Fix LM75AD I2C sensor detection (#3408)
* Fix iFan02 power on state (#3412, #3530)
* Fix some Pow R2 and S31 checksum errors using optimized re-sync (#3425)
* Fix SDM120 reporting wrong negative values to Domoticz (#3521)
* Fix MQTT reconnection detection when using TasmotaMqtt library (#3558)
* Fix OtaMagic when file path contains a dash (-) (#3563)
* Fix Sonoff Bridge data reception when using Portisch EFM8 firmware using in data buffer length (#3605)
* Add read sensor retry to DS18B20, DS18x20, DHT, SHT1X and HTU21
* Add user selection of Wifi Smartconfig as define USE_SMARTCONFIG in user_config.h
* Add boot loop detection and perform some solutions
* Add wifi and mqtt status led blinkyblinky to be disabled by SetOption31 1. Does not work when LedPower is On (deliberate) (#871, #2230, #3114, #3155)
* Add support for TM1638 switch (#2226)
* Add GPIO options ButtonXn, SwitchXn and CounterXn to select INPUT mode instead of INPUT_PULLUP (#2525)
* Add support for APDS9960 proximity sensor (#3051)
* Add support for MPR121 controller in input mode for touch buttons (#3142)
* Add support for MCP230xx for general purpose input expansion and command Sensor29 (#3188)
* Add default Wifi Configuration tool as define WIFI_CONFIG_NO_SSID in user_config.h if no SSID is configured (#3224)
* Add command Timers 0/1 to globally disable or enable armed timers (#3270)
* Add support for CCS811 sensor (#3309)
* Add Turkish language file (#3332)
* Add command SerialSend4 to send binary serial data (#3345)
* Add initial support for sensor MPU6050 (#3352)
* Add rule triggers Wifi#Connected and Wifi#Disconnected (#3359)
* Add option + to command Rule to concatenate new rule with existing rules (#3365)
* Add message when JavaScript is not enabled in webbrowser (#3388)
* Add build time setting of ButtonTopic and SwitchTopic (#3414)
* Add iFan02 Fanspeed + and Fanspeed - command options (#3415)
* Add Individual HSBColorX commands (#3430, #3615)
* Add output support on MCP23008/MCP23017 (#3436)
* Add modulo option to rules like rule1 on Time#Minute|5 do backlog power on;delay 200;power off endon (#3466)
* Add RGB support for Domoticz (#3547)
* Add all ruletimer values to command RuleTimer result message (#3571)
* Add command Publish2 for publishing retained MQTT messages (#3593)
* Add commands ButtonDebounce 40..1000 and SwitchDebounce 40..1000 to have user control over debounce timing. Default is 50mS (#3594)
* Add RuleX debug options 8,9,10 (StopOnError) to control RuleX execution status after an exception restart (#3607)
* Add rule variables %sunrise%, %sunset%, %uptime% and %time% (#3608)
* Add optional MQTT_TELE_RETAIN to Energy Margins message (#3612, 3614)
*
* 6.1.1 20180714
* Revert wifi changes (#3177)
* Revert sonoff-minimal removals causing failure of wifi connection (#3177)
*
* 6.1.0 20180706
* Remove version 3, 4 and pre 5.2 settings auto-upgrade. See https://github.com/arendst/Sonoff-Tasmota/wiki/Upgrade#migration-path
* Change default CFG_HOLDER from 0x20161209 to 4617 (=0x1209) - no impact on default upgrades
* Change number of supported switches from 4 to 8 (#2885, #3086)
* Change BME680 driver from Adafruit to Bosch BME680 library (#2969)
* Fix Pzem004T checksum error
* Fix KNX bug when doing reply of sensors values
* Fix rules induced LWT message
* Fix possible wifi connection problem (#1366)
* Fix some Pow R2 and S31 checksum errors (#1907)
* Fix display selection of un-available GPIO options in Module Configuration webpage (#2718)
* Fix timer re-trigger within one minute after restart (#2744)
* Fix IRSend not accepting data value of 0 by David Conran (#2751)
* Fix vars on rules by Adrian Scillato (#2769)
* Fix bug in KNX menu by Adrian Scillato (#2770)
* Fix anomalies in rules (#2778)
* Fix HUE bridge V1 software version by Heiko Krupp (#2788)
* Fix Hardware Watchdog restart when using event command (#2853)
* Add Ukrainian language file
* Add KNX support for DS18S20 Temperature sensor
* Add CRC to Settings making future upgrades more fail-safe
* Add feature information to Status 4
* Add tools folder with python script decode-status.py for decoding some status fields like SetOption and Features
* Add Slots on the KNX Web Menu to select Group Addess to receive data to trigger rules
* Add two rule sets of 511 characters using commands rule1, rule2 and rule3
* Add Console Commands to send KNX Commands and KNX Values
* Add Slots on the KNX Web Menu to select Group Addess to send data from console commands
* Add Events to trigger rules when a command or read requests is received from KNX
* Add command SetOption30 to enforce Hass discovery as light group (#1784)
* Add support for BlitzWolf BW-SHP2 (and Homecube, Gosund SP1) Energy Monitoring Smart Socket (#2223)
* Add time in minutes to rule Time#Initialized, Time#set and Time#Minute (#2669)
* Add Eastron SDM630 energy meter by Gennaro Tortone (#2735)
* Add KNX communication enhancement by Adrian Scillato (#2742)
* Add KNX energy data by Adrian Scillato (#2750)
* Add rule support for IrReceive and RfReceive (#2758)
* Add python script fw-server.py in tools folder to create a simple OTA server by Gennaro Tortone (#2759)
* Add rule variables %time% for minutes since midnight, %uptime%, %sunrise% and %sunset% giving time in minutes (#2669)
* Add rules %mem1% to %mem5% variable names storing data in flash (#2780)
* Add rules test on %varx% or %memx% (#2780)
* Add optional token %id% substituting the unique MAC address to fulltopic by Michael Graf (#2794)
* Add support for Sonoff S26 Smart Socket (#2808)
* Add command WebSend [<host>(:<port>,<user>:<password>)] <command> (#2821)
* Add increment and decrement value to command Counter (#2838)
* Add support for Sonoff iFan02 as module 44 introducing command FanSpeed 0..3 (#2839)
* Add source information to command execution to be shown with logging option 3 (#2843)
* Add support for uploading Sonoff Bridge firmware found in tools/fw_efm8bb1 folder build by Portisch using Web Gui File Upload (#2886)
* Add command RfRaw to control Portisch firmware features
* Add support for I2C temperature sensor LM75AD (#2909)
* Add option 0 to command Timers disarming all timers (#2962)
* Add performance improvement when updating multiple individual WS2812 pixels (#3007)
* Add command SetOption28 to switch between hex or decimal Sonoff Bridge RF received data format (#3008)
* Add command SetOption29 to switch between hex or decimal IR received data format
* Add decimal values support for commands ADD, SUB, MULT and SCALE (#3083, #3089)
* Add support for bitflags SetOption50 .. SetOption81 (#3118)
*
* 5.14.0 20180515
* Update language files
* Update TasmotaSerial to 2.0.0 allowing Hardware Serial Fallback when correct connections are configured
* Change command handling
* Change user_config(_override).h defines TIME_STD and TIME_DST
* Change user_config(_override).h otaurl to http://sonoff.maddox.co.uk/tasmota/sonoff.bin (#2588, #2602)
* Fix configuration restore regression from 5.13.1
* Fix compile error when ADC is enabled and Rules are disabled (#2608)
* Fix rule power trigger when no backlog command is used (#2613)
* Fix several timer data input and output errors (#2597, #2620)
* Fix KNX config error (#2628)
* Fix sensor MHZ-19 vanishing data over time (#2659)
* Fix KNX reconnection issue (#2679)
* Fix DST and STD time for Southern Hemisphere by Adrian Scillato (#2684, #2714)
* Add Portuguese in Brazil language file
* Add SetOption26 to enforce use of indexes even when only one relay is present (#1055)
* Add support for sensor SI1145 UV Index / IR / Visible light (#2496)
* Add rule state test for On/Off in addition to 0/1 (#2613)
* Add hardware serial option to MHZ-19 sensor (#2659)
* Add Eastron SDM120 energy meter by Gennaro Tortone (#2694)
* Add user entry DST/STD using commands TimeStd and TimeDst (See wiki for parameter syntax) (#2721)
*
* 5.13.1 20180501
* Fix JSON buffers size too small for execution in some situations (#2580)
* Fix configuration restore (#2591)
* Add define MODULE for user selecting default model although it preferably should not be changed (#569, #2589)
*
* 5.13.0 20180430
* Change platformio option sonoff-ds18x20 to sonoff-allsensors enabling ds18x20 and all other sensors in one image
* Change status display of Ssid and SetOption
* Change default option SetOption15 from 0 to 1 providing better initial PWM experience
* Change webpage parameter communication
* Change max number of commands in Backlog from 15 to 30 and ignore commands overflowing
* Change TSL2561 driver to joba library and delete Adafruit library (#1644)
* Change default parameters in user_config.h to undefined for easy installation (#1851)
* Change max user configurable hold time from 10 to 25 seconds (#1851)
* Change Sonoff SC JSON format (#1939)
* Change Polish language to using Diacritics (#2005)
* Change user_config_override usage by providing user_config_override_sample.h (#2228)
* Change MQTT response topic for Energy changes from ENERGY to SENSOR (#2229, #2251)
* Change default Reset configuration time from 4 seconds to 40 seconds on Button hold (#2268)
* Change ESP8266 Analog JSON message from {"Analog0:123"} to {"ANALOG":{"A0:123"}} to accomodate rules (#2560)
* Change Counter JSON message from {"Counter1":0,"Counter3":0} to {"COUNTER":{"C1":0,"C3":0}} to accomodate rules
* Change ADS1115 JSON message from {"ADS1115":{"Analog0":123,"Analog1":123}} to {"ADS1115":{"A0":123,"A1":123}}
* Fix intermittent exception when dns lookup is used while sleep is enabled
* Fix 5.4.0 regression turning off single press after button hold during 4x hold time
* Fix possible wifi connection problem by erasing sdk configuration parameters
* Fix NTP sync to Thu Jan 01 08:00:10 1970 results in uptime 17651+ days (core2.4.1/sdk2.2.1)
* Fix MAX31850 higher temperatures (#1269)
* Fix freeing more code space when emulation is disabled (#1592)
* Fix providing web page configuratin option for Friendly Name when no device (relay or light) is configured (#1850)
* Fix compile error when define HOME_ASSISTANT_DISCOVERY_ENABLE is not set (#1937)
* Fix MQTT TLS fingerprint validation (#2033)
* Fix update temperature on DS18x20 drivers (#2328)
* Fix compile error when not defined USE_TIMERS (#2400)
* Fix configuration filename truncation when it contains spaces (#2484, #2490)
* Fix Energy Today and Yesterday overflow (#2543)
* Add serial debug info
* Add Portuguese language file
* Add Czech language file
* Add Bulgarian language file
* Add Domoticz dust (custom) sensors to PMS5003 and NovaFitness SDS drivers as PM1, PM2.5 and PM10
* Add commands Publish, Rule, RuleTimer and Event. See Wiki about Rule restriction, usage and examples
* Add sonoff-classic, sonoff-allsensors and sonoff-knx
* Add some coloring to important web buttons
* Add support for sensor HC-SR04 ultrasonic (#113, #1964, #2444)
* Add define MQTT_TELE_RETAIN compile option default set to 0 (#1071)
* Add 16 timers using commands Timer and Timers (#1091)
* Add optional Timer configuration webpage to be enabled in user_config.h with define USE_TIMERS_WEB
* Add Multichannel Gas sensor using MultiChannel_Gas_Sensor library (#1245)
* Add Domoticz Battery and RSSI Quality (#1604)
* Add command HSBColor Hue,Sat,Bri (#1642, #2203)
* Add compile time support for WS2812 BRG and RBG led configurations to be defined in user_config.h (#1690)
* Add optional usage of %d or %X suffices in MQTT client to append chipid (#1871)
* Add optional usage of %d or %X suffices in MQTT topic to append chipid (#1871)
* Add optional usage of %d or %04d in ota url to be replaced with chipid (#1871)
* Add Sonoff Bridge command RfKey<x> 5 to show current RF key values either default or learned (#1884)
* Add user configurable serial GPIOs to MagicHome and Arilux modules (#1887)
* Add Russian language file (#1909)
* Add Webserver upload preflight request support (#1927)
* Add Home Assistant clear other device (#1931)
* Add Restart time to Status 1 (#1938)
* Add optional TSL2561 driver using library Joba_Tsl2561 to be enabled in user_config.h with define USE_TSL2561_JOBA (#1951)
* Add support for sensor SHTC3 (#1967)
* Add compiler check for stable lwIP version v1.4 (#1940)
* Add support for multiple SHT3X sensors (#1949, #2110)
* Add always suffix with device number in Mqtt discovery topic (#1962)
* Add support for optional MQTT drivers to be selected in user_config.h (#1992)
* Add optional Arduino OTA support to be enabled in user_config.h (#1998)
* Add diacritics to Polish language file (#2005)
* Add Hungarian language file (#2024)
* Add support for Nova Fitness SDS011 and possibly SDS021 particle concentration sensor (#2070)
* Add single decimal precision to Nova Fitness SDS0x1 sensor values (#2093)
* Add Chinese (Traditional) in Taiwan language file (#2108)
* Add Sonoff SC domoticz support for Sound level as Counter and Air quality (#2118)
* Add a second TLS fingerprint to allow switching keys in TLS mode (#2033, #2102)
* Add display of remaining pulse time to command PulseTime (#2085)
* Add additional time offset to Wifi Retry based on device mac address (#2089)
* Add command Color6 RRGGBB for Clock hour marker color and command Rotation pixels for Clock rotation (#2092)
* Add HTML language header in local language (#2123)
* Add command PowerDelta 0..100 (percentage) to Energy monitoring devices to report on active power load change (#2157)
* Add Restart Reason to Status 1 report (#2161)
* Add command Channel 0..100 to control dimmer value for individual color channels (#2111, #2203)
* Add support for Hardware Serial bridge using commands SerialDelimiter, Baudrate and SerialSend. Supports 8N1 and text only (#2182)
* Add support for Software Serial bridge using commands SerialDelimiter, SBaudrate and SSerialSend. Supports 8N1 and text only (#2190)
* Add support for Zengge WF017 PWM Led strip controller (#2202)
* Add PWM status to command State if PWM enabled (#2203)
* Add all FriendlyNames to Status information (#2208)
* Add Channel status information (#2211)
* Add hexadecimal Data entry to command IrSend using 0x notation (#1290, #2314)
* Add Home Assistant MQTT Discovery for Buttons and change SetOption19 response (#2277)
* Add multiple color entry support for command Led like Led2 120000 001200 000012 setting led2 as Red, Led3 as Green and Led4 as Blue (#2303)
* Add hexadecimal RGB color entry on RGBCW leds (#2304)
* Add support for SGP30 gas and air quality sensor (#2307)
* Add optional Sunrise and Sunset timers with commands Latitide and Longitude to be enabled with define USE_SUNRISE in user_config.h (#2317)
* Add timer sunrise and sunset offset (#2378)
* Add user selectable defines for Sunrise/set Dawn option (#2378)
* Add optional KNX IP Protocol Support (#2402)
* Add random window to timers (#2447)
* Add Greek language file (#2491)
* Add support for Sonoff Pow R2 (#2340)
* Add GPIO_User to GPIO02 for all Sonoff T1 (#2524)
*
* 5.12.0 20180209
* Change library PubSubClient.h define MQTT_MAX_PACKET_SIZE from 512 to 1000 for Home Assistant support
* Change relation of define MESSZ being dependent on PubSubClient.h define MQTT_MAX_PACKET_SIZE
* Change command color parameter input checks to less strict for Home Assistant support
* Change command Ina219Mode into command Sensor13
* Change commands HlwPCal, HlwUCal and HlwICal to PowerCal, VoltageCal and CurrentCal to be used for both Pow and S31 calibration
* Change commands HlwPSet, HlwUSet and HlwISet to PowerSet, VoltageSet and CurrentSet to be used for both Pow and S31 calibration
* Change uptime from hour to second resulting in a display of 123T13:45:21 where 123 is days
* Change module name Wemos D1 mini into Generic (#1220)
* Change HTML from width=100% to style=width:100% supporting HTML5 (#1358)
* Change OSWATCH_RESET_TIME (Blocked loop) from 30 to 120 seconds to allow slow networks (#1556)
* Change WIFI_MANAGER_SEC into WIFI_CONFIG_SEC (#1616)
* Change function pointers code to save code space and memory (#1683)
* Change webserver argument processing gaining 5k code space (#1705)
* Change weblog memory usage (#1730, #1793, #1819)
* Update TasmotaSerial library to 1.1.0
* Update language files Italian (#1594), Dutch (#1723) and Spanish (#1722)
* Fix Non-English JSON temperature unit attachement
* Fix Arilux RF induced exception by moving interrupt handler to iram on non ESP8266/Arduino lib v2.3.0
* Fix truncated command names and wrong response for DomoticzSwitchIdx (#1571)
* Fix %-sign issue as printf escape character in Humidity and Sonoff SC (#1579)
* Fix DS18B20 temperature JSON decimal dot (#1561)
* Fix Energy JSON message (#1621)
* Fix IRSend parameter translation (#1636)
* Fix TSL2561 device detection (#1644, #1825)
* Fix BME680 teleperiod resistance measuring (#1647)
* Fix Energy Monitoring Energy Today and Energy Total reading after restart (#1648)
* Fix IRReceive Data value (#1663)
* Fix Energy Monitoring Energy Period roll-over (#1688)
* Fix compiler warnings (#1774)
* Fix command PWM response if no PWM channel is configured (#1783)
* Add locale Decimal Separator to Web sensor page
* Add ColorTemperature to light status message
* Add command PowerOnState option 5 which inverts PulseTime and allows for delayed always on after power on
* Add OtaMagic two step Web server OTA upgrade using filename-minimal image if OTA free space is too small
* Add support for PMS5003 and PMS7003 particle concentration sensor
* Add command SetOption21 1 to allow Energy Monitoring when power is off on Sonoff Pow and Sonoff S31 (#1420)
* Add Chinese language file (#1551)
* Add French language file (#1561)
* Add Spanish language file (#1589)
* Add HTTP Allow Cross Origin removed from ESP8266/Arduino lib v2.4.0 (#1572)
* Add Home Assistant MQTT Discovery for switch and light to be enabled by command SetOption19 1 (#1534) or define HOME_ASSISTANT_DISCOVERY_ENABLE in user_config.h (#1685)
* Add command State to retrieve device state information (same data as teleperiod state and status 11 in slightly different JSON format)
* Add optional login to Webserver AP mode (#1587, #1635)
* Add command Sensor15 2 to start MHZ19(B) Zero Point Calibration (#1643)
* Add support for Sonoff S31 Smart Socket with Power Consumption Detection (#1626)
* Add command SetOption20 to allow update of Dimmer/Color/Ct without turning power on (#1719, #1741)
* Add NTP sync time slot based on chip id (#1773)
* Add cursor pointer to web button (#1836)
*
* 5.11.1 20180107
* Fix Sonoff Pow command handling (#1542)
*
* 5.11.0 20180107
* Minor webpage HTML optimizations (#1358)
* Updated German translation (#1438)
* Change Sonoff Pow Energy MQTT data message and consolidate Status 8 into Status 10
* Change ADS1115 default voltage range from +/-2V to +/-6V (#1289)
* Change text to Active for 3 minutes (#1364)
* Change Wemo SetBinaryState to distinguish from GetBinaryState (#1357)
* Change output of HTTP command to valid JSON and Array only (#1363)
* Removed all MQTT, JSON and Command language defines from locale files and set fixed to English (#1473)
* Renamed commands Color2,3,4 to Color3,4,5
* Fix BME280 calculation (#1051)
* Fix Sonoff Bridge missed learned key if learned data contains 0x55 (End of Transmission) flag (#1095, #1294)
* Fix PWM initialization in Dimmer/Color mode (#1321)
* Fix Wemo Emulation (#1357)
* Fix display of build date and time in non-english locale (#1465)
* Fix Wemo and Hue emulation by adding M-Search response delay (#1486)
* Add libraries Adafruit_BME680-1.0.5, Adafruit_Sensor-1.0.2.02, TasmotaSerial-1.0.0 and TSL2561-Arduino-Library
* Add command Color2 to set color while keeping same dimmer value
* Add device function pointers
* Add support for SenseAir S8 CO2 sensor
* Add color led signal to Carbon Dioxide (CO2) sensors using defines CO2_LOW and CO2_HIGH in user_config.h
* Add support for Domoticz Air Quality sensor to be used by MH-Z19(B) and SenseAir sensors
* Add support for PZEM004T energy sensor
* Add support for iTead SI7021 temperature and humidity sensor by consolidating DHT22 into AM2301 and using former DHT22 as SI7021 (#735)
* Add support for BME680 using adafruit libraries (#1212)
* Add support for MH-Z19(B) CO2 sensor (#561, #1248)
* Add multipress support and more user configurable GPIO to Sonoff Dual R2 (#1291)
* Add support for TSL2561 using adafruit library (#661, #1311)
* Add support for SHT3x (#1314)
* Add support for Arilux LC06 (#1414)
* Add Italian language file (#1449)
* Add 2nd Gen Alexa support to Wemo emulation discovery (#1357, #1450)
* Add define for additional number of WS2812 schemes (#1463)
*
* 5.10.0 20171201
* Upgrade library ArduinoJson to 5.11.2
* Upgrade library IRRemoteEsp8266 to 2.2.1 + 2 commits but disabled some protocols (code size reduction)
* Upgrade library NeoPixelBus to 2.2.9
* Upgrade library OneWire to 2.3.3 + 6 commits and disabled CRC lookup-table (#define ONEWIRE_CRC8_TABLE 0) (code size reduction)
* Update library PubSubClient to 2.6 + 9 commits and additional delay (#790)
* Update core_esp8266_wiring_digital.c to latest (staged) level
* Patch library I2Cdevlib-Core for esp8266-core 2.4.0-rc2 compatibility
* Remove command EnergyReset 1..3 now replaced by EnergyReset1 to EnergyReset3
* Remove spaces in JSON messages (code size reduction)
* Renamed xsns_05_ds18x20.ino to xsns_05_ds18x20_legacy.ino still using library OneWire and providing dynamic sensor scan
* Fix possible iram1_0_seg compile error by shrinking ICACHE_RAM_ATTR code usage
* Fix PWM watchdog timeout if Dimmer is set to 100 or Color set to 0xFF (#1146)
* Fix Sonoff Bridge Learn Mode hang caused by unrecognised RF code (#1181)
* Fix blank console log window by using XML character encoding (#1187)
* Fix wrong response name for command HlwISet (#1214)
* Fix DHT type sensor timeout recognition by distinguish "signal already there" from "timeout" (#1233)
* Add fixed color options 1..12 to command Color
* Add + (plus) and - (minus) to commands Dimmer (+10/-10), Speed and Scheme
* Add + (plus) and - (minus) to command Color to select 1 out of 12 preset colors
* Add + (plus) and - (minus) to command Ct to control ColdWarm led ColorTemperature (+34/-34)
* Add commands EnergyReset1 0..42500, EnergyReset2 0..42500 and EnergyReset3 0..42500000
* to (Re)set Energy Today, Yesterday or Total respectively in Wh (#406, #685, #1202)
* Add optional ADS1115 driver as alternative for unsupported I2Cdevlib in esp8266-core 2.4.0-rc2
* Add support for INA219 Voltage and Current sensor to be enabled in user_config.h with define USE_INA219
* Add support for Arilux LC11 (Clearing RF home code when selecting no Arilux module)
* Add support for WS2812 RGBW ledstrips to be enabled in user_config.h with define USE_WS2812_CTYPE (#1156)
* Add SettingsSaveAll routine to command SaveData to be used before controlled power down (#1202)
* Add option PUSHBUTTON_TOGGLE (SwitchMode 7) to allow toggling on any switch change (#1221)
* Add new xdrv_05_ds18x20.ino free from library OneWire and add the following features:
* Add support for DS1822
* Add forced setting of 12-bit resolution for selected device types (#1222)
* Add read temperature retry counter (#1215)
* Fix lost sensors by performing sensor probe at restart only thereby removing dynamic sensor probe (#1215)
* Fix sensor address sorting using ascending sort on sensor type followed by sensor address
* Rewrite JSON resulting in shorter message allowing more sensors in default firmware image:
* "DS18B20-1":{"Id":"00000483C23A","Temperature":19.5},"DS18B20-2":{"Id":"0000048EC44C","Temperature":19.6}
* Add additional define in user_config.h to select either single sensor (defines disabled), new multi sensor (USE_DS18X20) or legacy multi sensor (USE_DS18X20_LEGACY)
* Add clock support for more different pixel counts (#1226)
* Add support for Sonoff Dual R2 (#1249)
* Add FriendlyName to web page tab and add program information to web page footer (#1275)
*
* 5.9.1 20171107
* Add external sensor function pointer interface to enable easy sensor addition
* Add support for ADS1115 to be enabled in user_config.h and needs libraries i2cdevlib-Core and i2cdevlib-ADS1115 (#338, #660)
* Fix Backup Configuration file download failure by defining proper file size (#1115)
* Fix Exception 26 and empty console screen after usage of command WakeupDuration (#1133)
* Fix some changed iTead web links in README.md (#1137)
*
* 5.9.0 20171030
* Rewrite code (partly) using Google C++ Style Guide (https://google.github.io/styleguide/cppguide.html)
* Rewrite code by using command lookup tables and javascript (client side) web page expansions
* Change HTML/CSS to enable nicer form field entry
* Change default PWM assignments for H801 RGB(CW) led controller to support optional Color/Dimmer control
* GPIO04 (W2) from GPIO_PWM2 to GPIO_USER to be user configurable for GPIO_PWM5 (second White - Warm if W1 is Cold)
* GPIO12 (Blue) GPIO_PWM3 no change
* GPIO13 (Green) from GPIO_PWM4 to GPIO_PWM2
* GPIO14 (W1) from GPIO_PWM1 to GPIO_USER to be user configurable for GPIO_PWM4 (first White - Cold or Warm)
* GPIO15 (Red) from GPIO_PWM5 to GPIO_PWM1
* Change default PWM assignments for MagicHome RGB(W) led controller to support optional Color/Dimmer control
* GPIO05 (Green) from GPIO_PWM4 to GPIO_PWM2
* GPIO12 (Blue) from GPIO_PWM5 to GPIO_PWM3
* GPIO13 (White) GPIO_USER to be user configurable for GPIO_PWM4 (White - Cold or Warm)
* GPIO14 (Red) from GPIO_PWM3 to GPIO_PWM1
* Change default PWM assignment for Witty Cloud to support optional Color/Dimmer control (#976)
* GPIO12 (Green) from GPIO_PWM4 to GPIO_PWM2
* GPIO13 (Blue) from GPIO_PWM5 to GPIO_PWM3
* GPIO15 (Red) from GPIO_PWM3 to GPIO_PWM1
* Change when another module is selected now all GPIO user configuration is removed
* Change command name IRRemote to IRSend (#956)
* Remove Arduino IDE version too low warning as it interferes with platformio.ini platform = espressif8266_stage
* Fix command FullTopic entry when using serial or console interface
* Fix possible UDP syslog blocking
* Fix minimum TelePeriod of 10 seconds set by web page
* Fix command GPIOx JSON response (#897)
* Fix inverted relay power on state (#909)
* Fix compile error when DOMOTICZ_UPDATE_TIMER is not defined (#930)
* Fix alignment of web page items in some browsers (#935)
* Fix setting all saved power settings to Off when SetOption0 (SaveState) = 0 (#955)
* Fix timezone range from -12/12 to -13/13 (#968)
* Fix Southern Hemisphere TIME_STD/TIME_DST (#968)
* Fix TLS MQTT SSL fingerprint test (#970, #808)
* Fix virtual relay status message used with Color/Dimmer control (#989)
* Fix command IRSend and IRHvac case sensitive parameter regression introduced with version 5.8.0 (#993)
* Fix pressure calculation for some BMP versions regression introduced with version 5.8.0i (#974)
* Fix Domoticz Dimmer set to same level not powering on (#945)
* Fix Blocked Loop when erasing large flash using command reset 2 (#1002)
* Fix relay power control when light power control is also configured as regression from 5.8.0 (#1016)
* Fix Mqtt server mDNS lookup only when MqttHost name is empty (#1026)
* Add debug information to MQTT subscribe
* Add translations to I2Cscan
* Add translation to BH1750 unit lx
* Add light scheme options (Color cycle Up, Down, Random) and moving WS2812 schemes up by 3
* Add Domoticz counter sensor to IrReceive representing Received IR Protocol and Data
* Add option 0 to MqttHost to allow empty Mqtt host name
* Add support for Arilux AL-LC01 RGB Led controller (#370)
* Add esp8266 de-blocking to PubSubClient library (#790)
* Add Domoticz sensors for Voltage and Current (#903)
* Add platformio OTA upload support (#928, #934)
* Add warning to webpage when USE_MINIMAL is selected (#929)
* Add smoother movement of hour hand in WS2812 led clock (#936)
* Add support for Magic Home RGBW and some Arilux Led controllers (#940)
* Add command SetOption15 0 (default) for command PWM control or SetOption15 1 for commands Color/Dimmer control to PWM RGB(CW) leds (#941)
* Add Domoticz counter sensor to Sonoff Bridge representing Received RF code (#943)
* Add support for Luani HVIO board (https://luani.de/projekte/esp8266-hvio/) (#953)
* Add PWM initialization after restart (#955)
* Add IR Receiver support. Disable in user_config.h (#956)
* Add support for inverted PWM (#960)
* Add Sea level pressure calculation and Provide command Altitude (#974)
* Add support for up to 8 relays (#995)
* Add commands RfSync, RfLow, RfHigh, RfHost and RfCode to allow sending custom RF codes (#1001)
* Add retain to ENERGY messages controlled by command SensorRetain (#1013)
* Add commands Color2, Color3, Color4, Width2, Width3, Width4 and SetOption16 to set Ws2812 Clock parameters (#1019)
* Add German language file (#1022)
* Add support for connecting to MQTT brokers without userid and/or password (#1023)
* Add support for esp8266 core v2.4.0-rc2 (#1024)
* Add commands PwmRange 1,255..1023 and PwmFrequency 1,100..4000 (#1025)
* Add Polish language file (#1044, #1047)
* Add support for KMC 70011 Power Monitoring Smart Plug (#1045)
* Add support for VEML6070 I2C Ultra Violet level sensor (#1053)
* Add light turn Off Fade (#925)
* Add IrSend command option Panasonic as IrSend {"Protocol":"Panasonic", "Bits":16388, "Data":<Panasonic data>}
* where 16388 is 0x4004 hexadecimal (#1014)
* Add retry counter to DHT11/21/22 sensors (#1082)
*
* 5.8.0 20170918
* Remove the need for NeoPixelBus library for Hue support
* Consolidate WS2812 into Sonoff Led for flexible future led strip library changes
* Invert WS2812 fade speed to align with Sonoff led (Speed 1 = fast, Speed 8 = slow)
* Remove upper case MQTT receive buffer
* Reduce code and string length for output of commands Modules and GPIOs
* Add Sonoff SC debug information
* Change syslog service
* Removed webserver syslog disable as now no longer needed
* Increased default MQTT message size from 368 to 405 bytes while keeping MQTT_MAX_PACKET_SIZE = 512 (because we can)
* Fix MQTT Offline or Remove MQTT retained topic code
* Fix Domoticz loop when Emulation is selected
* Add blink to WS2812 and Sonoff Led (#643)
* Add option WIFI_WAIT (5) to command WifiConfig to allow connection retry to same AP without restart or update flash (#772, #869)
* Add support for Witty Cloud (#794)
* Add GPIO14 to Sonoff Dual (#797, #839)
* Add support for Yunshan Wifi Relay (#802)
* Add GPIO16 input pulldown (#827)
* Add timeout to DHT and DS18B20 sensors (#852)
* Fix watchdog timeout caused by lack of stack space by moving to heap (#853)
* Allow LogPort and MqttPort up to 65535 and add LogPort tot Status 3 (#859)
* Allow command SwitchTopic in group mode (#861)
* Allow command SwitchMode if no switches are defined (#861)
* Add optional dimmer parameter to command Wakeup for WS2812, AiLight, Sonoff B1, Led and BN-SZ01 (#867)
* Fix basic On, Off, Toggle, Blink and BlinkOff commands when other language is selected (#874)
*
* 5.7.1 20170909
* Remove leading spaces from MQTT data
* Fix webconsole special character entry
* Allow # as prefix for color value
* Fix Alexa detection and Hue App Update Request (#698, #854)
*
* 5.7.0 20170907
* Shrink module configuration webpage
* Fix settings order during startup to allow for displaying debug messages
* Fix some string length issues
* Add more string length tests by using strncpy
* Add Ai-Thinker RGBW led (AiLight)
* Add Power check and add PulseTime to power check at startup (#526)
* Add Supla Espablo support (#755)
* Add more precision to Sonoff Pow period and power results using command WattRes 0|1 (#759)
* Add basic internationalization and localization (#763)
* Add more Sonoff Pow range checking (#772)
* Fix invalid JSON (#786, #822)
* Add duplicate check to received RF signal within 2 seconds for Sonoff Bridge (#810)
*
* 5.6.1 20170818
* Change module list order in webpage
* Fix Sonoff T1 1CH and 2CH configuration (#751)
*
* 5.6.0 20170818
* Fix Sonoff Pow intermittent exception 0
* Change Sonoff Pow sending Domoticz telemetry data only
* Add Ai-Thinker RGBW led (AiLight) (experimental)
* Add NeoPixelBus library to Sonoff Led for Hue support
* Add user configurable GPIO4 and GPIO5 to module Sonoff Bridge
* Add Sonoff B1 RGBCW led support with command Color RRGGBBCCWW (#676)
* Add command CT 152..500 to Sonoff Led and Sonoff B1 to control Color Temperature
* Add Cold-Warm slider to web page for Sonoff Led and Sonoff B1
* Add CT parameter to Hue
* Add Sonoff T1 support (#582)
* Add AnalogInput0 if configured as Analog Input to webpage (#697, #746)
* Add command SetOption14 0|1 to enable interlock mode (#719, #721)
* Fix Mitsubishi HVAC IR power controll (#740)
*
* 5.5.2 20170808
* Extent max number of WS2812 pixels from 256 to 512 (#667)
* Add OTA handling if server responds with no update available (#695)
* Removed undocumented command FlashMode (#696)
* Fix compile time error message due to increased message buffer size (#703)
*
* 5.5.1 20170805
* Fix Sonoff Rf Bridge issues
* Add Sonoff RF Bridge MQTT messages on received and learned RF signal
* Add command VoltRes 0|1 to select voltage resolution to 0.1 V (#654)
* Add averaging to Analog input (#686)
* Add Energy tele data on Sonoff Pow Threshold change (#688)
* Fix inconsistent property names in Messages (#690)
*
* 5.5.0 20170730
* Reduce code space by removing the following commands as they are replaced by SetOption alternatives:
* SaveState = SetOption0
* ButtonRestrict = SetOption1
* Units = SetOption2
* MQTT = SetOption3
* MQTTResponse = SetOption4
* TempUnit = SetOption8
* Smoothing WS2812 animation poll, invert fade speed and max allowed wakeup time down to 3000 seconds
* Fix initial button press detection
* Add support for Sonoff RF Bridge 433 using command RfKey
* Fix regression from 5.0.7 by increasing message buffer size from 360 to 368 to accomodate 4 x DS18x20 sensors (#637)
* Add GroupTopic to Topic test when using ButtonTopic/SwitchTopic to send either ON/OFF or TOGGLE (#642)
* Adjust HLW calibration limits to accomodate HuaFan device and add commands HlwPSet, HlwUSet and HlwISet (#654)
*
* 5.4.0 20170725
* Fix command reset regression introduced in 5.2.0
* Increase polling from 0.1 second to 0.05 second
* Add multipress to all buttons
* Fix button 1 double press behaviour on multi relay devices
* Add support for Hua Fan Smart Socket (#479)
* Add support for Sonoff 4ch Pro (#565)
* Add command SetOption13 1 to allow immediate action on single button press
* (disables multipress, hold and unrestricted commands) (#587)
*
* 5.3.0 20170715
* Major Hue rewrite which might introduce Alexa problems. If so, initiate an issue
* Add support for Sonoff Led and BN-SZ01 Ceiling Led brightness control to Hue
* Fix Sonoff Led Power, Dimmer and Color MQTT response (#176)
* Add commands Delay and Backlog to allow multiple commands at once separated by ";" (#593)
* Use default flashmode DOUT to solve restart hangs on esp8285 chips (#453, #598)
* Change Web console column width from 99 to 300 (#599)
*
* 5.2.4 20170703
* Removed flash mode update after selecting different module solving esp8285 related problems
* Add device type flag to sonoff_template.ino
* Change Sonoff Led Wakeup and add support for Sonoff BN-SZ01 Led (#567)
*
* 5.2.3 20170630
* Change Sonoff Led color conversion code
* Fix SetOption12 handling
* Simplify auto configuration upgrade
* Add option Upgrade <version_number> to only upgrade to any higher version (Old PR #213)
* Change FallbackTopic to cmnd/<MQTTClient>/<command> <parameter> bypassing FullTopic and Prefix (#538)
*
* 5.2.2 20170625
* Add configuration SaveAddress to Status 1 and Information Page
* Change Sonoff Led Color conversion from AtoH to strtol
* Fix possible wrong uploads due to configuration overwrites (#542)
* Fix payload negative numbers (#547)
*
* 5.2.1 20170622
* Fix Restore Configuration in case of lower version
* Revert auto configuration upgrade allowing easy upgrade which was removed in version 5.2.0
* Fix config auto upgrade from versions below version 4.1.1 (#530)
*
* 5.2.0 20170619
* Add command SetOption12 1 to disable newly released configuration flash rotate to reduce flash wear
* Fix command CounterDebounce by removing test for active GPIO (#524)
* Add command SetOption33 1..250 to allow user configure POW Max_Power_Retry count (#525)
*
* 5.1.7 20170616
* Prep removal of SetOptions alternatives
* Restore webpage upgrade error messages removed in 5.1.5
* Add hold button functionality to buttons 2 to 4
* Add command SetOption32 1..100 to set Key Hold Time from 0.1 seconds to 10 seconds (#200)
* Allow slashes in Topic, GroupTopic, ButtonTopic and SwitchTopic (#507)
* Changed webpage form actions from post to get and use relative path url (#434, #522)
*
* 5.1.6 20170606
* Shrink code
* Removed online configuration of Domoticz In and Domoticz Out MQTT strings
* Removed commands DomoticzInTopic and DomoticzOutTopic
* Add define KEY_HOLD_TIME to configure button hold threshold before sending MQTT Hold message
* Add command StateText4 to configure button MQTT Hold text (= MQTT_CMND_HOLD)
* Add command SetOption11 0|1 to swap pushbutton single and double press functionality (#200)
* Add command SwitchMode<x> 5 (PUSHBUTTONHOLD) and 6 (PUSHBUTTONHOLD_INV) (#489)
*
* 5.1.5 20170604
* Shrink code in preparation to ESP8266-Arduino 2.4.0-rc1
* Add effect parameter to HUE Device (#464)
*
* 5.1.4 20170601
* Removed pre-compiled versions from repository as they are available within the release
* Changed HUE Device type to color supporting version (#464)
* Fix compile error when BE_MINIMAL is selected (#467, #476)
* Add multiple compiled versions to release using updated Travis script and platformio.ini (#467)
*
* 5.1.3 20170520
* Add Domoticz Counter
*
* 5.1.2 20170519
* Fix Counter/Timer JSON message and update Counter/Timer on webpage
* Fix WS2812 Domoticz related regression issues
*
* 5.1.1 20170517
* Allow command FullTopic in group mode
* Prepare for more use of RTC memory
* Add independant WS2812 led string power control (#386, #390)
* Add command Counter<x> to control up to four GPIO falling edge interrupt counters or timers (#459)
* Add command CounterType<x> to select between pulse counting or pulse timing
* Add command CounterDebounce to select global counter debounce time in mSec
*
* 5.1.0 20170513
* Fix Offline/Removal of retained topic when FullTopic is changed
* Add FullTopic to MQTT Configuration and Information web pages
* Add license model GPLv3 (#188)
*
* 5.0.7 20170511
* Fix possible exception 28 on empty command
* Add command SetOption0 as replacement for SaveState
* Add command SetOption1 as replacement for ButtonRestrict
* Add command SetOption2 as replacement for Units
* Add command SetOption4 as replacement for MqttResponse
* Add command SetOption8 as replacement for TempUnit
* Add command SetOption10 On|Off to select between Offline or Removing previous retained topic (#417, #436)
*
* 5.0.6 20170510
* Remove hyphen in case of a single DHT sensor connected (#427)
* Add command MqttRetry <seconds> to change default MQTT reconnect retry timer from minimal 10 seconds (#429)
*
* 5.0.5 20170508
* Add command FullTopic with tokens %topic% (replaced by command Topic value) and
* %prefix% (replaced by command Prefix<x> values) for more flexible topic definitions (#244)
* See wiki > MQTT Features https://github.com/arendst/Sonoff-Tasmota/wiki/MQTT-Features for more information
*
* 5.0.4 20170505
* Add Sonoff Pow Energy Total up to 40 MWh
* Add command EnergyReset 1|2|3 to reset Energy counters (#406)
* Fix Domoticz Energy logging (#411)
* Add command PowerOnState 4 to keep relay always on and disabling all power control (#418)
*
* 5.0.3 20170504
* Add command SensorRetain on|off to enable retaining of mqtt message tele/sonoff/SENSOR (#74)
* Change WifiConfig timeout from 60 seconds to 180 seconds (#212)
* Change Sonoff Touch command Ledstate functionality by turning led on if power is off (#214)
* Add 4 seconds delay after power on before enabling button to workaround Wemos D1 mini RTS circuit (#380)
*
* 5.0.2 20170503
* Reset SaveData, SaveState and MqttResponse to default values due to rearranging settings
* Moved some settings to flag area
* Add command TempUnit Celsius|Fahrenheit for selecting Celsius or Fahrenheit (#347)
* Add command TempRes 0..3 for selecting Temperature Resolution (#347)
* Add command HumRes 0..3 for selecting Humidity Resolution (#347)
* Add command PressRes 0..3 for selecting Pressure Resolution (#347)
* Add command EnergyRes 0..5 for selecting Energy Resolution (#347)
* Add "TempUnit":"C|F" to sensor JSON output (#347)
* Add support for up to three DHT type sensors each using a different GPIO (#339, #404)
*
* 5.0.1 20170429
* Adjust Sonoff SC messages to prepare for display feature
* Move static data from RAM to Flash
* Fix PowerOnState for some devices not reporting "Power on" state (#284, #380, #383)
*
* 5.0.0 20170425
* Memory status message update
* Fix setting migration to better preserve settings during move (#382)
* Best practice is first doing a Backup Configuration before installing version 5.0.0
* Reset save count after setting move
* Start using new linker script without SPIFFS
*
* 4.2.0 20170424
* Prepare for SPIFFS removal by moving settings to EEPROM area
* Fix compilation error when webserver is disabled (#378)
*
* 4.1.3 20170410
* Add user configuarble GPIO to module S20 Socket and Slampher
* Add support for Sonoff SC (#112)
* Set PWM frequency from 1000Hz to 910Hz as used on iTead Sonoff Led firmware (#122)
* Set Sonoff Led unconfigured floating outputs to 0 to reduce exceptions due to power supply instabilities (#122)
* Add Access Point Mac Address to Status 11 and Telemetry (#329)
* Fix DS18B20 negative temperature readings (#334)
*
* 4.1.2 20170403
* Rename Unrecognised command to Unknown command
* Remove all command lists
* Remove command SmartConfig (superseded by WifiConfig)
* Fix boot loop when selecting module Sonoff 4CH or Sonoff Touch on non ESP8285 hardware
* Add optional support for Toshiba and Mitsubishi HVAC IR control (needs updated IRremote8266 library) (#83, #257)
* Add all configured switches to Domoticz Configuration web page (#305)
* Fix compile error when selecting WS2812 DMA (#313)
*
* 4.1.1 20170329
* Fix default Telemetry for command Prefix3
* Fix webserver Module parameters for disabled select
* Fix sensor status for enabled switches
* Remove Light as alternative for Power (save code space)
* Remove migration option from pre V3 (code cleanup)