If my understanding is correct, ESPHome need to be re-compiled and uploaded every time the config yaml is changed. Is it possible to separate the binary and the config so that for some config changes, there is no need to re-compile and upload the binary? Thanks.
I believe this is because the yaml is in fact the instructions for what to include in the binary. It wouldn't be feasible for the firmware to include all possible device and peripheral code and enable parts at run time.
I think you can see the esphome intermediate code generation in the file tree during compilation and see how the yaml sections map to blocks of C/C++ code being built.
In practice, this is absolutely no problem. It generally only needs to re-compile a file or two for small changes, which takes seconds, and the OTA update functionality works perfectly so you don't need to unplug it/bring it to your desk.
Imagine this way. You have three papers stack together. The top paper is the duvet. The bottom two paper are the cover. If you flip the bottom page over the other two papers, you have the duvet paper between the cover pages. For the real cover, you can not do that because the three sides are stitched together. So you roll the them together then you can invert through the opening.
Thanks for the explanation. I’m with you up until that last part. Maybe it’s just a “you have to try it kind of thing. Otherwise I’m not really sure the mechanics of what is happening when the unrolling is happening.
>And a lot of people love them—Chromebooks were the best selling laptops on Amazon last holiday season, and teachers and students made them the #1 device in schools last year.
What does this even mean? Does it mean on Amazon all Chromebooks combined sold more than any other laptop categories, Windows or MacBook?