I’m trying to land out a little thing that had to be able to
allow others to input their wifi credentials and few other stuff, like soem parameters that will be passed in the device, such as mqtt broker (from a droplist) and inbound/outbound channels.
as a plus, having a landing page of the device in the user LAN would be great.
I wrote everything in Arduino, but I’d rather shift to ESPhome yaml-like code, but I have to say I’m kinda lost.
Which is the minimal part of code to copy and tinker with, in order to have provisioning and landing page??
There is an option to enable Captive Portal if the esp cannot connect to a preconfigured WiFi network.
The Web Server component should allow you to provide an interface for users to enter MQTT and other data.
You shouldn’t need to fork — unless I’m misunderstanding your objective — esphome is basically its own IDE. To compile a custom firmware, you need to install the esphome toolset on your computer, either via python or docker installation (or if you have Home Assistant OS, you can also install esphome via an Add-on). Once the toolset is installed, there is both a command-line and a web dashboard interface to build a new firmware image from a YAML configuration file. The new image can be deployed over-the-air if the end device has already been flashed with a basic (i.e. web flasher) esphome image, or you can manually flash the esp yourself.
Who is going to use this thing?
Who is going to do continued development on it?
There are many choices for what to use for development. Not sure exactly what the intentions for esphome are, but my take is:
You want the data collected by the device to be useful in Home Assistant.
You want it to be easy for others to use the code you have developed, at the expense of you needing to do more work to make it easier for others.
You want a good solution for OTA updates that is fairly well thought out.
Those are the main reasons I can think of off the top of my head of why one would use esphome as the choice for development.
Arduino is the base. Platformio adds a layer on top that solves some problems and introduces others. Esphome is a layer on top of that, with the intention of making things easier. It does for some, but adds another layer that you need to understand. So be sure you will get the value you seek, there is a steep learning curve ahead, unless you stay at the level of just providing configuration YAML for existing components that are well designed.
Oh, well thanks a lot for putting me out there like that. I thought we agreed not to tell people about the wizard and now ill never get a moment of peace…
If you find a flaming bag of poo on your porch, its probably jusr a coincidence.
I installed the toolchain on my pc and was able to program the boarde via powershell (I’m on windows).
My question is: how do I create a web page that allows me to:
flash the board with a firmware
receive, from the board via web-serial, the wifi that are read via that pop-up notification that informs you of the uploading process. Allow the user to select one and input password, as well as select few other parameter such as mqtt broker and channels (this part happens in the pop-up window as in ESP Web Tools