How to identify the correct ESP platform and board

Hi,

How can I correctly identify the ESP board and platform?
for example, I’m re-using all the time this definition

substitutions:
  device_platform: ESP32
  device_board: esp32dev

is it correct also for and Esp like this one?


or i should go for

substitutions:
  device_platform: espressif32
  device_board: nodemcu-32s

You have to choose one from here

1 Like

What does selecting a specific board do? Like Bremby I have been using a generic board type since a couple of my boards aren’t in that list.

Sets the amount of ram and flash. And pin names.

That’s interesting… I’ve been using the “esp-wrover-kit” board type because my TTGO T-Camera wasn’t listed. Does it set anything with the PSRAM or just the flash and RAM (which I believe is always the same for the esp-wrover)?

I believe the parameters for each platform/board can be seen by clicking on the board name, which takes you to a page like this.

https://docs.platformio.org/en/latest/boards/espressif32/esp32cam.html

ESP32 don’t have the bizarre pin naming like D1, D2 etc that some esp8266 boards use, so just using GPIOxx works on ESP32, see ESP32 Platform — ESPHome

The platformio list is sort of programmed like the first online shops back in the 90th. Where you had no chance for filtering but simply an endless list of goods being availabe. But it was likely invented for selecting a board not for identifying one.

Google picture is your friend. upload a snappy taken with a mobile and you come close to 2-3 possible boards you aren’t 100% sure. Then the platformio list and it’s detail pages do make sense.

1 Like

You missed the filters on the page?

I have this same problem. I wish there was a bunch of pictures of the various boards with the proper definition for ESPHome next to them. I can’t tell if I’ve got the right board defined in my ESPHome yaml file. I have some of these dev boards with a big chip that says: ESP32-WROOM-32, but that’s not found anywhere on the Registry.plaformio.org site: PlatformIO Registry

The device looks like this:

I’ve been using board: nodemcu-32s and it seems to work but is that the proper one? I’m running into blue tooth problems with minimal definition and I suspect that the ESPHome code is getting crisscrossed causing the bootloop. Anyway, I’d love to have positive confirmation for which configuration to use for this board.

What did you write into your yaml to make it work in the end?

I use this:

substitutions:
  node_name: my_esp32_device
  friendly_name: My ESP32 Device
  board: nodemcu-32s
  framework: arduino
  log_level: DEBUG

packages:
  wifi: !include common/wifi.yaml
  device_base: !include common/device_base_esp32.yaml

... define all the custom stuff down here

the two included boilerplate’ files are used to simplify fanning out a few sensors and defining stuff I want on all my devices.

It is always worth to look precisely. My board is a 30 pin type. Now I got it working with a very short data cable and these parameters:

esp32:
  board: esp32dev
  framework:
    type: arduino 

HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
May it help others!

I came here with the same question, but after some research my focus has changed. I have previously loaded ESPHome onto a few other devices, but am still pretty new to this.

When I was looking for ESP32-S3-DevKit-C1 I came across one ridiculously cheap on Ali - AU$4.80 including post from china, a tenth of lost locally (before postage) - so I succumbed. It is probably a legitimate ESP32-S3-WROOM-1 N16R8 chip … but the board layout is somewhat different (most noticeably the RST and BOOT buttons in different location) to the other DevKit boards I have found.

I accept that (as others have pointed out) it is the module (the chip) which is important because it provides all the features; the board basically just provides the connections, so follow my board’s pinout when connecting. Makes sense.

However, buying a cheap board from china there is no support, and no knowing whether the correct product was delivered, or works as intended. If I upload ESPHome to the board and it fails, I won’t know whether it was my ESPHome misconfiguration or the board or module itself. Therefore wondering if there’s any sort of self-test I can do to prove basic functionality before starting to upload my own programs.

I connected a USC cable from RasPi 3B to the ESP32-S3’s right-hand USB-C port, and run “minicom -b 115200 -o -D /dev/ttyACM0” on the RasPi. A few moments after the ESP32 powered on it started flashing its LED. When i pressed the RST button the ESP32-S3 did output some diagnostics to the USB port, including memory size information, then started the LED rainbow chase program.

I reckon that’s enough proof and info as I can expect.

esptool provides that info.

1 Like

Using following:
Windows PC + Python + esptool,
then connect ESP in bootloader mode (GPIO00 to GND before start),
then run esptool flash-id.

https://manpages.ubuntu.com/manpages/lunar/man1/esptool.1.html