ESP32 compatibility question

Hi,

Im new to the ESP stuff and was wondering any sure way to know if a ESP32 device would connect with Homey?

I see there are few ESP32 Apps

I would like to build an Air quality monitor mostly using the Sensirion 66 with a display, LCD or E-ink.

I saw this all in one display with the ESP32-S3N16R8 chip https://www.waveshare.com/esp32-s3-touch-lcd-4.3.htm?sku=25948

I guess I just attach the sensor to one of the header connectors, not sure if I need the Adafruit SEN6x Adapter Breakout have not looked that far yet.

Thanks!

Yes, you can connect it to Homey. You should write some code to send a request to https://webhook.homey.app/[cloudid]/airquality?tag=[value].

Replace [cloudid] with your Cloud ID (you can find that in More→Settings→General in the Homey mobile app) and replace [value] with the value from your air quality sensor. You can then create a Flow like this:

Use the “Event is received“ as the trigger.

You can also use a Virtual Device instead of a variable. You can repeat this process for the separate values from the sensor (simply change the event).

To perform actions on the ESP32, you can make a HTTP server on the ESP32 and make web requests to that server from Homey using this Flow card:

This is an example that sends a GET request to http://192.168.107.131/reboot, but you can of course use any URL.

Probably the easiest way, both on the ESP32 and on the Homey side, is using ESPHome.

The (relatively) new ESPHome app for Homey seems to support environmental sensors.

The display will most likely be supported by ESPHome, but not by Homey. There’s probably also no two-way communication between ESPHome and Homey possible, only one-way (from ESP32 to Homey).

But there aren’t really any alternatives that are easy to implement. Using webhooks as suggested by @smarthomesven is also one-way, plus it’s pretty basic.

Eventually you will have to code what’s being displayed on screen yourself, either with ESPHome or with a low-level library like LVGL (which ESPHome also supports, and in a much more friendly way that having to deal with low-level LVGL library calls).

I recently build a Ring Intercom replacement using an ESP32-C6 EVB. It was a bit of a painful process to set the environment up (but Claude helped a lot), and in the end I was able to create a Matter over Thread device (via esp-matter). ESPHome is still a lot easier to setup and I hope they add proper Matter support at some point, but if you are somewhat familiar with programming those boards, then going straight for Matter can be a great alternative, as you can use it in any eco system.

There’s already a pretty decent Zigbee component for ESPHome (the author of which is also working on finalising official ESP32 Zigbee support in ESPHome) which I’m running on some ESP32C6’s. So far, it’s been very reliable.

If you add a webserver on the ESP32, you can also send commands to it.

Sure, and you can also use something like MQTT for that, but the native ESPHome protocol provides much better integration, including REQ/REP, calling automations running on the ESP32 (including passing data), etc.

Plus you get a more tightly integrated device, with all sensors/actuators/etc grouped into one device. Although I’m not sure how much of those features are supported by the Homey ESPHome app (my experience is based on Home Assistant).

Hello everyone,

This give me a good feeling then that pretty much any ESP chip should work.

Hopefully is as easy as using the ESPHome App. and I dont have to go to deep into coding or the other suggestions.

Then I would slowly get the parts and see if I can put it together.

Thank you!

You’d try the fairly new ESPHome Controller app as well.

The ESPHome app is not maintained, and open for dev transfer (Athom seemed to be interested);
As result it doesn’t work with boards using newer ESP firmwares ( after May 2024).

that is good to know.

still trying to figure out what sensor or sensor combo to get.

Thanks!