EspHoMaTriX: A simple clock/status display

EspHoMaTriX: A simple DIY status display with an 8x32 RGB LED panel implemented with esphome.io

It is a very flexible, due to esphome, clock and status display.
It is based on a cheap 8x32 rgb-led matrix and can easily be controlled from home assistant.

This is my working model with 3d-printed case and diffuser.
Displa

In real life it looks much better!

The communication between your host and the display is done with service calls.

e.g. this service call will display the text with an icon door for two minutes

 - service: esphome.ehmtx8266_screen
    data:
      icon_name: door
      duration: 2
      text: Es klingelt bei {{ trigger.id }}

There are a lot of possibility with the component The documentation is also on github https://github.com/lubeda/EsphoMaTrix If you like it, give it a star :star:.

If you don’t like the service way you can also use the cusom notify component

To achive the same result you can call:

- service: notify.myehmtx32
  data:
     message: Es klingelt bei {{ trigger.id }}
     data:
       icon: door

There is an older youtube video There soon will be a newer better one.

The icons are define in the yaml to preview them there is the html option.

There is also an older discussion in the esphome category

Have fun!

11 Likes

I didn’t respect the international users so the time and date display was fixed to the European/German style. There is a new branch available for testing alternatives. See here: https://github.com/lubeda/EsphoMaTrix/tree/date-time

ehmtx:
  time_format: "%I:%M%p"
  date_format: "%m.%d."

The strftime format is described here Time — ESPHome

Without setting these parameters it will show the european style. Now there is no scrolling in case of a long text!!!

2 Likes

There is a german video explaining how to setup my module:

1 Like

Hi there

Nice project.
I’am having trouble with the text/font or pixelwrapper. Something is meesing up my leds.
My led matrix is a 8x32 WS2812B. I have comment out the pixelwrapper, else all the leds was f… up, now at least the 7 weekdays are correct, but the time is still showing weired stuff. If i enable the pixelwrapper, all the leds are even more spread out. I can se the time and date are changing, but i cant read it.

Well, the pixel mapper does not belong to my part of the software, so I can’t help you much. Take a look here A simple DIY status display with an 8x32 RGB LED - #64 by lubeda. Perhaps you should try rotation: 180 because I think in each block left and right are scrambled.
Here is a tool that may help to find a working pixel_mapper FastLED-XY-Map-Generator

Please, if you find the right pixelmapper post it here.

Thanks

There is a new release with no new features but a fixed error.
There is also a tiny discussion on esphome-discord

@lubeda Have a spare led matrix (exactly this one) so going to make one for my son’s gaming set-up. I have looked on your github and the other discussion but could not find it; Do you have the .stl for the case for me?

Hi, there are a lot of cases available, e.g. this AWTRIX Family by Blueforcer - Thingiverse

You can search for “awtrix”, “pixelit” or “8x32” to find other cases on thingiverse and prusaprints.

1 Like

Hello.

Has anyone tried installing EspHoMaTriX in this LED matrix?

This is based on an ESP32 (WROOM32D) and seems to bring a modified software version of awtrix. PixelIT has an initial port also.

Considering how flexible esphome is, I suppose it is also possible to install EspHoMaTriX in it, hence my question.

Thanks in advance.

Would love to know this too. For that pice easier to buy then to build…

1 Like

Hi, not yet!. I already saw this hardware and thought it might be possible to adapt it to EspHoMaTriX but i was scared because of the time needed to do the reverse enginereing.

So this is al done by the pixelit community. I will order a one and give it a try, i expect every needed change is done in the yaml.

Greetings

See my next post.

I just printed Printables and i like it very much. This is no real case, but more a diffusor. Perfect for my need.

Yes, but it is a work in progress!

With the help of GitHub - aptonline/PixelIt_Ulanzi: PixelIt is an ESP8266 and WS2812B LED Matrix based PixelArt display with added Ulanzi Pixel Clock support. i found out:

You need this pixel mapper under display:

  pixel_mapper: |-
      if (y % 2 == 0) {
        return (y * 32) + x;
      }
      return (y * 32) + (31 - x);

this light component

light:
  - platform: neopixelbus
    id: ehmtx_light
    type: GRB
    variant: WS2812
    pin: GPIO32
    num_leds: 256
   .....

The buzzer is on port GPIO15

You can flash the stock device via USB. You have to turn it on by pressing the left and right button for 3 seconds

Please try this:

Hello everybody! This is my first comment in this big community

I am working in this awesome esphomatrix project but having problems for adding new screens. I can see the clock and date changing every 4 and 2 seconds, but I am not able to add a new screen with something like an icon and a silly test string, for example.

I have tried modifying the yaml on esphome but nothing happens. I have also tried to add a service in the developers tools, but I don´t have any esphome service

Any help please?

Thanks in advance

Greetings from Spain

PXL_20230216_225540414|690x388

@lubeda Shared my non-tested YAML draft with you (via Github), don’t know if it may somehow be helpful in your testing (I already incorporated your suggestions above).

Still waiting for mine to delivered, ordered from Germany, but I bet it will be delivered from China…

Can you share your yaml (without passwords)?

I think the problem is esphome. I will explore on this direction. If I find a solution I will tell you

Thanks a lot anyway

Hello again.

I solved my problem. Stupid problem, by the way: I was using my home assistant IP instead of my Esp board IP ,:sob:

Everything works fine now, but I am trying to insert a new window with the weather. I would like to watch the clock/date each 6 seconds (this works fine) and the weather after this for another 6 seconds. After the weather, the clock/date should be shown again. Only the clock/weather is shown now (the default configuration)

Any help, please?

Thanks!

There is no help :wink:

This is by design, my focus was on the display of states. So the clock is shown only if there are no states to display or every x seconds. This is what you see, i will try to find a solution for your request.