Esphome 2023-4-0 update appears to break MAX7219Digit implementation

After updating to the new 2023-4-0 edition of ESPHome, all four of my ESP devices using the MAX7219 Matrix are displaying gibberish…backward characters, uneven scrolling. It’s a total mess. The update documentation doesn’t mention any changes to the MAX7219 implementation so I can only assume it’s anu unintended bug.

I can confirm that, same behavior here.

I have the same problem…

Looks like there is an open issue for it, which is the way to get it fixed.

Someone’s temporary fix.

1 Like

Adding myself to the thread with the same issue.

Is there any option to go back to the old firmware? Put the new firmware somewhere… :frowning:

I had taken a backup before updating. I restored the system and re installed the esphome devices. That works for me. I don’t know of a way to save the firmware. I wouldn’t think that’s possible since the the firmware is rebuilt on every install for the device.

I don’t get it… according to PR #4727 it should be fixed since Apr 22, 9:59AM GMT+2
But I don’t understand what to do … :disappointed_relieved:

When will we be able to repair our MAX7219 displays ??

:sob:
This was my simple setup…

esphome:
  name: matrix-display

esp8266:
  board: d1_mini

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "REDACTED"

ota:
  password: "REDACTED"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  domain: REDACTED

  manual_ip:
    static_ip: 10.13.4.51
    gateway: 10.13.4.100
    subnet: 255.255.255.0
    dns1: 10.13.4.100

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Matrix-Display Fallback Hotspot"
    password: !secret hotspot_password

captive_portal:
    
time:
- platform: homeassistant
  id: ha_time
  timezone: Europe/Berlin

spi:
  clk_pin: D3
  mosi_pin: D1

status_led:
  pin: D4

font:
  - file: "fonts/pixelmix.ttf"
    id: digit_font
    size: 8

globals:
  - id: new_text
    type: int
    initial_value: "3"

  - id: txt_cycles
    type: int
    initial_value: "1"

text_sensor:
  - platform: homeassistant
    name: "afficheur texte"
    entity_id: input_text.afficheur_txt
    id: txt
    on_value:
      then:
        lambda: |-
                    id(new_text) = 0;

display:
  - platform: max7219digit
    cs_pin: D2
    num_chips: 4
    intensity: 1
    scroll_speed: 50ms
    scroll_mode: STOP
    update_interval: 3s
    lambda: |-
      if (id(new_text) <= id(txt_cycles)) {
        if(id(new_text) == 0) {
          id(txt_cycles) = ceil(strlen(id(txt).state.c_str()) / 6);
        }
        it.printf(0, 0, id(digit_font), "%s", id(txt).state.c_str());
        id(new_text)++;
      } else {
        it.strftime(0, 0, id(digit_font), " %H:%M", id(ha_time).now());
      }  

I don’t think this resolves my issue with the new release. I don’t use flip_x, reverse or any of the other options.

I have the same problem

I think 2023.4.1 which is now released has a bug fix for this.