For the initial configuration, I tried to connect to it directly from my PC using USB and got this error:
Failed to initialize. Try resetting your device or holding the BOOT button while selecting your serial port until it starts preparing the installation.
I tried a reset, different USB cable/port, resetting the board, and holding the boot button on connect (not sure what’s supposed to happen here, but nothing changed). None of those seemed to make a difference so I connected it to my RPi that’s running HA. That seemed to work and it started to install the initial configuration, but then gave me this error:
INFO Reading configuration /config/esphome/humidor.yaml… INFO Generating C++ source… INFO Compiling app… Processing humidor (board: esp32-s2-saola-1; framework: espidf; platform: platformio/espressif32 @ 3.5.0) -------------------------------------------------------------------------------- Tool Manager: Installing platformio/toolchain-esp32s2ulp @ ~1.22851.0 Error: Could not find the package with ‘platformio/toolchain-esp32s2ulp @ ~1.22851.0’ requirements for your system 'linux_aarch64’
This puts the board in programing mode to load the sketch. Not all boards require this step but if it’s getting stuck right when the upload starts, this is usually the fix.
featheresp32-s2
I don’t see this in the list when you start a new device, you can’t just add board types. featheresp32 is the closest match I saw in the list, you can try that.
I figured out that I need to hold boot and then press reset. So, that’s working now.
But, I’m now I’m getting a “Configuration does not match the platform of the connected device. Expected an ESP32 device” error whether I put in featheresp32, featheresp32-s2, or esp32.
Also the platformio site I linked earlier in this post specifies the esp-idf framework for this board, so make sure you have that specified - see ESP32 Platform — ESPHome
I realize that it is in the platform io list after the fact, the first one they used esp32-s2-saola-1gave the error
Could not find the package with ‘platformio/toolchain-esp32s2ulp
Then stated that featheresp32-s2 didn’t work either and assumed the same error. I know that error is from something not in the list and in my next post pointed out that featheresp32-s2 was indeed the board type to use.
@GoodyGizmos the relevant snip from the thread seems like they got a feather working with the following
It validates, but when I go to download the .bin file to performed the ESPTool workaround, I get a “preparation failed” error and the logs look like this:
I assume your referencing this post? You’d be better off posting to git-hub where there are people who have this hardware and have already troubleshot this particular board type.
Being so new to ESPHome, I wasn’t sure if it was something I was doing wrong with the initial configuration. Now I understand that I bought the wrong board (at least for now) and where to look to find boards currently supported by ESPHome.
I’m surprised that ESP32-S2 hasn’t been adopted more rapidly considering its low power options making it ideal for battery power IoT devices. What do you all use for those applications?
The ESP32 is overkill for most ESPHome uses. I buy the Wemos D1 Mini board (about $3.50 each) for most of my ESPHome projects, and I just installed a couple of ESP8266-01 boards (about $1 each) in my cars for presence detection.
Are you all using those chips/cards for low power/battery only applications though? That seems to be where the ESP32-S2 chip would shine (single core, no bluetooth, deep sleep, etc.).
Thanks. I came across posts like that too when I did my own research. Maybe I’ll eventually want to hack my way to a solution to get a board to work before it’s officially supported, but my initial impression of ESPHome was that it was more plug and play for DIY sensors.
Like I said before, I’ll just pay closer attention to which boards I get from now on.