Skip to main content
ESPBoards

Guide to Setting Up and Troubleshooting ESPHome on ESP32

Learn how to set up ESPHome on ESP32 boards with our step-by-step guide. Flashing and troubleshooting common issues like 'Improv Wi-Fi Serial not detected'.


Setting up ESPHome for the first time on an ESP32 is a simple yet sometimes finicky process, especially with newer boards like the ESP32-S3 or ESP32-C3. The easiest method to begin is using the ESPHome Web Installer, a convenient tool that allows you to flash and configure ESP32 boards directly from your browser. However, this process can sometimes encounter issues, such as the dreaded: An error occurred. Improv Wi-Fi Serial not detected.

This guide will walk you through the setup process using ESPHome Web Installer, troubleshooting common errors, and exploring what to do when things go wrong with the straight-forward method.

Setting Up ESP32 with ESPHome Web Installer (Preferred Method) #

The ESPHome Web Installer is the most convenient way to set up ESPHome on your ESP32. It is supported by browsers with WebSerial capabilities, such as Google Chrome, Opera, or Microsoft Edge. Using this method, you can flash and configure your ESP32 directly from your browser without needing to install additional tools.

  1. Open ESPHome Web Installer With the supported browser (Opera, Chrome or Edge), go to ESPHome Web Installer

  2. Connect your ESP32 device

Plug in your ESP32 board using a USB data cable, ensure your device is properly powered and detected by your computer.

  1. Connect ESP32 with ESPHome Web Installer

On the ESPHome Web Installer, click the "Connect" button. A browser pop-up will appear showing available USB ports. Identify and select the port corresponding to your ESP32 device. Click "Connect" to establish a connection.

If successful, the ESPHome Web Installer will confirm that your ESP32 is ready for flashing.

  1. Install the ESPHome Firmware on ESP32

After successfully connecting your ESP32, click the "Prepare for First Use" button in the ESPHome Web Installer interface. Follow the on-screen instructions and click "Install" to begin flashing the ESPHome firmware onto your ESP32.

The web installer will connect to ESP32 and start installing ESPHome. The installation process may take a few minutes. Once completed, the installer will confirm that the firmware has been successfully flashed.

If everything is fine, you will get a prompt to setup the WiFi Connection. Enter your WiFi network credentials and that's it! You have your first ESPHome application running on ESP32.

However, when trying to setup Elecrow 7.0" for the first time, we get An error occurred. Improv Wi-Fi Serial not detected.

Installing ESPHome Manually #

An error occurred. Improv Wi-Fi Serial not detected

This issue is common with certain ESP32 boards, such as the ESP32-S3 or ESP32-C3, due to differences in serial communication or board-specific configurations. If the Web Installer fails, you will have to setup ESPHome manually by following these steps.

  1. Install ESPHome on your computer To set up ESPHome on your computer, follow the official instructions provided on the ESPHome installation guide.

If you are using MacOS with Homebrew, you can type

brew install esphome
  1. Test ESPHome Installation

To ensure that ESPHome has been installed successfully, verify the installation by checking the version. Run the following command in your terminal:

esphome --version

If the installation was successful, you should see output similar to this. Meaning ESPHome installation was successfull and our ESPHome version is 2024.11.1:

Version: 2024.11.1

Run ESPHome Dashboard #

To streamline your experience, we’ll use the ESPHome Dashboard for managing and configuring your ESPHome projects, as it provides a user-friendly interface compared to the CLI.

  1. Create Config Folder

The config folder will store your ESPHome project files and configurations. Navigate to the directory, where you want to store your project and create a folder called config:

mkdir config
  1. Run ESPHome Dashboard

To start the ESPHome Dashboard, use the following command in your terminal:

sudo esphome dashboard config

To ensure the ESPHome Dashboard has the necessary permissions to create and manage files in your project’s directory, you must run it with elevated privileges (sudo).

You should see the following output in your terminal:

INFO Starting dashboard web server on http://0.0.0.0:6052 and configuration dir config...
  1. Open ESPHome Dashboard Open browser (Chrome, Opera or Edge) and go to http://0.0.0.0:6052 (the address you got after running the esphome dashboard)

Install ESPHome on ESP32 with ESPHome Dashboard #

Now that your ESPHome Dashboard is running, it’s time to install the ESPHome firmware onto your ESP32 device (in this case, the Elecrow 7.0" Display Board).

  1. ESPHome Dashboard Device Name

In the ESPHome Dashboard, click on "New Device", Click "Continue" to begin the setup process. When prompted, enter a name for your device. For example elecrowlcd and click Next.

  1. ESPHome Dashboard ESP Chip Select

Choose the type of ESP chip your board uses. We select ESP32-S3, which matches the Elecrow 7.0" Display Board.

  1. ESPHome Dashboard Installation Method

On the next screen, click the "Install" button to begin the firmware installation process. Choose Installation Method by select "Plug into the computer running ESPHome Dashboard".

  1. ESPHome Dashboard Select Port

Next screen will appear asking to select a port, where ESP32 is connected. In the list of available ports, select the port corresponding to your connected ESP32 device. For example /dev/cu.usbserial-210 in our case. The installation will start and you will see the progress in the opened console.

At this point, the ESPHome firmware is successfully installed on your Elecrow 7" ESP32 display board. While it may not be doing much right now, we have our first ESPHome program running on the ESP32.

What's Next? #

Now that you have your first ESPHome program running on ESP32, using the ESPHome Dashboard, you can edit the program by adding sensors, etc.

Next to your newly added device, click "Edit". It will open the current configuration running on your ESP32 board.

We will continue setting up the ESPHome by configuring the Elecrow 7.0" Screen in the next post.

Conclusion #

The journey of setting up ESPHome on the Elecrow 7" ESP32 display board demonstrates the flexibility of the ESPHome ecosystem. Starting with the Web Installer offers a quick and convenient method to flash firmware directly from a browser. However, as with many modern devices, newer hardware like the ESP32-S3 can present challenges, such as the "Improv Wi-Fi Serial not detected" error.

When the Web Installer encounters such issues, resorting to a manual setup using ESPHome installed on your computer ensures you maintain control over the process. Running the ESPHome Dashboard further simplifies managing configurations and devices, offering a user-friendly interface to create, modify, and flash firmware.

Through these steps, you’ve successfully set up your Elecrow 7" display board, opening the door to endless possibilities for custom smart home integrations with ESPHome.