New e-paper display non-DIY with Homey integration

I’ve been looking for a simple screen for a while now to have a clean, unobtrusive dashboard on my desk. An e-paper screen could meet this need, but the devices I found were always DIY. Since I’m not technical enough for that, I never bought an e-paper screen, until now…

This week, my eye was caught by a screen from Seeed Studio, the reTerminal E1001 monochrome. It’s a ready-to-use device with a 7.5-inch screen with a screen refresh time of 2 seconds., 800x480 resolution, an ESP32-S3 processor, and a 2000mAh battery that lasts up to 3 months. The price is $69, excluding shipping and customs costs. There’s also a color version of this screen, but I ruled that out due to the long refresh time of 12 seconds; I think it’s more suited for displaying photos and less for a dashboard.

The reTerminal E1001 comes standard with zero-code integration with SenseCraft HMI at no extra cost. On the online test site, you can create a dashboard. Of course, I tested the data connection with Homey, which was surprisingly easy to set up with just a few mouse clicks via the Homey API. You can also set the refresh frequency yourself and import images and icons.

There is a fairly extensive wiki available for more information.

I have ordered one, and the delivery time is 7 to 14 days. If there’s interest, I can share my experiences with it afterward.

To be clear: I have no commercial interest in others buying products from Seeed. I simply want to share my initial enthusiasm for the product.

3 Likes

This sounds very interesting. I am also curious about how you connected it to Homey to push updates to the display.

This is the api definition screen in SenseCraft HMI, and can be used by multiple api’s. For each api value on the screen you have to define this screen (copy function is available). The json result will be presented. After clicking one of the json rows (eg. temperature), the related value will be visible on the screen.
I think the data will be pulled from Homey in a self definied frequency (minutes).

If needed, you can use Data transform (Advanced function) with javascript (but than it’s not zero code anymore):

1 Like

Does that mean that you have to install a specific app to use the API link under ‘Remote Data URL’? And to obtain the authorization key mentioned in the ‘Request Headers’?

Or is that a build-in Homey API? Do you have a link to the available documentation you used on how to get the link and authorization info.

No, nothing to install. Just call the Homey api. Athom has 2 variations for Homey 2023:

  1. web connection via Athom. Api url is https://[your cloudId found in Homey developer Tools/system].connect.athom.com
  2. “direct” local connection to your own Homey device (could have some performance improvements, but more complex to setup)

I would start with option 1, please see Getting started with API Keys as an introduction. Extend the url with the data you wish to retrieve like all Homey devices and capability values like temperature. The url extension would be in that case /api/manager/devices/device. The complete url to fill in would be:
https://[your cloudid].connect.athom.com/api/manager/devices/device

Request header is always Authorization and the Value (field right from Authorization) is: Bearer [api key] (type the text Bearer followed by a blank and your api key).

1 Like

sounds nice!

@Amersfoort if I read your answer well its a pull from homey, not a push.

What is the update rate of that API call?

If its longer than 2sec, the refresh rate of the screen does not matter right?

Please read the 3rd post of this topic:

.

I’d like to distinguish the hardware refresh rate time, which at 2 seconds is quite fast for an e-paper display (flicker twice), and the software driven change screen information rate, which is in minutes (configurable). As far as I know, one can define three different software screens.

1 Like

This week, seven days after ordering, I received the Seeed reTerminal E1001 e-paper display. The total cost was €73 (including shipping and customs).

My first impression of the reTerminal e1001 is that it’s a robust device with a nice screen and easily accessible buttons. SenseCraft HMI is the zero-code online tool for designing screens for this device. It’s simple and user-friendly.

By default, you can display three photos on the display. Expanding the memory with a micro SD card (not included) provides space for up to 20 photos.

During testing, I noticed that all dynamic features, such as battery percentage, are displayed in the display designer, but not on the E1001’s screen (like N/A values). When connecting to the Homey API, the data isn’t refreshed, JavaScript isn’t executed, and the image URL isn’t displayed. I know the app is still in beta, and I hope this will improve soon.

I’ve looked on the Homey forum for temporary alternative ways to control a screen, but these are too technical and too complex for me.

I can’t yet determine the final release date for the software. It looks promising, but there is still work to be done on the software side.

1 Like

Curious how things are moving a couple of days later…

No new experiences yet compared to my post 8. I’ve since learned from a Seeed support representative that the current SenseCraft HMI beta software for defining screens will be getting a major update in October, which will hopefully fix some beta issues.

I’ll report new developments here.

2 Likes

There’s a major update for the SenseCraft HMI, which offers an UI for connecting to other environments like Homey without programming on de Seeed reTerminal e1001 (mono) and e1002 (color).
Main improvement: the connection with Homey is now working. All data read from Homey via an API can be displayed on the e-ink screen (no api images). Nice javascript options for formatting data if needed. Only capabilities with a period in their name don’t work (yet).

The software is still in beta (and still contains bugs), but it’s a major functional and technical improvement and offers sufficient stability to work with. To use the updated UI, the display’s firmware also needs to be updated.

Try it, and please share your experiences in this forum.

Example with Homey data api connections:

3 Likes

That looks nice! Are you still satisfied? Do you like using it even though it has no touchscreen? And can it show data from different sources like Homey and Google Calendar on one screen? Thanks!

The display performs better than the first version of the HMI screen designer, but still contains software bugs (like all software).

I did report to support that the flickering has doubled during a screen change since the last update, and that I miss gray scales when defining the screen layout for the monochrome screen (E1001). They were aware of this and expect to optimize it in a future software version. The screen is capable of handling it, but the software is not yet (which is better than the other way around).

I bought the screen as an information display on my desk, with a screen refresh every 5 minutes. Because of this, I don’t miss the touchscreen functionality.

Each data component (field) can contain a separate API. This allows data from multiple APIs to be shown on a single screen. I am not familiar with the Google Calendar API.

Even without owning a screen, you can try out a screen definition, including APIs, yourself at https://sensecraft.seeed.cc/hmi → Smart Home (Experience Now). The layout cannot be saved in that case.

1 Like

I bought one as well, but my impression is that there is still a lot of work needed:

  • The data often fails back to N/A when there is a refresh, to work again the next refresh. I suppose because of a timeout. I noticed during tests with postman that the response time varies quite a bit
  • Switching to a local (by ip address) link, doesn’t work. The same works in postman, but reverts to N/A on the screen
  • Some fields don’t work, I guess related to the earlier mentioned “.” in the name of the field.

Very interesting idea, but still quite limited.

For my E1001 (mono) there is a new firmware version 1.0.6 with less screen refresh flicker.

@Greuntesop I’m using a local Homey connection via https://[my Homey id].homey.homeylocal.com:4859/api/manager/logic. Port forwarding in Homey setup and modem is required.

I think it has quite some potential, but more software work has to be done by the Seeed developers.

But that’s not “local”? If you need to enable port forwarding on the router etc..

I want to use http://192.168.1.80/api/manager/devices/device which should work for devices connected to the local network.

In the meantime, I have been able to put all the data I wanted on the screen, including the one with the “.” in the name, but at this point we are far from “zero code” territory, but it is working sort of reliable.

For me data key path with a “.” is still not working on my E1001 and firmware v1.0.6. How did you manage this (example capability: meter_power.daily_delivery_cost)?

Well, that’s where some javascript comes in. So I basically put the top level JSON element in the “data key” field. For instance

b84850f0-adee-4d6f-b132-92b37xxxxxx

Next you use a custom function to get your value which allows you to access the objects in the JSON object directly:

const result = value.capabilitiesObj[“meter_power.imported_today”][“value”];
return '${result} Kwh'

This allows you to access items with a “.” in the name instead of putting

b84850f0-adee-4d6f-b132-92b37xxxxxx.meter_power.imported_today.value

in the data key field

1 Like

No luck with the javascript commands here, even with straight quotes like:

return value.capabilitiesObj[‘meter_power.daily_cost’][‘value’];

The result is [object Object].
Any suggestions?