Migrating to ESPHome from Tasmota

Flashed a sonoff mini with tasmota 8.1 ‘lite’ build and am now trying to flash it to ESPHome OTA. Compiled and downloaded a binary using the HASS.io plugin but when I upload to the mini the tasmota build gives me ‘ERROR - Not compatible’ when trying to flash.

It’s got 570kB free and the bin I have is only 400kB so I don’t think it’s that. Any ideas?

Thanks!

I ran into this just the other day. Try going to the Tasmota console and typing “SetOption78 on”

5 Likes

For anyone interested:

  • Tasmota changed a lot of things from version 7.2 and to help prevent bricking when OTA flashing they blocked downgrading too far and it seems to also block flashing to alternative firmware.

  • I posted on the Tasmota support chat and was instructed to downgrade incrementally, so to flash 7.2, then to flash just below 7.2 to get out of the restriction and enable flashing to ESPHome.

Unfortunately this bricked my only mini before I got to try the ESPHome bin. I got back to 7.2 OK but then the flash to 7.1 ‘basic’ bricked it. All I can think is that remnants of 7.2+ messed it up.

The little device was working great with Tasmota though so I’ve ordered a few more but won’t be doing OTA flashing. Luckily I have access to a 3D printer so going to have a go at making theplen’s jig (here on Thingiverse), then I’ll make sure to flash a blank bin first to get a clean firmware.

I ran into this just the other day. Try going to the Tasmota console and typing “SetOption78 on”

Thanks. Very interested to hear if this works, would have saved me a shedload of trouble.

1 Like

I had installed Tasmota on a dimmer since it didn’t have ESPHome support out of the box. Once I was ready to load ESPHome, I figured I could just load it OTA but ran into the same error you had. I definitely didn’t want to go through pulling the dimmer back out of the wall to serial flash, so I finally found this which took care of it for me. It did take a few extra tries before I figured out the syntax was “SetOption78 on” or “SetOption78 1” though…

1 Like

Just tried this on Tasmota 8 moving to ESPHome and it worked like a charm! I normally flash the included Tasmota 7.0 as an intermediary to ESPHome when using TuyaConvert and don’t have this problem. But I was playing with Tasmota 8 on a switch trying to get something to work and then ran into the new OTA check issue. Fortunately I had just seen this post so I was in luck! Thanks guys!

Mine’s unbricked now too - printed the jig and used without issue. :stuck_out_tongue: :grinning:

I cannot thank you enough for this! Genius!

1 Like

Yes I had read about this setoption78 before I tried a tuya/rasmota/esphome conversion and was glad I had. Thanks to @ab0tj

I’ve recently flashed with Tuya Convert and had Tasmota 8.1.0.2 installed.

Tried SetOption78 suggestion but was getting ‘Upload buffer miscompare’ error.

Had to flash 7.2 tasmota-minimal.bin and then 7.2 tasmota.bin and now ready to convert to ESPHome.

1 Like

SetOption78 on worked for me too. Thanks for your help!

1 Like

Sorry to necro an old thread, but I’ve run into what appears to be the same issue.

I have a device with Tasmota 9.2.0 on it, I’ve done the “SetOption78” command (and verified that, after reboot, it’s still on), but when I upload the ESPHome-generated bin file, I’m still getting a “Upload Failed” and “Upload buffer miscompare”.

Anyone have a solution other than downgrading Tasmota (which is doable but seems annoying) or just reflashing over a wired serial connection (which requires removing the device from where it’s installed to get at the wiring, which is a PITA).

I’ve just successfully downgraded from 9.2.0 (Julie) to 7.2.0 (Constance) and then over to ESPHome.

From v9.2.0;

  1. SetOption78 on
  2. Install 8.5.1 - tasmota-minimal.bin
  3. Reboot
  4. Install 8.5.1 - tasmota.bin
  5. Reboot

Now you’ll be on Tasmota v8.5.1

From v8.5.1;

  1. SetOption78 on
  2. Install 8.1.0 - tasmota-minimal.bin
  3. Reboot
  4. Install 8.1.0 - tasmota.bin
  5. Reboot

Now you’ll be on Tasmota v8.1.0

From v8.1.0;

  1. SetOption78 on
  2. Install 7.2.0 - tasmota-minimal.bin
  3. Reboot

Now you’ll be on Tasmota v7.2.0. It is the ‘minimal’ version so won’t really be good for anything, so flash across to ESPHome before doing anything else

6 Likes

@subzzz Thanks for this tasmota downgrade method path. Works great on my Shelly2.5 and so easy! Done in <5mins!

Many thanks. This works, but is such a PITA. I hope the ESPHome folks provide a conversion path in the future.

Hi, just tried to do the same thing and really simplified the process. I flashed the 9.5.0 Lite using the process above, then my ESPHome bin. Success! Thanks for the hints that got me there, a lot of steps can be shaved off.

TL;DR the only reason it’s not working with a full Tasmota is because there isn’t enough space left, so installing a lite version (much less scary than the minimal version, if you screw that one up it won’t come back online) is enough to get my device running ESPHome.

2 Likes

I ran into this for the first time today. I found out that you can just gzip your ESPHome file as long as you are using Tastmota 9 or higher. That fixed the problem immediately without having to down- or cross-grade - I’m currently using the full version of Tasmota 11.1.0 and it takes up so much space I couldn’t even upload the uncompressed “lite” image. That’s when I realized they were providing all the images gzipped too and figured it was worth a try just compressing my own firmware first. Works great - I think I will open an issue with ESPHome to see if it can optionally compress the image prior to downloading just to eliminate the potential hassle of finding a method to gzip the file.

Anyway, hope this info helps someone out!

Ryan

3 Likes

@pickupthepace Did you ever do this? I succeeded doing the same gzip trick and think having a third image downloading option is useful for those migrating from Tasmota to ESPHome.

Does anybody successfully migrated from Tasmota 12.x to ESPHome via OTA?
If I try it on a ESP32-C3 I‘m stuck at their new safeboot mode.

Is it this thing introduced in tasmota 8? :point_down:

Or something else? Might want to drop a link or something :wink:

No it was introduced with v12

I used the Setoption, but that is I think to allow other firmware than Tasmota

Here is a linkt to the introduced safeboot:
https://tasmota.github.io/docs/Safeboot/