Flashed the bluetooth component yesterday. The device is online but I am not able to check if the bluetooth works.
I used the exact same configuration as you posted, but disabled the web proxy in addition.
Flashed via OTA. Two things I found to be aware off:
it is not the bluetooth component that require the flashing via wires, it is the change of the framework instead. Because the framework is the same as at my first flashing, I flashed this time via OTA.
Disable webserver because there is a risk to run out of memory.
After flashing there was no new entity or device like “bt proxy” or so. My Shelly BLU Door is not delivered yet. Therefore I am not sure if it works fine but the software is installed.
The ESP32 Platform component should be configured to use the esp-idfframework, as the arduino framework uses significantly more memory and performs poorly with the Bluetooth proxy enabled. When switching fromarduino to esp-idf, make sure to update the device with a serial cable as the partition table is different between the two frameworks as OTA Update Component updates will not change the partition table.
Thanks, no idea how I missed the part that says that only switching type needs the TTL flash…
However I just tested my second working shelly plus plug via ota flash (was esp-idf) and now it is “dead”:
No clue what is going on. I just added the parts I mentioned before and flashed . Without the BT part it worked.
Config is now like this. Maybe you can spot a differenc to your
Might try it with a small drill, as I “bricked” mine.
You can still do the initial flash via converting to tasmota first, as mentioned above. So as long as you don’t brick it, there is no need to serial flash it.
How can I find out these values for bl0937? ( I have one plug by local bytes that I forgot to make note of the values before converting to esphome and now I can’t get super precise measurements)
# Higher value gives lower watt readout
current_res: "0.001"
# Lower value gives lower voltage readout
voltage_div: "1830"
No, not possible, since the partition scheme used is the Tasmota safeboot scheme. This partition scheme has only one OTA slot, the other slot used for the OTA updating is a factory partition slot fashed with a special (very small) Tasmota version just made doing the update job. So the partition scheme is totally different to the one used for esphome.
For OTA flashing esphome a convert Shelly to esphome update firmware needs to be written in Mongoose SDK. This tool has to do the repartitioning from Shelly scheme to esphome scheme and writes a new bootloader. The Shelly bootloader allows only signed firmwares.
Tasmota does this all right after boot when Autoconfig feature menu in Tasmota is used. The Autoconfig downloads a new bootloader and the Berry runtime Code to flash The new bootloader and writes the Tasmota Partition scheme. Without the Repl Berry included in Tasmota this tool would have not been possible with Tasmota.
But if I flashed Tasmota bootloader, it will accept all firmwares, not signed only? If yes, then I could flash ESPHome if partition scheme was ESPHome compatible?
Edit: I’ve had a fix added to mgos32-to-tasmota32 so this now works, and then I uploaded a “legacy” esphome image and it worked, and was found by HA. I then tried to add this to the working yaml:
and the device is now seemingly bricked. It was my understanding that this should be fine unless I was changing frameworks, but in this case I didn’t - it was IDF for both.
not knowingly - just the mgos32-to-tasmota32 dance, then had esphome build a “legacy” image and upload it via the tasmota web ui. it did come up OK running esphome, it was just once I’d enabled bluetooth proxy, rebuilt and done an OTA update that it stopped responding.
There does not seem to be a good way to switch the new Shellys with the locked bootloader to esphome through the mgos32-to-tasmota32:
if you upgrade the partition layout change then you get the bootloader rewriten and unlocked but this breaks esphome OTAs (as it does not support the safeboot process)
if you flash esphome with the layout change then OTAs seem to work but to the locked bootloader it keeps booting the first esphome you program.
I described in the esphome dev discord channel what ideas I have to try to enable updates after flashing but I have not started trying yet.
Yes, you can. Just ensure to adjust the config.yaml to your device. In fact I developed the extended OTA as I expect to buy multiple Shelly Plus Plugs and I do not want to have to open them.
If anything goes wrong do not disconnect the power. So far you do not reboot you can keep trying. The only problem I encountered was once that I have tried flashing a full configuration that was too large to fit into the safebot partition. When I got the error I just retried with the right configuration and then it wnt well.
Hi,
I do not really understand, that`s why I want to ask the following question.
Could somebody explain me what is the benefit or the motive about to change shelly firmware?