MQTT dot matrix display to show information from MQTT topics

Is there an easy way to remove the zone1, thus making this just a single zone0 display for the whole matrix?
For example, can I just simply comment out the zone1 and configure zone0 to all 8 panels:

P.setZone(0, 0, 7);

I understand this configuration may be the same as other MAX7219 mqtt parola display projects out there, but I’ve been having trouble getting the others running or I don’t like some components of the other ones out there.

Thanks.

This worked for me:

  P.begin(2);
  P.setZone(0, 0, 7);
  P.setZone(1, 70, 70);
  P.setFont(1, wLedFont);
  P.displayZoneText(0, zone0_Message, scrollAlign, scrollSpeed, scrollPause, PA_FADE, PA_FADE);
  P.displayZoneText(1, zone1_Message, scrollAlign, scrollSpeed, scrollPause, PA_FADE, PA_NO_EFFECT);

Try then to address a message only to the first zone.

  • Go on Developers tools / Services
  • Choose mqtt.publish
    (change “wLed-panel-01” with the name you specified in String TOPIC_PREFIX)
topic: wLed-panel-01/zone0_text
payload: hello world

and call the service.

Just wanted to stop by and say thanks for sharing this.

Was in need of a text notifier/clock. And this project fit the bill nicely.

Many thanks.

Great project, I put two of these together this weekend but have a question.

I’m using 8 panels just like the pictures and I have zone1 occupying the left-most panel, with zone0 occupying the remaining 7. If I use one of the characters in zone1 that uses the right-most column of LEDs in that panel combined with scrolleffect, when the sprite returns to the left, it erases that last column of LEDs until the next refresh redraws it. Has anyone else experienced this?

Thanks in advance.

Hello and congratulations on this project, it is really gorgeous, however I would like to find a way to scroll the longest words for a 4 unit dotmatrix, I am searching on the net but I cannot understand how to do it. Has anyone succeeded in doing it?

This is a new version of firmware, v2.0.1
What’s new:

1. fully rewritten code, fixed WDT errors
2. Web UI for Wifi configuration (all settings in UI)
3. Web UI for configuration
4. 3 work modes: MQTT client, Wall clock, Manual send text

First boot:

  • Device will boot in wifi access point mode and write the wifi name and password on the display.
  • AP wifi name: wled-AP
    AP wifi password: 12345678
  • Connect to this AP and configure your wifi settings (connect to your wifi network)
  • When the device connects to the WIFI network, the device’s IP address will be displayed on the zone0
  • Open the browser and go to the device IP address

Download firmware: Release First release · widapro/wledPixel · GitHub

Firmware compiled with next parameters:

// Display pinout
#define DATA_PIN  D7                     // WeMos D1 mini GPIO13
#define CS_PIN    D6                     // WeMos D1 mini GPIO12
#define CLK_PIN   D5                     // WeMos D1 mini GPIO14

Please test the new version and let me know your thoughts on improvements.

P.s. Readme file will come soon.

1 Like

Ver nice will make a new one with new code as old seems working still :wink:

If I get this right we will be able to upload bin via web ? Very nice shot :+1:

It’s time for a new release with new functions. Please welcome v2.1 Open Weather Map support release

Waths new:

  • Open Weather Map client support. Temperature, Humidity, Pressure, Wind speed, and weather icons are supported to be displayed in a separated display zone.
  • Added +1 work zones. Now supports 3 workzones.
  • Support 12 display segments (3 panels with 4 segments each)
  • New display font

For Open Weather Map you need to issue your own free API token.

3 Likes

okay, I got 2.01 installed and it does everything it should.

My problem is I do not know how to publish my temp probe to mqtt

I am using esphome

esphome:
  name: bbq

esp8266:
  board: esp01_1m


# Enable logging
logger:

# Enable Home Assistant API
api:

ota:
  password: "c7e9d7fe5d929c8a6e9b17767e228bbb"

wifi:
  ssid: "xxxx"
  password: "xxxx"
  fast_connect: true
  manual_ip:
    static_ip: 192.168.1.40
    gateway: 192.168.1.1
    subnet: 255.255.255.0
    dns1: 192.168.1.1

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "M2 Fallback Hotspot"
    password: "zvswsewOgCwk"
    
# Example configuration entry
spi:
  miso_pin: GPIO12
  clk_pin: GPIO14

sensor:

  - platform: max6675
    name: "Meat Probe #2"
    cs_pin: GPIO13
    update_interval: 60s  
#    filters:
 #     - sliding_window_moving_average:
#          window_size: 10
#          send_every:  10
      
#sensor:
  - platform: max6675
    name: "Meat Probe #1"
    cs_pin: GPIO15
    update_interval: 60s 

figured it out
Automations

- alias: 'Publish sensor value'
  trigger:
    platform: state
    entity_id: sensor.meat_probe_1
  action:
    service: mqtt.publish
    data_template:
      payload: "{{trigger.to_state.state}}"
      topic: meat/1

what is the format for OWM This does not seem to work

I thought that finding the city ID is difficult and easier to write the name of the city. But I forgot to add on the page that you need to enter the name of the city.

In your case, it should be Landrum, US.

I also want to note that the free OWM API allows you to make requests no more than once every 60 seconds, otherwise you will be banned. I advise you to change your interval from 10 seconds to 60.

worked right away
Thanks,
Grey

Very nice project, I’m waiting for components and I’ll build.
I have a question: I assume that the display is powered from an external 5V source. What is the current source load for 8 LED modules? Or what power supply do you use?

I do not use a separated power supply for LED modules. In my setup, I have one 5V 1A USB power supply and connect it to an ESP board (wemos d1 mini) and 8 LED segments are connected through ESP. Everything works well even at maximum brightness.

Thank you for a quick response.
Last question: If I understand correctly, I’ll upload a bin file using esphome-flasher, for example, on win10 PC. Then I connect to his network using, for example, a phone and set up my LAN. And it is done?

Yes, you are right. After you will open the device page in the browser by device IP which will be displayed on the device LEDs and configure your integrations and display parameters.

Thank you. Yes, I understood the next step (regarding configuration)

Thanks for your work, I really appreciate it. I had already used the old version of wLed, now I’m trying the new one but i noticed that the controls and effects no longer work, maybe the keywords have changed? I can only set effects for all texts directly from the web interface, but I need to alternate as I publish via mqtt. Thanks in advance for your reply.

Did you find out where the problem is?
I’m just building this project and I’m wondering what might surprise me.