arendst / Tasmota

Alternative firmware for ESP8266 and ESP32 based devices with easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX. Full documentation at
https://tasmota.github.io/docs
GNU General Public License v3.0
22.04k stars 4.78k forks source link

TLS and LWiP 1.4 Sonoff Basic Status 0 cause crash #2845

Closed majherek closed 6 years ago

majherek commented 6 years ago

Hi,

I found that my sonoffs basic crashed if I use STATUS 0.

00:00:00 CFG: Use defaults
00:00:00 Project sonoff11 Sonoff 11 (Topic sonoff11, Fallback sonoff11, GroupTopic sonoffs) Version 5.13.1-2_4_1
00:00:00 WIF: Connecting to AP1 atomix in mode 11N as sonoff11...
00:00:04 WIF: Connected
00:00:05 MQT: Attempting connection...
00:00:05 MQT: Verify TLS fingerprint...
00:00:06 MQT: Verified using Fingerprint1
00:00:06 MQT: Connected
00:00:06 MQT: tele/sonoff11/LWT = Online (retained)
00:00:06 MQT: cmnd/sonoff11/POWER = 
00:00:06 MQT: tele/sonoff11/INFO1 = {"Module":"Sonoff Basic","Version":"5.13.1","FallbackTopic":"sonoff11","GroupTopic":"sonoffs"}
00:00:06 MQT: tele/sonoff11/INFO3 = {"RestartReason":"Power on"}
22:05:42 MQT: stat/sonoff11/RESULT = {"POWER":"OFF"}
22:05:42 MQT: stat/sonoff11/POWER = OFF
22:05:49 MQT: tele/sonoff11/STATE = {"Time":"2018-05-27T22:05:49","Uptime":"0T00:00:13","Vcc":3.358,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":74,"APMac":"06:8D:DB:DB:97:47"}}
22:05:53 CMD: STATUS 0
22:05:53 MQT: stat/sonoff11/STATUS = {"Status":{"Module":1,"FriendlyName":["Sonoff 11"],"Topic":"sonoff11","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"SaveData":1,"SaveState":1,"ButtonRetain":0,"PowerRetain":0}}
22:05:53 MQT: stat/sonoff11/STATUS1 = {"StatusPRM":{"Baudrate":115200,"GroupTopic":"sonoffs","OtaUrl":"http://sonoff-ota.majchrowski.waw.pl:8888/api/arduino/sonoff11.ino.bin","RestartReason":"Power on","Uptime":"0T00:00:17","StartupUTC":"2018-05-27T21:05:36","Sleep":0,"BootCount":1,"SaveCount":2,"SaveAddress":"3FA000"}}
22:05:53 MQT: stat/sonoff11/STATUS2 = {"StatusFWR":{"Version":"5.13.1","BuildDateTime":"2018-05-27T23:03:29","Boot":31,"Core":"2_4_1","SDK":"2.2.1(cfd48f3)"}}
22:05:53 MQT: stat/sonoff11/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":0,"SysLog":2,"LogHost":"192.168.199.251","LogPort":514,"SSId":["atomix","MAJCOMNET HTC"],"TelePeriod":60,"SetOption":["00008009","55818000"]}}
22:05:53 MQT: stat/sonoff11/STATUS4 = {"StatusMEM":{"ProgramSize":515,"Free":2556,"Heap":4,"ProgramFlashSize":4096,"FlashSize":4096,"FlashMode":3}}
22:05:53 MQT: stat/sonoff11/STATUS5 = {"StatusNET":{"Hostname":"sonoff11","IPAddress":"192.168.20.11","Gateway":"192.168.20.254","Subnetmask":"255.255.255.0","DNSServer":"192.168.199.251","Mac":"5C:CF:7F:72:0A:1E","Webserver":2,"WifiConfig":5}}
22:05:53 MQT: stat/sonoff11/STATUS6 = {"StatusMQT":{"MqttHost":"mqtt.majchrowski.waw.pl","MqttPort":8883,"MqttClientMask":"sonoff11","MqttClient":"sonoff11","MqttUser":"sonoff","MqttType":1,"MAX_PACKET_SIZE":1000,"KEEPALIVE":15}}
22:05:54 MQT: stat/sonoff11/STATUS7 = {"StatusTIM":{"UTC":"Sun May 27 21:05:53 2018","Local":"Sun May 27 22:05:53 2018","StartDST":"Sun Mar 25 02:00:00 2018","EndDST":"Sun Oct 28 03:00:00 2018","Timezone":1,"Sunrise":"03:24","Sunset":"19:41"}}
22:05:54 MQT: stat/sonoff11/STATUS10 = {"StatusSNS":{"Time":"2018-05-27T22:05:54"}}
22:05:54 MQT: stat/sonoff11/STATUS11 = {"StatusSTS":{"Time":"2018-05-27T22:05:54","Uptime":"0T00:00:18","Vcc":3.357,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":74,"APMac":"06:8D:DB:DB:97:47"}}}
22:06:12 MQT: Attempting connection...

Exception (29):
epc1=0x4022509c epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

ctx: cont 
sp: 3fff3d50 end: 3fff42f0 offset: 01a0

>>>stack>>>
3fff3ef0:  00000080 3fffbf94 3fffb544 40232867  
3fff3f00:  3fff87e4 3fffbf94 3fffb544 40233255  
3fff3f10:  3fff917c be793c72 d438b3cf 00000020  
3fff3f20:  3fffbf8c 3fffbf94 3fffbf74 00000020  
3fff3f30:  3fffbf8c 3fffbf94 00000010 4023354a  
3fff3f40:  3fff52dc 3fff9074 00000496 00000001  
3fff3f50:  00000001 3fffbf74 3fff688a 402322c4  
3fff3f60:  00000200 3fff902c 3fff6707 00000000  
3fff3f70:  00000200 3fff902c 3fff6707 40234649  
3fff3f80:  3fff3fb0 00000000 000001d0 00000030  
3fff3f90:  f7cc1954 3fff5f00 00000006 00000004  
3fff3fa0:  3fff6701 3fff62bc 3fff6701 4022f344  
3fff3fb0:  a3450303 4caa3164 59788c1f 685bc7e2  
3fff3fc0:  564e7f05 5bf7d7eb 05ad98c0 bea39c87  
3fff3fd0:  d175190e da000887 fde8d006 19543181  
3fff3fe0:  3fff6701 00000004 3fff62bc 4022f7d9  
3fff3ff0:  3fff52dc e158191f cda2843f 3fff609c  
3fff4000:  00000000 600011f0 3fff5efc 3fff609c  
3fff4010:  00000000 00000004 00000004 40218df8  
3fff4020:  0000002c 00000b6c 00000064 40220028  
3fff4030:  0000004a 00000000 0000002d 00000004  
3fff4040:  3fff6701 00000004 3fff62bc 00000004  
3fff4050:  3fff6701 00000004 3fff62bc 4022f14c  
3fff4060:  7d321a08 00000006 00000000 0000002e  
3fff4070:  00000063 3fff6701 3fff62bc 4022f528  
3fff4080:  00000017 3fff6734 3fff62bc 401004d8  
3fff4090:  3fff40e8 0000000e 00000010 3fff628c  
3fff40a0:  40218bac 3fff62bc 3fff40e0 01000000  
3fff40b0:  3fff40e8 0002270f 3fff62bc 4022f2b4  
3fff40c0:  40104ce4 3fff1dc1 3fff91a4 3fff628c  
3fff40d0:  3fff609c 0002270f 3fff91a4 40219591  
3fff40e0:  3fff62bc 3fff52c4 3fff30a8 4021fdd4  
3fff40f0:  00003a98 3fff4120 3fff1b14 402195d0  
3fff4100:  00000000 00000000 3fff609c 3fff41c0  
3fff4110:  000022b3 3fff1dc1 3fff1afc 402197df  
3fff4120:  00000000 00000000 3fff1dc1 3fff41c0  
3fff4130:  000022b3 3fff1afc 3fff1dc1 40219885  
3fff4140:  40107640 fbc7a8c0 40107640 fbc7a8c0  
3fff4150:  00000001 3fff1050 3fff0c50 4021b960  
3fff4160:  00000000 3fff1afc 3fff423c 4021bdf9  
3fff4170:  3fff1e05 3fff1e26 402203f4 3fff19d0  
3fff4180:  00000001 3fff1afc 3fff4224 40219609  
3fff4190:  00000000 00000000 3fff0c50 3fff1e05  
3fff41a0:  3fff1e26 3fff1dd8 3fff0c50 40216fbb  
3fff41b0:  00000001 3fff142c 3fffdab0 00000000  
3fff41c0:  656c6574 6e6f732f 3166666f 574c2f31  
3fff41d0:  00000054 3fff32d0 00000000 3fffdad0  
3fff41e0:  3fff32c8 00000030 00000000 fffffffe  
3fff41f0:  ffffffff 3fffc6fc 00000001 00000000  
3fff4200:  00000000 3fffdad0 3fff32c8 00000030  
3fff4210:  40261b8e 3fff3078 3fff10a2 40106c9a  
3fff4220:  40217bf7 40212098 00000000 402203f4  
3fff4230:  402203dc 00000000 00000000 00000000  
3fff4240:  00000000 3fff1b21 3fff1b70 40220b4c  
3fff4250:  40262d5f 3fff1b70 3fff1b21 0000006e  
3fff4260:  3ffe8760 3fff1b70 3fff1b21 40217004  
3fff4270:  3fff1b3c 3fff1b70 3fff1b21 40217528  
3fff4280:  303a3232 33353a35 00000000 3fff32c8  
3fff4290:  00000001 00000028 00000000 40204bec  
3fff42a0:  3fffdad0 3fff32c8 4021ffb0 40214e84  
3fff42b0:  00000000 00000028 3fff32c1 3fff32c8  
3fff42c0:  3fffdad0 00000000 3fff32c1 40217570  
3fff42d0:  3fffdad0 00000000 3fff32c1 4021fffc  
3fff42e0:  feefeffe feefeffe 3fff32d0 40100710  
<<<stack<<<

 ets Jan  8 2013,rst cause:1, boot mode:(1,7)

 ets Jan  8 2013,rst cause:4, boot mode:(1,7)

wdt reset

And other

22:24:00 CMD: STATUS 0
22:24:00 RSL: Group 0, Index 1, Command STATUS, Data 0
22:24:00 MQT: stat/sonoff11/STATUS = {"Status":{"Module":1,"FriendlyName":["Sonoff 11"],"Topic":"sonoff11","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"SaveData":1,"SaveState":1,"ButtonRetain":0,"PowerRetain":0}}
22:24:00 MQT: stat/sonoff11/STATUS1 = {"StatusPRM":{"Baudrate":115200,"GroupTopic":"sonoffs","OtaUrl":"http://sonoff-ota.majchrowski.waw.pl:8888/api/arduino/sonoff11.ino.bin","RestartReason":"Software/System restart","Uptime":"0T00:02:10","StartupUTC":"2018-05-27T21:21:50","Sleep":0,"BootCount":4,"SaveCount":6,"SaveAddress":"3F6000"}}
22:24:00 MQT: stat/sonoff11/STATUS2 = {"StatusFWR":{"Version":"5.13.1","BuildDateTime":"2018-05-27T23:03:29","Boot":31,"Core":"2_4_1","SDK":"2.2.1(cfd48f3)"}}
22:24:00 MQT: stat/sonoff11/STATUS3 = {"StatusLOG":{"SerialLog":3,"WebLog":0,"SysLog":2,"LogHost":"192.168.199.251","LogPort":514,"SSId":["atomix","MAJCOMNET HTC"],"TelePeriod":60,"SetOption":["00008009","55818000"]}}
22:24:00 MQT: stat/sonoff11/STATUS4 = {"StatusMEM":{"ProgramSize":515,"Free":2556,"Heap":4,"ProgramFlashSize":4096,"FlashSize":4096,"FlashMode":3}}
22:24:00 MQT: stat/sonoff11/STATUS5 = {"StatusNET":{"Hostname":"sonoff11","IPAddress":"192.168.20.11","Gateway":"192.168.20.254","Subnetmask":"255.255.255.0","DNSServer":"192.168.199.251","Mac":"5C:CF:7F:72:0A:1E","Webserver":2,"WifiConfig":5}}
22:24:00 MQT: stat/sonoff11/STATUS6 = {"StatusMQT":{"MqttHost":"mqtt.majchrowski.waw.pl","MqttPort":8883,"MqttClientMask":"sonoff11","MqttClient":"sonoff11","MqttUser":"sonoff","MqttType":1,"MAX_PACKET_SIZE":1000,"KEEPALIVE":15}}
22:24:01 MQT: stat/sonoff11/STATUS7 = {"StatusTIM":{"UTC":"Sun May 27 21:24:00 2018","Local":"Sun May 27 22:24:00 2018","StartDST":"Sun Mar 25 02:00:00 2018","EndDST":"Sun Oct 28 03:
00:00 2018","Timezone":1,"Sunrise":"03:24","Sunset":"19:41"}}
22:24:01 MQT: stat/sonoff11/STATUS10 = {"StatusSNS":{"Time":"2018-05-27T22:24:01"}}
22:24:01 MQT: stat/sonoff11/STATUS11 = {"StatusSTS":{"Time":"2018-05-27T22:24:01","Uptime":"0T00:02:11","Vcc":3.364,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":70,"APMac":"06:8D:DB:DB:97:47"}}}
22:24:05 MQT: tele/sonoff11/STATE = {"Time":"2018-05-27T22:24:05","Uptime":"0T00:02:15","Vcc":3.365,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":70,"APMac":"06:8D:DB:DB:97:47"}}
22:24:22 MQT: Attempting connection...

Exception (29):
epc1=0x4022509c epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000

ctx: cont
sp: 3fff3d50 end: 3fff42f0 offset: 01a0

>>>stack>>>
3fff3ef0:  00000080 3fff629c 3fffbefc 40232867
3fff3f00:  3fff7844 3fff629c 3fffbefc 40233255
3fff3f10:  3fffbf1c 64798077 b4ada300 00000020
3fff3f20:  3fff52fc 3fff629c 3fffba94 00000020
3fff3f30:  3fff52fc 3fff629c 00000010 4023354a
3fff3f40:  3fffbecc 3fffbf4c 00000496 00000001
3fff3f50:  00000001 3fffba94 3fff9e5c 402322c4
3fff3f60:  00000200 3fff630c 3fff9caf 00000000
3fff3f70:  00000200 3fff630c 3fff9caf 40234649
3fff3f80:  3fff3fb0 00000000 000001d0 00000030
3fff3f90:  f7e2321a 3fff5eb0 3fff9a48 00000004
3fff3fa0:  3fff9ca9 3fff975c 3fff9ca9 4022f344
3fff3fb0:  5b700303 4e393647 d64d43e8 e86795d4
3fff3fc0:  bf5a14d2 9ba70277 b960b04b fbfba580
3fff3fd0:  0be37c94 e82a6fe3 073698ae 321a6a96
3fff3fe0:  3fff9ca9 00000004 3fff975c 4022f7d9
3fff3ff0:  3fffba94 3b50dd67 67dfde07 d609d01f
3fff4000:  b189ad23 3fffc6fc 3fff32d0 3fff5fac
3fff4010:  00000000 00000004 00000004 40218df8
3fff4020:  0000002c 00000b6c 00000064 40220028
3fff4030:  0000004a 00000000 0000002d 00000004
3fff4040:  3fff9ca9 00000004 3fff975c 00000004
3fff4050:  3fff9ca9 00000004 3fff975c 4022f14c
3fff4060:  c37ecc28 00000006 00000000 0000002e
3fff4070:  00000063 3fff9ca9 3fff975c 4022f528
3fff4080:  00000017 3fff9cdc 3fff975c 401004d8
3fff4090:  3fff40e8 0000000e 00000010 3fff5e9c
3fff40a0:  40218bac 3fff975c 3fff40e0 01000000
3fff40b0:  3fff40e8 00025c74 3fff975c 4022f2b4
3fff40c0:  40104ce4 3fff1dc1 3fff6204 3fff5e9c
3fff40d0:  3fff5fac 00025c74 3fff6204 40219591
3fff40e0:  3fff975c 3fff9a2c 3fff30a8 4021fdd4
3fff40f0:  00003a98 3fff4120 3fff1b14 402195d0
3fff4100:  00000000 00000000 3fff5fac 3fff41c0
3fff4110:  000022b3 3fff1dc1 3fff1afc 402197df
3fff4120:  00000000 00000000 3fff1dc1 3fff41c0
3fff4130:  000022b3 3fff1afc 3fff1dc1 40219885
3fff4140:  40107640 fbc7a8c0 40107640 fbc7a8c0
3fff4150:  00000001 3fff1050 3fff0c50 4021b960
3fff4160:  00000000 3fff1afc 3fff423c 4021bdf9
3fff4170:  3fff1e05 3fff1e26 402203f4 3fff19d0
3fff4180:  00000001 3fff1afc 3fff4224 40219609
3fff4190:  00000000 00000000 3fff0c50 3fff1e05
3fff41a0:  3fff1e26 3fff1dd8 3fff0c50 40216fbb
3fff41b0:  00000001 3fff142c 0000000e ffffffff
3fff41c0:  656c6574 6e6f732f 3166666f 574c2f31
3fff41d0:  40200054 00000001 402102b0 00000001
3fff41e0:  00008009 00000000 00000000 fffffffe
3fff41f0:  ffffffff 3fffc6fc 00000001 0000001c
3fff4200:  00000028 00000001 3fff32c8 00000030
3fff4210:  3fff0f50 3fff5fac 00000000 40106c9a
3fff4220:  00000001 40212098 00000000 402203f4
3fff4230:  402203dc 00000000 00000000 00000000
3fff4240:  00000000 3fff1b21 3fff1b70 40220b4c
3fff4250:  40262d5f 3fff1b70 3fff1b21 0000006e
3fff4260:  3ffe8760 3fff1b70 3fff1b21 40217004
3fff4270:  3fff1b3c 3fff1b70 3fff1b21 40217528
3fff4280:  323a3232 30303a34 00000000 3fff32c8
3fff4290:  00000001 00000028 00000000 40204bec
3fff42a0:  3fffdad0 3fff32c8 4021ffb0 40214e84
3fff42b0:  00000000 00000028 3fff32c1 3fff32c8
3fff42c0:  3fffdad0 00000000 3fff32c1 40217570
3fff42d0:  3fffdad0 00000000 3fff32c1 4021fffc
3fff42e0:  feefeffe feefeffe 3fff32d0 40100710
<<<stack<<<

 ets Jan  8 2013,rst cause:1, boot mode:(3,7)

load 0x4010f000, len 1384, room 16
tail 8
chksum 0x2d
csum 0x2d
v614f7c32
~ld

00:00:00 APP: Boot Count 5
00:00:00 Project sonoff11 Sonoff 11 (Topic sonoff11, Fallback sonoff11, GroupTopic sonoffs) Version 5.13.1-2_4_1
00:00:00 CFG: Saved to flash at 3F5, Count 7, Bytes 2560
00:00:00 WIF: Attempting connection...
00:00:00 WIF: Connecting to AP1 atomix in mode 11N as sonoff11...
00:00:01 WIF: Attempting connection...
00:00:02 WIF: Attempting connection...
00:00:04 WIF: Connected
00:00:05 MQT: Attempting connection...
00:00:05 MQT: Verify TLS fingerprint...
00:00:06 MQT: Verified using Fingerprint1
00:00:06 MQT: Connected
00:00:06 MQT: tele/sonoff11/LWT = Online (retained)
00:00:06 MQT: cmnd/sonoff11/POWER =
00:00:06 MQT: Subscribe to cmnd/sonoff11/#
00:00:06 MQT: Subscribe to cmnd/sonoffs/#
00:00:06 MQT: Subscribe to cmnd/sonoff11/#
00:00:06 MQT: tele/sonoff11/INFO1 = {"Module":"Sonoff Basic","Version":"5.13.1","FallbackTopic":"sonoff11","GroupTopic":"sonoffs"}
00:00:06 MQT: tele/sonoff11/INFO3 = {"RestartReason":"Fatal exception:29 flag:2 (EXCEPTION) epc1:0x4022509c epc2:0x00000000 epc3:0x00000000 excvaddr:0x00000000 depc:0x00000000"}
00:00:06 APP: (UTC) Sun May 27 21:24:29 2018, (DST) Sun Mar 25 02:00:00 2018, (STD) Sun Oct 28 03:00:00 2018
22:24:31 MQT: stat/sonoff11/RESULT = {"POWER":"OFF"}
22:24:31 MQT: stat/sonoff11/POWER = OFF

It happens when I use LWiP 1.4 Higher Bandwidth. The same result is on 5.12.0i and 5.13.1.

When I use LWiP 2.0 Higher Bandwidth or Lower Memory everythink is OK.

00:00:00 CFG: Use defaults
00:00:00 Project sonoff11 Sonoff 11 (Topic sonoff11, Fallback sonoff11, GroupTopic sonoffs) Version 5.13.1-2_4_1
00:00:00 WIF: Connecting to AP1 atomix in mode 11N as sonoff11...
00:00:04 WIF: Connected
22:36:52 MQT: Attempting connection...
22:36:52 MQT: Verify TLS fingerprint...
22:36:53 MQT: Verified using Fingerprint1
22:36:53 MQT: Connected
22:36:53 MQT: tele/sonoff11/LWT = Online (retained)
22:36:53 MQT: cmnd/sonoff11/POWER = 
22:36:53 MQT: tele/sonoff11/INFO1 = {"Module":"Sonoff Basic","Version":"5.13.1","FallbackTopic":"sonoff11","GroupTopic":"sonoffs"}
22:36:53 MQT: tele/sonoff11/INFO3 = {"RestartReason":"Power on"}
22:36:55 MQT: stat/sonoff11/RESULT = {"POWER":"OFF"}
22:36:55 MQT: stat/sonoff11/POWER = OFF
22:36:58 CMD: STATAUS 0
22:36:58 MQT: stat/sonoff11/RESULT = {"Command":"Unknown"}
22:37:02 MQT: tele/sonoff11/STATE = {"Time":"2018-05-27T22:37:02","Uptime":"0T00:00:15","Vcc":3.340,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":76,"APMac":"06:8D:DB:DB:97:47"}}
22:37:02 CMD: STATUS 0
22:37:02 MQT: stat/sonoff11/STATUS = {"Status":{"Module":1,"FriendlyName":["Sonoff 11"],"Topic":"sonoff11","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"SaveData":1,"SaveState":1,"ButtonRetain":0,"PowerRetain":0}}
22:37:02 MQT: stat/sonoff11/STATUS1 = {"StatusPRM":{"Baudrate":115200,"GroupTopic":"sonoffs","OtaUrl":"http://sonoff-ota.majchrowski.waw.pl:8888/api/arduino/sonoff11.ino.bin","RestartReason":"Power on","Uptime":"0T00:00:15","StartupUTC":"2018-05-27T21:36:47","Sleep":0,"BootCount":1,"SaveCount":2,"SaveAddress":"3FA000"}}
22:37:02 MQT: stat/sonoff11/STATUS2 = {"StatusFWR":{"Version":"5.13.1","BuildDateTime":"2018-05-27T23:35:29","Boot":31,"Core":"2_4_1","SDK":"2.2.1(cfd48f3)"}}
22:37:02 MQT: stat/sonoff11/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":0,"SysLog":2,"LogHost":"192.168.199.251","LogPort":514,"SSId":["atomix","MAJCOMNET HTC"],"TelePeriod":60,"SetOption":["00008009","55818000"]}}
22:37:02 MQT: stat/sonoff11/STATUS4 = {"StatusMEM":{"ProgramSize":516,"Free":2556,"Heap":6,"ProgramFlashSize":4096,"FlashSize":4096,"FlashMode":3}}
22:37:02 MQT: stat/sonoff11/STATUS5 = {"StatusNET":{"Hostname":"sonoff11","IPAddress":"192.168.20.11","Gateway":"192.168.20.254","Subnetmask":"255.255.255.0","DNSServer":"192.168.199.251","Mac":"5C:CF:7F:72:0A:1E","Webserver":2,"WifiConfig":5}}
22:37:02 MQT: stat/sonoff11/STATUS6 = {"StatusMQT":{"MqttHost":"mqtt.majchrowski.waw.pl","MqttPort":8883,"MqttClientMask":"sonoff11","MqttClient":"sonoff11","MqttUser":"sonoff","MqttType":1,"MAX_PACKET_SIZE":1000,"KEEPALIVE":15}}
22:37:02 MQT: stat/sonoff11/STATUS7 = {"StatusTIM":{"UTC":"Sun May 27 21:37:02 2018","Local":"Sun May 27 22:37:02 2018","StartDST":"Sun Mar 25 02:00:00 2018","EndDST":"Sun Oct 28 03:00:00 2018","Timezone":1,"Sunrise":"03:24","Sunset":"19:41"}}
22:37:02 MQT: stat/sonoff11/STATUS10 = {"StatusSNS":{"Time":"2018-05-27T22:37:02"}}
22:37:02 MQT: stat/sonoff11/STATUS11 = {"StatusSTS":{"Time":"2018-05-27T22:37:02","Uptime":"0T00:00:15","Vcc":3.341,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":76,"APMac":"06:8D:DB:DB:97:47"}}}
22:37:41 CMD: STATUS 0
22:37:41 MQT: stat/sonoff11/STATUS = {"Status":{"Module":1,"FriendlyName":["Sonoff 11"],"Topic":"sonoff11","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"SaveData":1,"SaveState":1,"ButtonRetain":0,"PowerRetain":0}}
22:37:41 MQT: stat/sonoff11/STATUS1 = {"StatusPRM":{"Baudrate":115200,"GroupTopic":"sonoffs","OtaUrl":"http://sonoff-ota.majchrowski.waw.pl:8888/api/arduino/sonoff11.ino.bin","RestartReason":"Power on","Uptime":"0T00:00:54","StartupUTC":"2018-05-27T21:36:47","Sleep":0,"BootCount":1,"SaveCount":2,"SaveAddress":"3FA000"}}
22:37:41 MQT: stat/sonoff11/STATUS2 = {"StatusFWR":{"Version":"5.13.1","BuildDateTime":"2018-05-27T23:35:29","Boot":31,"Core":"2_4_1","SDK":"2.2.1(cfd48f3)"}}
22:37:41 MQT: stat/sonoff11/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":0,"SysLog":2,"LogHost":"192.168.199.251","LogPort":514,"SSId":["atomix","MAJCOMNET HTC"],"TelePeriod":60,"SetOption":["00008009","55818000"]}}
22:37:41 MQT: stat/sonoff11/STATUS4 = {"StatusMEM":{"ProgramSize":516,"Free":2556,"Heap":7,"ProgramFlashSize":4096,"FlashSize":4096,"FlashMode":3}}
22:37:41 MQT: stat/sonoff11/STATUS5 = {"StatusNET":{"Hostname":"sonoff11","IPAddress":"192.168.20.11","Gateway":"192.168.20.254","Subnetmask":"255.255.255.0","DNSServer":"192.168.199.251","Mac":"5C:CF:7F:72:0A:1E","Webserver":2,"WifiConfig":5}}
22:37:42 MQT: stat/sonoff11/STATUS6 = {"StatusMQT":{"MqttHost":"mqtt.majchrowski.waw.pl","MqttPort":8883,"MqttClientMask":"sonoff11","MqttClient":"sonoff11","MqttUser":"sonoff","MqttType":1,"MAX_PACKET_SIZE":1000,"KEEPALIVE":15}}
22:37:42 MQT: stat/sonoff11/STATUS7 = {"StatusTIM":{"UTC":"Sun May 27 21:37:42 2018","Local":"Sun May 27 22:37:42 2018","StartDST":"Sun Mar 25 02:00:00 2018","EndDST":"Sun Oct 28 03:00:00 2018","Timezone":1,"Sunrise":"03:24","Sunset":"19:41"}}
22:37:42 MQT: stat/sonoff11/STATUS10 = {"StatusSNS":{"Time":"2018-05-27T22:37:42"}}
22:37:42 MQT: stat/sonoff11/STATUS11 = {"StatusSTS":{"Time":"2018-05-27T22:37:42","Uptime":"0T00:00:55","Vcc":3.340,"POWER":"OFF","Wifi":{"AP":1,"SSId":"atomix","RSSI":76,"APMac":"06:8D:DB:DB:97:47"}}}

Is this normal?

I use 4MB flash in my sonoff (I replace the original one).

ascillato commented 6 years ago

compiled with Arduino IDE or Platform.io?

ascillato commented 6 years ago

try the esplib 2.3.0 instead of 2.4.1 that you are using.

arendst commented 6 years ago

TLS is very RAM hungry with your experience as result. More flash doesn't solve that.

I guess this is the end of TLS as new features use more RAM even if you disable all sensors as the settings area has permanently grown by rule save area to almost 4k eaten from RAM too.

majherek commented 6 years ago

Hi @ascillato, I compile it with Arduino IDE. I will try with esplib 2.3.0, but I think I already check it (I will check it for sure today).

@arendst for me it doesn't matter -> I use LWiP v2 from long time and everything is working fine. Can you not to throw away TLS support? IMHO security is important too.

arendst commented 6 years ago

TLS support will stay in the source. Perhaps one day a low RAM version becomes available :-0

majherek commented 6 years ago

@ascillato,

for me with esplib 2.3.0 is the same.

younesmaia commented 6 years ago

@arendst Is there any combination of features that allows for sufficient RAM for TLS to work?

majherek commented 6 years ago

@younesmaia,

yes, I have working 5.14.0b with TLS.

In user_config.h uncomment:

#define USE_CONFIG_OVERRIDE                      // Uncomment to use user_config_override.h file. See README.md

and create user_config_override.h file like this (remember, to change NAMES, IP, etc.).

/*
  user_config_override.h - user configuration overrides user_config.h for Sonoff-Tasmota

  Copyright (C) 2018  Theo Arends

  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

#ifndef _USER_CONFIG_OVERRIDE_H_
#define _USER_CONFIG_OVERRIDE_H_

// force the compiler to show a warning to confirm that this file is inlcuded
#warning **** user_config_override.h: Using Settings from this File ****

/*****************************************************************************************************\
 * USAGE:
 *   To modify the stock configuration without changing the user_config.h file:
 *   (1) copy this file to "user_config_override.h" (It will be ignored by Git)
 *   (2) define your own settings below
 *   (3) for platformio:
 *         define USE_CONFIG_OVERRIDE as a build flags.
 *         ie1 : export PLATFORMIO_BUILD_FLAGS='-DUSE_CONFIG_OVERRIDE'
 *         ie2 : enable in file platformio.ini "build_flags = -Wl,-Tesp8266.flash.1m0.ld -DUSE_CONFIG_OVERRIDE"
 *       for Arduino IDE:
 *         enable define USE_CONFIG_OVERRIDE in user_config.h
 ******************************************************************************************************
 * ATTENTION:
 *   - Changes to SECTION1 PARAMETER defines will only override flash settings if you change define CFG_HOLDER.
 *   - Expect compiler warnings when no ifdef/undef/endif sequence is used.
 *   - You still need to update user_config.h for major define USE_MQTT_TLS.
 *   - All parameters can be persistent changed online using commands via MQTT, WebConsole or Serial.
\*****************************************************************************************************/

/*
Examples :

// -- Master parameter control --------------------
#undef  CFG_HOLDER
#define CFG_HOLDER        0x20161209             // [Reset 1] Change this value to load SECTION1 configuration parameters to flash

// -- Setup your own Wifi settings  ---------------
#undef  STA_SSID1
#define STA_SSID1         "YourSSID"             // [Ssid1] Wifi SSID

#undef  STA_PASS1
#define STA_PASS1         "YourWifiPassword"     // [Password1] Wifi password

// -- Setup your own MQTT settings  ---------------
#undef  MQTT_HOST
#define MQTT_HOST         "your-mqtt-server.com" // [MqttHost]

#undef  MQTT_PORT
#define MQTT_PORT         1883                   // [MqttPort] MQTT port (10123 on CloudMQTT)

#undef  MQTT_USER
#define MQTT_USER         "YourMqttUser"         // [MqttUser] Optional user

#undef  MQTT_PASS
#define MQTT_PASS         "YourMqttPass"         // [MqttPassword] Optional password

// You might even pass some parameters from the command line ----------------------------
// Ie:  export PLATFORMIO_BUILD_FLAGS='-DUSE_CONFIG_OVERRIDE -DMY_IP="192.168.1.99" -DMY_GW="192.168.1.1" -DMY_DNS="192.168.1.1"'

#ifdef MY_IP
#undef  WIFI_IP_ADDRESS
#define WIFI_IP_ADDRESS   MY_IP                  // Set to 0.0.0.0 for using DHCP or IP address
#endif

#ifdef MY_GW
#undef  WIFI_GATEWAY
#define WIFI_GATEWAY      MY_GW                  // if not using DHCP set Gateway IP address
#endif

#ifdef MY_DNS
#undef  WIFI_DNS
#define WIFI_DNS          MY_DNS                 // If not using DHCP set DNS IP address (might be equal to WIFI_GATEWAY)
#endif

*/

#ifdef PROJECT
#undef PROJECT
#define PROJECT                "NAME"          // PROJECT is used as the default topic delimiter and OTA file name
                                                 //   As an IDE restriction it needs to be the same as the main .ino file
#endif

#ifdef FRIENDLY_NAME
#undef FRIENDLY_NAME
#define FRIENDLY_NAME          "NAME"          // [FriendlyName] Friendlyname up to 32 characters used by webpages and Alexa
#endif

#ifdef MQTT_CLIENT_ID
#undef MQTT_CLIENT_ID
#define MQTT_CLIENT_ID        "NAME"
#endif

#ifdef WIFI_IP_ADDRESS
#undef WIFI_IP_ADDRESS
#define WIFI_IP_ADDRESS        "IP1"         // [IpAddress1] Set to 0.0.0.0 for using DHCP or IP address
#endif

#ifdef WIFI_HOSTNAME
#undef WIFI_HOSTNAME
#define WIFI_HOSTNAME          "WIFI_HOSTNAME"    // Expands to <MQTT_TOPIC>-<last 4 decimal chars of MAC address>
#endif

#ifdef CFG_HOLDER
#undef  CFG_HOLDER
#define CFG_HOLDER             0x20180527      // [Reset 1] Change this value to load following default configuration parameters
#endif

#ifdef MODULE
#undef MODULE
#define MODULE                 SONOFF_BASIC
//#define MODULE                 WEMOS
#endif

#ifndef USE_MQTT_TLS
#define USE_MQTT_TLS
#endif

#ifdef USE_MQTT_TLS

#ifdef MQTT_HOST
#undef MQTT_HOST
#define MQTT_HOST            "MQTT HOST"  // [MqttHost]
#endif

#ifdef MQTT_FINGERPRINT1
#undef MQTT_FINGERPRINT1
  #define MQTT_FINGERPRINT1    "B0 XX XX 18 D6 2E 04 24 E1 28 5F B7 A2 B5 44 AA 36 23 FA C8"  // [MqttFingerprint]                               
#endif

#ifdef MQTT_FINGERPRINT2
#undef MQTT_FINGERPRINT2
  #define MQTT_FINGERPRINT2    "36 71 CD XX XX 61 EE A3 41 ED 65 20 19 75 76 4D 61 83 E9 B5"  // [MqttFingerprint]                               
#endif

#ifdef MQTT_PORT
#undef MQTT_PORT
  #define MQTT_PORT            8883                // [MqttPort] MQTT TLS port
#endif

#ifdef MQTT_USER
#undef MQTT_USER
  #define MQTT_USER            "MQTT_USER"      // [MqttUser] Mandatory user   
#endif

#ifdef MQTT_PASS
#undef MQTT_PASS
  #define MQTT_PASS            "MQTT_PASSWORD"  // [MqttPassword] Mandatory password
#endif

#endif

#ifdef NTP_SERVER2
#undef NTP_SERVER2
#define NTP_SERVER2            "0.pl.pool.ntp.org"    // [NtpServer2] Select second NTP server by name or IP address (5.39.184.5)
#endif

#ifdef NTP_SERVER3
#undef NTP_SERVER3
#define NTP_SERVER3            "1.pl.pool.ntp.org"  // [NtpServer3] Select third NTP server by name or IP address (93.94.224.67)
#endif

#ifdef SWITCH_MODE
#undef SWITCH_MODE
#define SWITCH_MODE            TOGGLE            // [SwitchMode] TOGGLE, FOLLOW, FOLLOW_INV, PUSHBUTTON, PUSHBUTTON_INV, PUSHBUTTONHOLD, PUSHBUTTONHOLD_INV, PUSHBUTTON_TOGGLE (the wall switch state)
#endif

#ifdef USE_ALL_SENSORS
#undef USE_ALL_SENSORS                          // Create sonoff-xxl with all sensors enabled (See sonoff_post.h for selected sensors)
#endif

// -- Wifi ----------------------------------------
#ifdef WIFI_GATEWAY
#undef WIFI_GATEWAY
#define WIFI_GATEWAY           "GATEWAY"   // [IpAddress2] If not using DHCP set Gateway IP address
#endif

#ifdef WIFI_SUBNETMASK
#undef WIFI_SUBNETMASK
#define WIFI_SUBNETMASK        "255.255.255.0"   // [IpAddress3] If not using DHCP set Network mask
#endif

#ifdef WIFI_DNS
#undef WIFI_DNS
#define WIFI_DNS               "DNS"    // [IpAddress4] If not using DHCP set DNS IP address (might be equal to WIFI_GATEWAY)
#endif

#ifdef STA_SSID1
#undef  STA_SSID1
#define STA_SSID1              "SSID1"      // [Ssid1] Wifi SSID
#endif

#ifdef STA_PASS1
#undef  STA_PASS1
#define STA_PASS1              "PASS1"  // [Password1] Wifi password
#endif

#ifdef STA_SSID2
#undef  STA_SSID2
#define STA_SSID2              "SSID2"                // [Ssid1] Wifi SSID
#endif

#ifdef STA_PASS2
#undef  STA_PASS2
#define STA_PASS2              "PASS2"                // [Password1] Wifi password
#endif

#ifdef WIFI_CONFIG_TOOL
#undef WIFI_CONFIG_TOOL
#define WIFI_CONFIG_TOOL       WIFI_RETRY    // [WifiConfig] Default tool if wifi fails to connect
                                                 //   (WIFI_RESTART, WIFI_SMARTCONFIG, WIFI_MANAGER, WIFI_WPSCONFIG, WIFI_RETRY, WIFI_WAIT)
#endif

// -- Syslog --------------------------------------
#ifdef SYS_LOG_HOST
#undef SYS_LOG_HOST
#define SYS_LOG_HOST           "SYSLOG_HOST"                // [LogHost] (Linux) syslog host
#endif

#ifdef SYS_LOG_LEVEL
#undef SYS_LOG_LEVEL
#define SYS_LOG_LEVEL          LOG_LEVEL_INFO    // [SysLog]
#endif

#ifdef WEB_LOG_LEVEL
#undef WEB_LOG_LEVEL
#define WEB_LOG_LEVEL          LOG_LEVEL_NONE    // [WebLog]
#endif

// -- Ota -----------------------------------------r
#ifdef OTA_URL
#undef OTA_URL
#define OTA_URL                "http://OTASERVER:PORTNUMBER/api/arduino/" PROJECT ".ino.bin"  // [OtaUrl]
#endif

#ifdef USE_ARDUINO_OTA
#undef USE_ARDUINO_OTA                          // Add optional support for Arduino OTA (+4k5 code)
#endif

#ifdef TELE_PERIOD
#undef TELE_PERIOD
#define TELE_PERIOD            60
#endif

#ifdef USE_WEBSERVER
#undef USE_WEBSERVER
#endif

#ifdef WEB_SERVER
#undef WEB_SERVER
#define WEB_SERVER 2
#endif

#ifdef USE_DISCOVERY
#undef USE_DISCOVERY
#endif

#ifdef LATITUDE
#undef LATITUDE
#define LATITUDE               LA.TITUDE         // [Latitude] Your location to be used with sunrise and sunset
#endif

#ifdef LONGITUDE
#undef LONGITUDE
#define LONGITUDE              LO.NGITUDE          // [Longitude] Your location to be used with sunrise and sunset
#endif

#ifdef USE_DOMOTICZ
#undef USE_DOMOTICZ
#endif

#ifdef USE_HOME_ASSISTANT                       // Enable Home Assistant Discovery Support (+2k code)
#undef USE_HOME_ASSISTANT                       // Enable Home Assistant Discovery Support (+2k code)
#endif

#ifdef USE_KNX
#undef USE_KNX                                  // Enable KNX IP Protocol Support (+23k code, +3k3 mem)
#endif

#ifdef USE_DISCOVERY
#undef USE_DISCOVERY                            // Enable mDNS for the following services (+8k code, +0.3k mem)
#endif

// -- Time ----------------------------------------
#define USE_TIMERS                               // Add support for up to 16 timers (+2k2 code)
  #define USE_TIMERS_WEB                         // Add timer webpage support (+4k5 code)
  #define USE_SUNRISE                            // Add support for Sunrise and sunset tools (+16k)
    #define SUNRISE_DAWN_ANGLE DAWN_NORMAL       // Select desired Dawn Angle from (DAWN_NORMAL, DAWN_CIVIL, DAWN_NAUTIC, DAWN_ASTRONOMIC)

// -- Rules ---------------------------------------
#define USE_RULES                                // Add support for rules (+4k4 code)

// -- Internal Analog input -----------------------
#define USE_ADC_VCC                              // Display Vcc in Power status. Disable for use as Analog input on selected devices

// -- One wire sensors ----------------------------

#ifdef USE_DS18x20
#undef USE_DS18x20
#define USE_DS18x20                              // Optional for more than one DS18x20 sensors with id sort, single scan and read retry (+1k3 code)
#endif

#ifdef USE_DS18x20_LEGACY
#undef USE_DS18x20_LEGACY
//#define USE_DS18x20_LEGACY                       // Optional for more than one DS18x20 sensors with dynamic scan using library OneWire (+1k5 code)
#endif

// -- I2C sensors ---------------------------------
#define USE_I2C                                  // I2C using library wire (+10k code, 0k2 mem, 124 iram)
#ifdef USE_I2C
  #ifdef USE_SHT
  #undef USE_SHT
  #define USE_SHT                                // Add I2C emulating code for SHT1X sensor (+1k4 code)
  #endif

  #ifdef USE_SHT3X
  #undef USE_SHT3X
//  #define USE_SHT3X                              // Add I2C code for SHT3x or SHTC3 sensor (+0k7 code)
  #endif

  #ifdef USE_HTU
  #undef USE_HTU
  #define USE_HTU                                // Add I2C code for HTU21/SI7013/SI7020/SI7021 sensor (+1k5 code)
  #endif

  #ifdef USE_BMP
  #undef USE_BMP
  #define USE_BMP                                // Add I2C code for BMP085/BMP180/BMP280/BME280 sensor (+4k code)
  #endif

  #ifdef USE_BME680
  #undef USE_BME680
//    #define USE_BME680                           // Add additional support for BME680 sensor using Adafruit Sensor and BME680 libraries (+6k code)
  #endif

  #ifdef USE_SGP30
  #undef USE_SGP30
//  #define USE_SGP30                              // Add I2C code for SGP30 sensor (+1k1 code)
  #endif

  #ifdef USE_BH1750
  #undef USE_BH1750
//  #define USE_BH1750                             // Add I2C code for BH1750 sensor (+0k5 code)
  #endif

  #ifdef USE_VEML6070
  #undef USE_VEML6070
//  #define USE_VEML6070                           // Add I2C code for VEML6070 sensor (+0k5 code)
  #endif

    #ifdef USE_TSL2561
    #undef USE_TSL2561
//  #define USE_TSL2561                            // Add I2C code for TSL2561 sensor using library Joba_Tsl2561 (+2k3 code)
  #endif

    #ifdef USE_ADS1115
    #undef USE_ADS1115
//  #define USE_ADS1115                            // Add I2C code for ADS1115 16 bit A/D converter based on Adafruit ADS1x15 library (no library needed) (+0k7 code)
    #endif

    #ifdef USE_ADS1115_I2CDEV
    #undef USE_ADS1115_I2CDEV
//  #define USE_ADS1115_I2CDEV                     // Add I2C code for ADS1115 16 bit A/D converter using library i2cdevlib-Core and i2cdevlib-ADS1115 (+2k code)
    #endif

    #ifdef USE_INA219
    #undef USE_INA219
//  #define USE_INA219                             // Add I2C code for INA219 Low voltage and current sensor (+1k code)
    #endif

    #ifdef USE_MGS
    #undef USE_MGS
//  #define USE_MGS                                // Add I2C code for Xadow and Grove Mutichannel Gas sensor using library Multichannel_Gas_Sensor (+10k code)
    #endif

    #ifdef MGS_SENSOR_ADDR
    #undef MGS_SENSOR_ADDR
    #define MGS_SENSOR_ADDR    0x04              // Default Mutichannel Gas sensor i2c address
    #endif

#endif  // USE_I2C

// -- Serial sensors ------------------------------
#ifdef USE_MHZ19
#undef USE_MHZ19 
//#define USE_MHZ19                                // Add support for MH-Z19 CO2 sensor (+2k code)
#endif

#ifdef USE_SENSEAIR
#undef USE_SENSEAIR
//#define USE_SENSEAIR                             // Add support for SenseAir K30, K70 and S8 CO2 sensor (+2k3 code)
#endif

#ifdef USE_PMS5003
#undef USE_PMS5003                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
//#define USE_PMS5003                              // Add support for PMS5003 and PMS7003 particle concentration sensor (+1k3 code)
#endif

#ifdef USE_NOVA_SDS
#undef USE_NOVA_SDS                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
//#define USE_NOVA_SDS                             // Add support for SDS011 and SDS021 particle concentration sensor (+0k7 code)
#endif

#ifdef USE_PZEM004T
#undef USE_PZEM004T                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
//#define USE_PZEM004T                             // Add support for PZEM004T Energy monitor (+2k code)
#endif

#ifdef USE_SERIAL_BRIDGE
#undef USE_SERIAL_BRIDGE                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
//#define USE_SERIAL_BRIDGE                        // Add support for software Serial Bridge (+0k8 code)
#endif

// -- Low level interface devices -----------------
#ifdef USE_IR_REMOTE
#undef USE_IR_REMOTE                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
//#define USE_IR_REMOTE                            // Send IR remote commands using library IRremoteESP8266 and ArduinoJson (+4k code, 0k3 mem, 48 iram)
#endif

#ifdef USE_WS2812
#undef USE_WS2812                               // WS2812 Led string using library NeoPixelBus (+5k code, +1k mem, 232 iram) - Disable by //
//#define USE_WS2812                               // WS2812 Led string using library NeoPixelBus (+5k code, +1k mem, 232 iram) - Disable by //
#endif

#ifdef USE_ARILUX_RF
#undef USE_ARILUX_RF                            // Add support for Arilux RF remote controller (+0k8 code, 252 iram (non 2.3.0))
//#define USE_ARILUX_RF                            // Add support for Arilux RF remote controller (+0k8 code, 252 iram (non 2.3.0))
#endif

#ifdef USE_SR04
#undef USE_SR04                            // Add support for Arilux RF remote controller (+0k8 code, 252 iram (non 2.3.0))
#define USE_SR04                                 // Add support for HC-SR04 ultrasonic devices (+1k code)
#endif

#endif  // _USER_CONFIG_OVERRIDE_H_
Mebus commented 6 years ago

Is it correct, that you disabled the web server to get MQTT to work with TLS?

Mebus