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
21.98k stars 4.77k forks source link

Tasmota ESP32: board hangs after applying template #9664

Closed utech-git closed 3 years ago

utech-git commented 3 years ago

PROBLEM DESCRIPTION

After flashing tasmota32-webcam.bin to a AIThinker Cam whenever I apply a template or change de Module on the configuration pages the board "stops working", ie, it doesn't connect to wifi nor start the hotspot again.

For it to work again, I have first to erase the firmware and flash tasmota32-webcam.bin again. Only flashing without erasing doesn't work either.

REQUESTED INFORMATION

Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!

- [X] If using rules, provide the output of this command: `Backlog Rule1; Rule2; Rule3`:

No rules were used

- [x] Provide the output of this command: `Status 0`:

20:35:43 MQT: stat/tasmota32/STATUS = {"Status":{"Module":1,"DeviceName":"Tasmota","FriendlyName":["Tasmota"],"Topic":"tasmota32","ButtonTopic":"0","Power":0,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":1,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0}} 20:35:43 MQT: stat/tasmota32/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota/release/tasmota.bin","RestartReason":"Software reset CPU","Uptime":"0T00:03:33","StartupUTC":"2020-10-29T19:32:10","Sleep":50,"CfgHolder":4617,"BootCount":3,"BCResetTime":"2020-10-29T20:30:38","SaveCount":10}} 20:35:43 MQT: stat/tasmota32/STATUS2 = {"StatusFWR":{"Version":"9.0.0.3(webcam)","BuildDateTime":"2020-10-25T19:21:40","Core":"1_04","SDK":"v3.2.3-14-gd3e562907","CpuFrequency":240,"Hardware":"ESP32","CR":"363/699"}} 20:35:43 MQT: stat/tasmota32/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["Nao Tem Biscoito",""],"TelePeriod":300,"Resolution":"558180C0","SetOption":["00008009","2805C8000100060000005A00000000000000","00000000","00006000","00000000"]}} 20:35:43 MQT: stat/tasmota32/STATUS4 = {"StatusMEM":{"ProgramSize":1184,"Free":1984,"Heap":103,"PsrMax":4095,"PsrFree":3345,"ProgramFlashSize":4096,"FlashSize":4096,"FlashFrequency":40,"FlashMode":3,"Features":["00000809","8FDAC787","00140001","000000CF","010013C0","40000981","80004000","00000000"],"Drivers":"1,2,3,4,5,7,8,9,10,12,20,21,24,26,27,29,81","Sensors":"1,2,3,5,6"}} 20:35:43 MQT: stat/tasmota32/STATUS5 = {"StatusNET":{"Hostname":"tasmota32-2920","IPAddress":"192.168.0.20","Gateway":"192.168.0.1","Subnetmask":"255.255.255.0","DNSServer":"181.213.132.2","Mac":"24:62:AB:F2:0B:68","Webserver":2,"WifiConfig":4,"WifiPower":17.0}} 20:35:43 MQT: stat/tasmota32/STATUS6 = {"StatusMQT":{"MqttHost":"192.168.0.150","MqttPort":1883,"MqttClientMask":"DVES%06X","MqttClient":"DVES_F20B68","MqttUser":"DEVuser","MqttCount":1,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30}} 20:35:43 MQT: stat/tasmota32/STATUS7 = {"StatusTIM":{"UTC":"2020-10-29T19:35:43","Local":"2020-10-29T20:35:43","StartDST":"2020-03-29T02:00:00","EndDST":"2020-10-25T03:00:00","Timezone":"+01:00","Sunrise":"07:33","Sunset":"17:34"}} 20:35:43 MQT: stat/tasmota32/STATUS10 = {"StatusSNS":{"Time":"2020-10-29T20:35:43"}} 20:35:43 MQT: stat/tasmota32/STATUS11 = {"StatusSTS":{"Time":"2020-10-29T20:35:43","Uptime":"0T00:03:33","UptimeSec":213,"Heap":103,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"Nao Tem Biscoito","BSSId":"D4:AB:82:4B:45:13","Channel":8,"RSSI":96,"Signal":-52,"LinkCount":1,"Downtime":"0T00:00:03"}}}

- [X] Provide the output of the Console log output when you experience your issue; if applicable:
  _(Please use_ `weblog 4` _for more debug information)_
Here's the **SERIAL LOG** for after I press the "save" button on the template page:

20:40:16 WIF: Checking connection... 20:40:16 HTP: Configure Other 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 363/699, Busy 0 20:40:16 CFG: CR 371/699, Busy 0 20:40:16 CFG: CR 379/699, Busy 0 20:40:16 CFG: CR 387/699, Busy 0 20:40:16 CFG: CR 395/699, Busy 0 20:40:16 OTH: MQTT enable ON, Emulation 0, DeviceName Tasmota, FriendlyName Tasmota, Tasmota2, Tasmota3, Tasmota4, Tasmota5, Tasmota6, Tasmota7, Tasmota8 20:40:16 SRC: WebGui from 192.168.0.3 20:40:16 CMD: Group 0, Index 1, Command "BACKLOG", Data "Template {"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}; Module 0" 20:40:16 HTP: Restart 20:40:16 SRC: WebGui from 192.168.0.3 20:40:16 SRC: Backlog 20:40:16 CMD: Group 0, Index 1, Command "TEMPLATE", Data "{"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}" 20:40:16 CFG: CR 396/699, Busy 0 20:40:16 MQT: stat/tasmota32/RESULT = {"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1} 20:40:16 SRC: Backlog 20:40:16 CMD: Group 0, Index 1, Command "MODULE", Data "0" 20:40:16 MQT: stat/tasmota32/RESULT = {"Module":{"0":"AITHINKER CAM"}} 20:40:17 CFG: Saved, Count 12, Bytes 4096 20:40:17 APP: Restarting ets Jun 8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DOUT, clock div:2 load:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:8896 load:0x40080400,len:5828 entry 0x400806ac 00:00:00 CFG: Loaded, Count 12 00:00:00 QPC: Count 1 00:00:00 CFG: CR 396/699, Busy 0 00:00:00 SER: Set to 8N1 115200 bit/s



### TO REPRODUCE
Flash tasmota32-webcam.bin on the [AIThinker Cam](https://pt.aliexpress.com/item/32961163394.html). Apply the AI Thinker template from the [documentation](https://tasmota.github.io/docs/ESP32/#aithinker-cam): 
{"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}

### EXPECTED BEHAVIOUR
The board should restart and then boots with the new template. But it "hangs" and doesn't connect to wifi and doesn't start the hotspot.

### SCREENSHOTS
_If applicable, add screenshots to help explain your problem._

### ADDITIONAL CONTEXT
If I can provide any other information, please let me know

**(Please, remember to close the issue when the problem has been addressed)**
utech-git commented 3 years ago

I don't know if the commit above was supposed to fix this or you are still working on it, but I downloaded the new version of the tasmota32-webcam.bin, all the "Needed Files", erased the previous firmware, flashed the new one and the situation still persists, here's the Serial log for after I hit the Save button

20:56:40 HTP: Configure Other
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 362/699, Busy 0
20:56:40 CFG: CR 370/699, Busy 0
20:56:40 CFG: CR 378/699, Busy 0
20:56:40 CFG: CR 386/699, Busy 0
20:56:40 CFG: CR 394/699, Busy 0
20:56:40 OTH: MQTT enable ON, Emulation 0, DeviceName Tasmota, FriendlyName Tasmota, Tasmota2, Tasmota3, Tasmota4, Tasmota5, Tasmota6, Tasmota7, Tasmota8
20:56:40 SRC: WebGui from 192.168.0.3
20:56:40 CMD: Group 0, Index 1, Command "BACKLOG", Data "Template {"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}; Module 0"
20:56:40 HTP: Restart
20:56:40 SRC: WebGui from 192.168.0.3
20:56:40 SRC: Backlog
20:56:40 CMD: Group 0, Index 1, Command "TEMPLATE", Data "{"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}"
20:56:40 CFG: CR 395/699, Busy 0
20:56:40 RSL: stat/tasmota_F20B68/RESULT = {"NAME":"AITHINKER CAM","GPIO":[4992,1,1,1,1,5088,1,1,1,1,1,1,1,1,5089,5090,0,5091,5184,5152,0,5120,5024,5056,0,0,0,0,4928,1,5094,5095,5092,0,0,5093],"FLAG":0,"BASE":1}
20:56:41 SRC: Backlog
20:56:41 CMD: Group 0, Index 1, Command "MODULE", Data "0"
20:56:41 RSL: stat/tasmota_F20B68/RESULT = {"Module":{"0":"AITHINKER CAM"}}
20:56:41 CFG: Saved, Count 10, Bytes 4096
20:56:42 APP: Restarting
ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DOUT, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5828
entry 0x400806ac
ets Jun  8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DOUT, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5828
entry 0x400806ac
⸮00:00:00 CFG: Loaded, Count 10
00:00:00 QPC: Count 1
00:00:00 CFG: CR 395/699, Busy 0
00:00:00 SER: Set to 8N1 115200 bit/s

Here's the Serial log for when I power off the board after the "crash":

ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0⸮

And the Serial Log for the subsequent power ons

ets Jun  8 2016 00:22:57

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DOUT, clock div:2
load:0x3fff0018,len:4
load:0x3fff001c,len:1044
load:0x40078000,len:8896
load:0x40080400,len:5828
entry 0x400806ac
⸮00:00:00 CFG: Loaded, Count 10
00:00:00 QPC: Count 4
00:00:00 CFG: CR 395/699, Busy 0
00:00:00 SER: Set to 8N1 115200 bit/s
Staars commented 3 years ago

I can confirm this. Will take a look too.

Staars commented 3 years ago

Okay, found something. @arendst May I suggest to try to fix this in the TasmotaSerial library? I would need a bit of time for testing these changes.

jonas5064 commented 3 years ago

I have the same problem..

Jason2866 commented 3 years ago

Have you tried after the changes from yesterday?

Staars commented 3 years ago

For me it works now.

utech-git commented 3 years ago

Yep, that's working for me too now. Thanks everybody!