I have about 10 shellys flashed with esphome. They are in-wall switches so it's almost impossible to reflash them if something goes wrong. I don't ever want to upgrade the esphome version running on them. If I need to update the config (to change a variable) I'd like to do that with the old version.
But I'd also like to flash newer devices with newer versions of esphome.
Has anybody been in this situation and has any pointers?
Should I run two instances of esphome? Say one called "legacy" (running 2025.10.2 in my case) and a "current" one running the newest esphome? I'm afraid of having to maintain more and more esphome instances as time moves on.
If it ain't broke, don't fix it.
I have over 50 ESPHome devices around the house and never update the firmware on them. Some are buried inside appliances or in walls and invariably updating those may require access to the board. (Some are so old that an OTA upgrade is likely to brick the device).
Just turn off the firmware entity for the device and you'll never be prompted to upgrade again.
I do upgrade ESPHome Builder when available and one ESPHome device on my desktop just to stay current with the changes to protocol or syntax.
Your title about preventing updates doesn't make much sense. It's up to you what and when you update. I have devices running 2022...2026 without any hiccups. Obviously one day i want to update a device from past decade, it's likely asking some extra effort.
It's possible I click "update" on the device by accident. I also might forget that "Update all" will update that device. Somebody else in my family might not know and decide to update because updates are good.