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.1k stars 4.79k forks source link

Sonoff basic has trouble connecting to wifi after update. #17789

Closed Martin-Dolan closed 1 year ago

Martin-Dolan commented 1 year ago

PROBLEM DESCRIPTION

A clear and concise description of what the problem is.

After updating several sonoff basic modules to 12.3.1 if I use the 'lite' version, they work fine. If I use the 'sensors' version (which was my goal as I have BME280 on some of them) or if I use the 'standard' version, they wont connect to wifi. After entering wifi ssid and password they try but don't connect. I connected one to my computer via serial adapter, reflashed using tasmotizer including a full erase etc.. Also tried the updates via the module web interface and also the tasmota web installer via computer serial port. I can connect to it via phone wifi, and enter the credentials, and when it reboots it won't connect. Tried uploading wifi credentials via tasmotizer, also didnt connect on reboot.

What I've tried:

what works:

what doesn't work:

REQUESTED INFORMATION

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

- [ ] If using rules, provide the output of this command: `Backlog Rule1; Rule2; Rule3`:
```lua
  Rules output here:
- [ ] Set `weblog` to 4 and then, when you experience your issue, provide the output of the Console log:
```lua
  Console output here:

TO REPRODUCE

Steps to reproduce the behavior:

EXPECTED BEHAVIOUR

A clear and concise description of what you expected to happen.

SCREENSHOTS

If applicable, add screenshots to help explain your problem.

ADDITIONAL CONTEXT

Add any other context about the problem here.

(Please, remember to close the issue when the problem has been addressed)

Jason2866 commented 1 year ago

What exact type of Sonoff Basics the are? Revision? Maybe you post Photos?

stefanbode commented 1 year ago

Since 12.3 we have several issues with wifi connect or wifi loss afte some time and device gets disconnected. some mentioned power supply is the issue. Maybe. I also have a Zigbee Bridge showing the same behavior. For me my first guess is to change from dynamic sleep to normal (setoption60) and then define sleep 20. Cannot guarantee, but it looks like that these devices stay online.

Jason2866 commented 1 year ago

@stefanbode Maybe the fix https://github.com/arendst/Tasmota/pull/17786 merged today does help/solve. Anyways if it is Sonoff Basic R2 it is useless to search deeper. The reason why the Tasmota-lite Version exists is this device. It is not able to run a full Tasmota version. Hardware design is crap. Especially the power supply.

Jason2866 commented 1 year ago

Since 12.3 we have several issues with wifi connect or wifi loss afte some time and device gets disconnected. some mentioned power supply is the issue. Maybe. I also have a Zigbee Bridge showing the same behavior. For me my first guess is to change from dynamic sleep to normal (setoption60) and then define sleep 20. Cannot guarantee, but it looks like that these devices stay online.

None of my devices has issues. No more Sonoff Basics. The all died (with defect power supply) after a few years.

epandi commented 1 year ago

I'm having exactly the same issue on a sonoff basic (non v2) with a bme280 sensor attached to it combines with the Tasmota Sensors build. When reverting back to 12.2.0 all works fine.

Jason2866 commented 1 year ago

@epandi Can you try latest development version? There is a fix of a regression regarding sleep function not restored to switch back to a higher sleep level. Sleep is active and working but the default higher value before was not restored. Edit: Adding additional equipment which needs some current can always be a problem with a Sonoff Basic. The power supply is not designed for.

epandi commented 1 year ago

@Jason2866 thanks for the suggestion, I've just flashed 12.3.1.4 (sensors) dev from the Ota server and my sonoff basic device did come back online after this upgrade. Also my bme280 sensor information is sent over mqtt like before. For me this issue is resolved, I hope this will also resolve the issue from @Martin-Dolan.

barbudor commented 1 year ago

@epandi Could you please share your Sonoff Basic configuration ? Are you using PWM outputs or Led PWM commands on that device ?

epandi commented 1 year ago

@barbudor

22:49:55.174 CMD: Backlog Template; Module; GPIO 255:
22:49:55.319 MQT: stat/whiskeykast/RESULT = {"NAME":"Generic","GPIO":[1,1,1,1,1,1,1,1,1,1,1,1,1,1],"FLAG":0,"BASE":18}
22:49:55.537 MQT: stat/whiskeykast/RESULT = {"Module":{"1":"Sonoff Basic"}}
22:49:55.743 MQT: stat/whiskeykast/RESULT = {"GPIO0":{"32":"Button1"},"GPIO1":{"640":"I2C SDA"},"GPIO2":{"0":"None"},"GPIO3":{"608":"I2C SCL"},"GPIO4":{"0":"None"},"GPIO5":{"0":"None"},"GPIO9":{"0":"None"},"GPIO10":{"0":"None"},"GPIO12":{"224":"Relay1"},"GPIO13":{"320":"Led_i1"},"GPIO14":{"0":"None"},"GPIO15":{"0":"None"},"GPIO16":{"0":"None"},"GPIO17":{"0":"None"}}

22:46:58.437 CMD: Status 0
22:46:58.446 MQT: stat/whiskeykast/STATUS = {"Status":{"Module":1,"DeviceName":"WhiskeyKast","FriendlyName":["WhiskeyKast"],"Topic":"whiskeykast","ButtonTopic":"0","Power":1,"PowerOnState":3,"LedState":1,"LedMask":"FFFF","SaveData":0,"SaveState":1,"SwitchTopic":"0","SwitchMode":[0,0,0,0,0,0,0,0],"ButtonRetain":0,"SwitchRetain":0,"SensorRetain":0,"PowerRetain":0,"InfoRetain":0,"StateRetain":0,"StatusRetain":0}}
22:46:58.483 MQT: stat/whiskeykast/STATUS1 = {"StatusPRM":{"Baudrate":115200,"SerialConfig":"8N1","GroupTopic":"tasmotas","OtaUrl":"http://ota.tasmota.com/tasmota/tasmota-sensors.bin.gz","RestartReason":"Software/System restart","Uptime":"0T00:07:37","StartupUTC":"2023-01-25T21:39:21","Sleep":50,"CfgHolder":4617,"BootCount":31,"BCResetTime":"2022-12-17T11:24:41","SaveCount":37,"SaveAddress":"FA000"}}
22:46:58.518 MQT: stat/whiskeykast/STATUS2 = {"StatusFWR":{"Version":"12.3.1.4(sensors)","BuildDateTime":"2023-01-25T10:56:52","Boot":31,"Core":"2_7_4_9","SDK":"2.2.2-dev(38a443e)","CpuFrequency":80,"Hardware":"ESP8266EX","CR":"366/699"}}
22:46:58.538 MQT: stat/whiskeykast/STATUS3 = {"StatusLOG":{"SerialLog":2,"WebLog":2,"MqttLog":0,"SysLog":0,"LogHost":"","LogPort":514,"SSId":["xxxxxxxxxx","xxxxxxxxxx"],"TelePeriod":300,"Resolution":"558180C0","SetOption":["40008009","2805C80001000600003C5A0A192800000000","000000C9","00006000","00004000","00000000"]}}
22:46:58.576 MQT: stat/whiskeykast/STATUS4 = {"StatusMEM":{"ProgramSize":695,"Free":308,"Heap":18,"ProgramFlashSize":1024,"FlashSize":1024,"FlashChipId":"14405E","FlashFrequency":40,"FlashMode":"DOUT","Features":["00000809","8F9A8787","0415A005","B7F7BFCF","05DA9BC4","64367CC7","00084052","20000000","54000020","00004081"],"Drivers":"1,2,3,4,5,6,7,8,9,10,12,14,16,17,20,21,24,29,34,62,65","Sensors":"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,17,18,19,20,21,22,26,28,31,34,37,39,40,42,43,45,51,52,55,56,58,59,62,64,66,67,74,98"}}
22:46:58.622 MQT: stat/whiskeykast/STATUS5 = {"StatusNET":{"Hostname":"whiskeykast-3662","IPAddress":"192.168.1.11","Gateway":"192.168.0.1","Subnetmask":"255.255.252.0","DNSServer1":"8.8.4.4","DNSServer2":"8.8.4.4","Mac":"5C:CF:7F:72:CE:4E","Webserver":2,"HTTP_API":1,"WifiConfig":2,"WifiPower":17.0}}
22:46:58.646 MQT: stat/whiskeykast/STATUS6 = {"StatusMQT":{"MqttHost":"192.168.0.222","MqttPort":1883,"MqttClientMask":"DVES_%06X","MqttClient":"DVES_72CE4E","MqttUser":"sonoff","MqttCount":4,"MAX_PACKET_SIZE":1200,"KEEPALIVE":30,"SOCKET_TIMEOUT":4}}
22:46:58.672 MQT: stat/whiskeykast/STATUS7 = {"StatusTIM":{"UTC":"2023-01-25T21:46:58","Local":"2023-01-25T22:46:58","StartDST":"2023-03-26T02:00:00","EndDST":"2023-10-29T03:00:00","Timezone":99,"Sunrise":"08:29","Sunset":"17:35"}}
22:46:58.694 MQT: stat/whiskeykast/STATUS10 = {"StatusSNS":{"Time":"2023-01-25T22:46:58","BME280":{"Temperature":20.0,"Humidity":39.1,"DewPoint":5.7,"Pressure":1025.9},"PressureUnit":"hPa","TempUnit":"C"}}
22:46:58.711 MQT: stat/whiskeykast/STATUS11 = {"StatusSTS":{"Time":"2023-01-25T22:46:58","Uptime":"0T00:07:37","UptimeSec":457,"Heap":18,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":4,"POWER":"ON","Wifi":{"AP":1,"SSId":"xxxxxxxxxx","BSSId":"64:D1:54:F9:F3:E5","Channel":10,"Mode":"11n","RSSI":58,"Signal":-71,"LinkCount":4,"Downtime":"0T00:00:43"}}}

Jason2866 edit formatting

epandi commented 1 year ago

I guess I was cheering a bit too fast. Device lost connection. But at least the connection was up for a moment. I'll check the device tomorrow if it got its connection back.

stefanbode commented 1 year ago

I might be wrong. Following findings. Most are sonoff devices (e.g.zigbee Bridge) but also one wemos D1 mini. All have a bit complicated WIFI access. Quite far away. Device seems not to crash. Button still work. Serial not tested for sure. Mains connected. 240V. Dangerous!! Power the device solves problem in my cases.

stefanbode commented 1 year ago

I cannot confirm that the light version does not have the issue. Same there. I updated on of my devices to .4 version right now and change back to Setoption60 off. Let's see what's happening.

Martin-Dolan commented 1 year ago

Sorry for the delay in getting back to you all. Here is the photo as requested of one of the devices and its board. (This is one with an upgraded flash, and pin header added but I have others that are "standard" with same issue.

PXL_20230126_080307229

I will update the firmware to the dev branch version on one and see if it works.. (one that I don't have to climb ladders to get to it if it screws up haha)

Martin-Dolan commented 1 year ago

Update. Didn't work, can't even get phone to connect to it :( Phone says obtaining IP address then drops it. Does that a few times and then says access point temporarily full.

Connected to it by not using the device DHCP, but it wont give me a web page

I've got to go out for a few hours, will try again when I get back

Jason2866 commented 1 year ago

@Martin-Dolan This is the known bad batch R2 version. The train has ended for that device with a Tasmota version that luckily works. Tasmota-lite is the smallest version we can do.

@stefanbode Replace the to weak LDO on the board of the Wemos D1 mini clone, and your problems will be gone. Original D1 mini has a more powerful one.

Jason2866 commented 1 year ago

Closing since the issue is caused from the hardware. The powers supply is too weak to power the esp8266 as needed.

Martin-Dolan commented 1 year ago

Thanks for the update and letting me know. What is the best alternative these days ?

Jason2866 commented 1 year ago

My choice is a Shelly1

epandi commented 1 year ago

Since 12.3 we have several issues with wifi connect or wifi loss afte some time and device gets disconnected. some mentioned power supply is the issue. Maybe. I also have a Zigbee Bridge showing the same behavior. For me my first guess is to change from dynamic sleep to normal (setoption60) and then define sleep 20. Cannot guarantee, but it looks like that these devices stay online.

For me this reply from @stefanbode did the trick for my sonoff basic R1( backlog Setoption60 1; sleep 20; ) . My device stays online and keeps responding ❤️.

Martin-Dolan commented 1 year ago

One last question, do shelly1 devices have some spots I can solder some extra wires to add access to other IO lines for BME280 humidity sensor etc?

Jason2866 commented 1 year ago

Nope since https://tasmota.github.io/docs/devices/Shelly-1/

stefanbode commented 1 year ago

Sonoff with 12.3.1.4 lite and dynamic sleep is online for about a day. Keep you postet RSSI strength is 54

wchulze commented 1 year ago

I don't understand the bad power supply. Martin-Dolan tried to supply the device externally. He wrote: Martin-Dolan tried it using 3.3v from the computer serial adaptor

With a bad power supply, a computer / microcontroller typically crashes completely. That part of the hardware works and another part doesn't is strange.

lalo-uy commented 1 year ago

The computer serial adaptor is not a very good power supplier. At least add a 470uF in parallel with it. Better get an independent power supply

El El vie, 27 de ene. de 2023 a la(s) 17:34, Wolfgang Schulze < @.***> escribió:

I don't understand the bad power supply. Martin-Dolan tried to supply the device externally. He wrote: Martin-Dolan https://github.com/Martin-Dolan tried it using 3.3v from the computer serial adaptor

With a bad power supply, a computer / microcontroller typically crashes completely. That part of the hardware works and another part doesn't is strange.

— Reply to this email directly, view it on GitHub https://github.com/arendst/Tasmota/issues/17789#issuecomment-1407046445, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACXBW4JQX4VW2AII5HAVTGLWUQWMHANCNFSM6AAAAAAUF7GM3M . You are receiving this because you are subscribed to this thread.Message ID: @.***>

stefanbode commented 1 year ago

Update: device still online. 2d5h. Power supply is essential for operating. Quite strange things can happen. Therefore on any self developed board it is good advice to solder a 470mircoF capacitor on the 3.3V line. This stabilize quite a lot. Adding this capacitor on the 3.3V rail would most likely also solve the problem if power supply is the issue. At least for the firmware update the the GND and 3.3 is exposed on Pins. Should be no big deal to add a capacitor here. I will now a POW2 with tamp sensor with the .4 firmware let's see what happen here. This will not be the lite version.

wchulze commented 1 year ago

In this case you use Low-ESR type. Switch mode power supplies are relatively high-frequency. The series inductance and the series resistance of the capacitor should be as low as possible.

Martin-Dolan commented 1 year ago

I tried a low-ESR cap (10v 1000uf) and it didn't help :(
This was while using a usb to provide the power.

I have some of those Hi-link HLK-5M03 power supply modules, I might try as an experiment to isolate the board power supply and try the Hi-link if possible

stefanbode commented 1 year ago

I personally have concerns that power is the reason. But @Jason2866 is 100% sure and he quite more experienced than I am. To summarize my latest findings: Seems only happen on bad wlan connection. RSSI 40 or below. Setoption60 On to change the sleep from dynamic do static seems to fix it Also last recent versions not really make a difference. Anyhow one sonoff basic with .4 version and a RSSI of 51 seems to be stable.

Jason2866 commented 1 year ago

I tried a low-ESR cap (10v 1000uf) and it didn't help :( This was while using a usb to provide the power.

I have some of those Hi-link HLK-5M03 power supply modules, I might try as an experiment to isolate the board power supply and try the Hi-link if possible

Replacing the power supply should help. A border line switching power supply can make many bad things. Dropping voltage, delivering wrong voltage, generate HF pikes and what not. To see the real reason a oscilloscope is needed. Adding a cap does often help, but if the real reason is unknown this is only a try. Thats why i recommended to trash.

That said the R2 has a thermal design issue. esp8266 is mounted to heat the flash chip. I have a user R2 where this was the reason for failure. After replacing it started working again with Tasmota-lite. The power supply is still bad....

wchulze commented 1 year ago

At the moment I'm observing 3 posts that are said to have problems with the power supply. It seems to me that Tasmota version 12.3.1 is being used there. I've been using Sonnoff Basic, Wemos clones and Esp-01 hardware for a long time without problems with older Tasmota versions.