Obtain or generate a ESPHome binary to flash to your ESP device. I'll be using the Home Assistant ESPHome Builder Add-On.
1. In ESPHome Builder, select New Device (bottom right corner).
2. You'll be prompted to “Open ESPHome Web” or “Continue” - select Continue
3. Select New Device Setup
4. Provide a name for the new ESP device
5. Select the ESP device type
6. An encryption key will be generated, just select Install
7. Select Manual Download. The binary will start to compile.
8. Once the binary is complete, select Factory Format from the two download options. The binary will download to your local machine (don't flash this binary, delete it. We're not done)
9. Back at the main ESPHome Builder page, select Edit on the new ESP device
10. Add any config that's relative to putting the ESP on the network. For example, I added ethernet config for wESP32
ethernet:
type: RTL8201
mdc_pin: GPIO16
mdio_pin: GPIO17
clk:
pin: GPIO0
mode: CLK_EXT_IN
phy_addr: 0
phy_registers:
- address: 0x10
value: 0x1FFA
page_id: 0x07
use_address: x.x.x.x
11. Click the
1. Connect your ESP device via Serial USB to your local machine
2. Identify the serial port being used by the ESP. In my case, I have /dev/tty.usbserial-110 on my Mac
3. Use esptool to flash the ESP device
esptool.py -p <path-to-serial-port> write_flash <flash-address-to-start-writing> <location-of-bin>
esptool.py -p /dev/tty.usbserial-110 write_flash 0x00000 /Users/ross/Downloads/sensor-hub-1.factory.bin