Use ESPHome with e-ink Displays to blend in with your home decor!

Thank you!

1 Like

Really enjoyed reading this project and have since purchased the necessary stuff myself. Am well on my way, with some nice first results.

I myself have a dynamic energy contract, which means I have a different energy rate every hour. Of course I try to automate as much as possible with Home Assistant. But some olders appliances like my dishwasher I still have to turn on by hand.

So I was wondering if anyone had already managed to display a graph? I already have the price data in Home Assistant and am already plotting on a dashboard with apexcharts. But I would love to be able to display it on this display so I don’t have to grab my phone.

I did just that with the [Display Component — ESPHome]
Don’t have the code for it since it didn’t come out very pretty so I abandoned it quickly.

Since the graph component plots the history, what I did was simply to create a template sensor in home assistant with the state equal to a future price, e.g. price 12 hours from now. Then use the graph component to plot that sensor for 12 hours.

2 Likes

That’s a clever idea :grin:, I’m going to give that a try, thanks

what plants water level sensor are you using? What’s your opinion on those sensors you’re using? Are the values they measure relevant?

Hi ! I’m using the Xiaomi Mi Flower Care sensors, they send data to my home assistant server over bluetooth.
I’m not sure the values they measure are very precise, but I only use the humidity value and it’s precise enough to know when to give my plants some water.
The only downside is that they run out of battery quite fast, I need to change the batteries once every 3-4 months :confused:

1 Like

I was so inspired by your e ink display on the release party @madelena so I went straight to Amazon and order what I need to do this my self. Thanks for sharing your project!

I have got everything up and running but I have an issue the brightness of the display is so poor that I almost can’t read anything. I have tried everything I can think of but can’t find a solution. Anyone has stumbled across this issue and know how to fix it?

If you look closely you can se what´s on the screen :slight_smile:

How do you control the e-ink display? Check the switches on the board as in the post above.

3 Likes

You are a star! I am using an e-Paper ESP32 Driver board and I changed the PIN 1 to on and now it´s working properly! Thanks!

Maybe a stupid question but is the only way to update the ESP32 with the new configuration to install in ESP Home on HA? Or is there an easier and quicker way I haven’t found?

You can use different ways to work with ESP devices, ESPHome as an Add-on in HA is the most comfortable one. But you can install ESPHome on its own, see here:

https://esphome.io/guides/installing_esphome.html

There are other projects to write software for ESP devices, it should even work if you want to use your Arduino IDE, but there I’m not sure.

I wouldn’t bother and use ESPHome, installed whatever way seems comfortable for you. The thing is, you need some kind of method to save the configuration of your devices, and ESPHome is a convenient way to do so.

This is what the ESPHome website says:

If you want to create and edit ESPHome projects, install ESPHome on your computer or inside Home Assistant (it’s free!).

1 Like

Just finished mine, based on @makai work published here Air Quality Sensors + E-Ink Display using ESPHome.

WhatsApp Image 2023-07-15 at 15.04.28

I had to rotate the screen because that’s the space I had on the wall. Also changed a few data fields
and positions because of the sensors I am using and from a designed prospective.
The frame was DIYed from red oak, powered AC power with a small USB adapter.

code and more info can be found here: GitHub - idan-shine/4.2-e-ink-display: conf and fonts for a e-ink displayed based on esphome for displaying temp and other info

2 Likes

Really nice! Also put mine in a frame

Thanks, I have installed the Home Assistant add-on, it works great! What is the easiest way to upload a new configuration to the esp?

Another question, I have looked for the logic around the placement, the it.printf(100, 235, part but I cant find anything, Does anyone know where to read about the logic so there is easier to calculate the placement on the screen?

You need to upload every code change to the ESP board by clicking on “Save and Install” in the top-right corner of the project. The first value in parentheses represents the right-left position, while the second one represents the top-bottom position. You can read more on Display Component — ESPHome

1 Like

Thanks for the link, that explains a lot. But what I don’t understand is what number is the center of the screen for example. I first taught that one digit was one pixel but it doesn’t seams like that. It is possible to know that to plan the layout a lite better?

This is how far I have come now

You have a screen with a resolution of 480x800 pixels. Using these values, you determine the coordinates of the anchoring point. You can use various text alignments, for example: TextAlign::TOP_CENTER, TextAlign::CENTER_RIGHT, TextAlign::CENTER_LEFT, TextAlign::TOP_RIGHT, etc.

1 Like

ok, that probably way I can’t get it right, because of the text alignments. Thanks, will try that!

I don’t quite understand if it’s worth displaying the clock on this screen. The manufacturer recommends updating it at least once every 180 seconds. Otherwise, there will be artifacts

Hi All,

Just wanted to drop in and say thanks for all the help, below is mine now complete. The Sun turns to the moon position at night.

I only have the time update when there is motion in the main room.

3 Likes