ESPHome use on a Adafruit Matrix Portal M4

I’ve tried to setup a Adafruit Matrix Portal M4 based 64x32 display using this ESP Wrapper: GitHub - TillFleisch/ESPHome-HUB75-MatrixDisplayWrapper: Custom ESPHome component which wraps the ESP32-HUB75-MatrixPanel-DMA library into a ESPHome display component.
But I can’t seem to connect to the Matrix Portal after compiling. Has anyone used a Cortex M4 based device successfully?
Error in the log:
ERROR Please try running esptool.py --before default_reset --after hard_reset --baud 115200 --port /dev/ttyACM1 --chip esp32 write_flash -z --flash_size detect 0x10000 /data/build/info-display/.pioenvs/info-display/firmware.bin 0x1000 /data/build/info-display/.pioenvs/info-display/bootloader.bin 0x8000 /data/build/info-display/.pioenvs/info-display/partitions.bin 0xe000 /data/cache/platformio/packages/framework-arduinoespressif32/tools/partitions/boot_app0.bin locally.

code:

esphome:
name: info-display
friendly_name: info display
platformio_options:
lib_deps:
- SPI
- Wire
- Adafruit BusIO
- adafruit/Adafruit GFX Library
- GitHub - TillFleisch/ESP32-HUB75-MatrixPanel-DMA: An Adafruit GFX Compatible Library for the ESP32, ESP32-S2, ESP32-S3 to drive HUB75 LED matrix panels using DMA for high refresh rates. Supports panel chaining.

external_components:

  • source: github://TillFleisch/ESPHome-HUB75-MatrixDisplayWrapper@main
    esp32:
    board: esp32dev
    framework:
    type: arduino

Enable logging

logger:

Enable Home Assistant API

api:
encryption:
key: “”

ota:
password: “”

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

Enable fallback hotspot (captive portal) in case wifi connection fails

ap:
ssid: “Info-Display Fallback Hotspot”
password: “”

captive_portal:

I have had some success with changing the board to esp32-s3-devkitc-1
It flashes and shows up in home assistant. I only have brightness and power. I can not get anything to print on the display

I may have messed up the pin out. I’ll look into it more when I have time.

This yaml works for my matrix portal s3

esphome:
  name: esphome-web-c76b40
  friendly_name: Matrix Portal

esp32:
  board: esp32-s3-devkitc-1
  framework:
    type: arduino
    
external_components:
  - source: github://TillFleisch/ESPHome-HUB75-MatrixDisplayWrapper@main

font:
  # gfonts://family[@weight]
  - file: "gfonts://Roboto"
    id: roboto
    size: 20

display:
  - platform: hub75_matrix_display
    id: matrix
    width: 64
    height: 32
    R1_pin: 42
    G1_pin: 41
    B1_pin: 40
    R2_pin: 38
    G2_pin: 39
    B2_pin: 37
    A_pin: 45
    B_pin: 36
    C_pin: 48
    D_pin: 35
    E_pin: 21
    LAT_pin: 47
    OE_pin: 14
    CLK_pin: 2
2 Likes

have you gotten this working? I have the same device and would like to see if I can get ESPhome working with it

1 Like

I ended up not being able to get esphome to work with Adafruit’s Matrix Portal M4. I setup the Matirix Portal to receive messages over MQTT instead. I used the Arduino IDE in the Matrix Portal. Works, but on occasion the Matrix Portal stop receiving MQTT messages has to be rebooted.