Bricked Sonoff devices after upgrade to 1.14.2 / 1.14.3 (THE SOLUTION IS TO ROLL BACK TO 1.13.6)

For what it’s worth, I run Hassio on a p3B+, and use the esphome plugin for that.

I have a bunch of Sonoff Basics driving lights in my home. When I saw that the 1.14 upgrade was out, I began to upgrade some of my devices (as time permitted). I got about 8 or so done before I noticed that 1.14.2 was out.

Started over at the top of the list again. But, this time, the devices don’t come back. I stopped after doing the second one, having noticed that the first one still hadn’t come back online. She’s dead, Jim. I’m just super grateful I didn’t use the Update All feature, or I’d have a house full of dead devices.

I’m not really sure what to do. Device #1 is in a stupid place in the roof, getting to it will be hard and unpleasant. Device #2 is inside the wall - easier to get to but annoying.

These are both Sonoff Basics, both ESP8266s. Device #1 has a static IP address, Device #2 is on DHCP, but has not requested an IP address. I’ve cycled the power a few times, but they don’t come back. This sucks quite a lot.

I tried to roll back to 1.13.6 by specifying the version to run in the plugin config, and it does seem to download the previous version but then it fails to start - I get a bad gateway when I try to view the ESPHome web interface. By removing the config line that specifies the old version, ESPHome will start, but I don’t dare update any more devices since 1.14.2 seems to be producing bricks.

Any advice?

EDIT: I managed to roll back to 1.14.0. Still dead.

EDIT2: This is interesting. Device #2 has a touch sensor attached to it (light switch), and still responds to it (can turn the light on and off). So the device isn’t actually bricked, but it isn’t communicating on the network. DHCP server hasn’t given it an IP address, so, I dunno what’s up with that. Sadly I have no such luck with Device #1, as there isn’t a switch attached to it - software switching only. But this looks to be a networking issue with 1.14.2, then.

I had something similar… Can you see the devices in esphome? The router may have assigned it a new IP address and it’s misbehaving.

You should be able to flash OTA and reserve the IP address for the device in the firmware. I also did it at the router level just in case.

Hi @LUNZ.

Nope, the devices both show as Offline. One of them has a static IP address, but is not responding to pings. The other uses DHCP, but is not showing up in the DHCP server (I use a dedicated pihole for DNS filtering and IP address allocation).

I think newer versions of ESPHome include a WifiManager Portal. Search for new Wifi Networks. You may find that these devices have set up their own Access Point and are waiting for you to connect and configure network settings on them.

Unfortunately that is optional and has to be configured. https://esphome.io/components/wifi.html#access-point-mode

@swiftlyfalling thanks for the suggestion, I did a scan for new networks, but as @tom_l says, that’s an option and I’ve never needed it.

I’m not sure where this leaves me, because I don’t dare update any more devices, but, for the same set of reasons, I also don’t dare create any new ones either.

In my case, I have upgraded several Sonoff Basics. What I have noticed is that they are communicating via the api, but I cannot ping, or access their built-in web page. This same behaviour is happening to some Arilux AL-LC01 devices that I upgraded.
Interestingly, I get slightly different results with the Sonoff S31 outlets; they respond to ping and their web page comes up. However, all of the text sensors are listed but no corresponding values are visible on the web page. The api does report the text sensor values back to HA correctly.

I hope that this information can assist @OttoWinter in correcting these problems.

I flashed a Sonoff S31 and it’s currently bricked. I am going to have to take it apart and resolder the wires to reflash it I think.

@pstapley I’ve been following a thread over on github; it seems the problem is to do with stable wifi transmitter levels. Your device is not actually bricked, it just can’t connect to the network.

Which means, it can’t connect to HA, and can’t be pinged. So, it’s sort of not bricked, but, for all practical purposes, it’s bricked.

Right now the only effective method is to roll back to 1.13.6 (if you can; I can’t), and physically re-flash your devices with the older firmware. It’s looking like they might have a fix in the dev branch, so, I suspect 1.14.3 is imminent.

In my case, physically reflashing will involve a fat old man having to climb into the roof and crawl from rafter to rafter until I reach that b*****d Sonoff.

it seems the problem is to do with stable wifi transmitter levels.

So what happens if you bring the mountain to Mohamed?

Take your Access point / router right up to where the sonoff is installed in the wall.

1 Like

… That is not actually the worst idea, especially given that I have a mesh network, so I could actually just pick up one of the APs and hold it right next to the Sonoff. I highly doubt this is going to work, but, your idea is just so spectacularly out there that it deserves to be taken seriously. I’ll report back.

I tried that with my nodemcu and it didn’t help. (Within 2m of router)

Nips. It didn’t work. Still, it was totally worth a try.

I reflashed my S31. It appears that the UART which is required for the power/current/voltage sensor is causing the issue. When I remove it the device is rock solid. Of course the sensors don’t work but the relay, button and LED still do.

uart:
  rx_pin: RX
  baud_rate: 4800

I just upgraded to 1.14.3, reflashed and still having issues.

1.4.13 is not showing as an option for me yet; I’m running hassio. When it is released, I’ll test.

EDIT: oh there it is. Gosh, now I have to pull bricked devices out of the wall and manually flash them. FUN STUFF!

I noted that ESPHome 1.14.3 was available for me today. Decided to update it, and my Rpi rebooted. There was a warning about Protection Mode being disabled (which is usually enabled). When I clicked to enable that feature, the Rpi rebooted. All my Teckin ESP-flashed devices clicked and rebooted, and now my Home Assistant is no longer available. It isn’t booting, updating, or anything. I have zero access to anything now.

Update: The Rpi was in a reboot loop. The SD Card was corrupt. Luckily I made a full SD Card back-up 6 weeks ago, so I was able to re-flash the SD Card and was back up and running within an hour. And only had to add three sensors, and tweak the interface.

ALWAYS MAKE A BACK-UP! And don’t rely on the SnapShot feature, because if the card gets corrupt, then you’ve lost everything and can’t reload the snapshot!

OK, but, are you now running 1.14.3? See, one of the things this patch is supposed to fix is devices not connecting to WiFi.

EDIT: also, damn, that must have been a bad feeling. Glad you were able to save it.

It’s currently back to running 1.13.6, as that was the version from 6 weeks ago. HA hasn’t flagged the newer version yet, and there doesn’t seem a way to force an update check. I also have the ESPHomeDev version installed, as I had issues with building firmwares previously…

Also, I’ve just realised some of my yaml code in HA ESPHome will now be incorrect, as I had tweaked some of the code to add more bluetooth devices. They’re working at the moment because the firmware’s are solid, but if I had forgot to tweak the code before re-building new firmwares, I’d have lost some devices. So easy to get lost in what I’ve done…!

Phew! So glad you have a decent backup regime.