Last active
July 30, 2025 06:56
-
-
Save funkfinger/dff3834011c1ebe66feb3514e12315ac to your computer and use it in GitHub Desktop.
Scrolling ESPHome LED MAX7219 Display
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
substitutions: | |
name: "song-display-workroom" | |
friendly_name: Song Display Workroom | |
board: seeed_xiao_esp32c3 | |
devicename: matrix7219 | |
template_helper: sensor.workroom_scroll_display | |
api_encryption_key: !secret song_display_workroom_encryption_key | |
# Display pins | |
clpin: GPIO8 # D5 is connected to CLK of MAX7219 | |
cspin: GPIO20 # D6 is connected to CS of MAX7219 | |
mopin: GPIO10 # D7 is connected to MOSI of MAX7219 | |
esphome: | |
name: ${name} | |
friendly_name: ${friendly_name} | |
esp32: | |
board: ${board} | |
framework: | |
type: esp-idf | |
api: | |
encryption: | |
key: ${api_encryption_key} | |
logger: | |
wifi: | |
ssid: !secret wifi_ssid | |
password: !secret wifi_password | |
ota: | |
- platform: esphome | |
id: my_ota | |
password: !secret ota_password | |
spi: | |
clk_pin: ${clpin} | |
mosi_pin: ${mopin} | |
text_sensor: | |
- platform: homeassistant | |
id: scroll_text | |
entity_id: ${template_helper} | |
font: | |
- file: "fonts/pixelmix_bold.ttf" | |
id: digit_font | |
size: 8 | |
display: | |
- platform: max7219digit | |
cs_pin: ${cspin} | |
num_chips: 4 | |
intensity: 5 | |
scroll_enable: True | |
scroll_speed: 40ms | |
scroll_delay: 0ms | |
scroll_dwell: 0ms | |
lambda: |- | |
it.printf(0, 0, id(digit_font), id(scroll_text).state.c_str()); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{% if is_state("media_player.workroom", "playing") %} | |
| {{states.media_player.workroom.attributes.media_title}} - {{states.media_player.workroom.attributes.media_artist}} | |
{% else %} | |
{{now().strftime("- %x - %I:%M %p")}} - {{states.sensor.my_weather_station_temperature.state}}{{states.sensor.my_weather_station_temperature.attributes.unit_of_measurement ~ " -"}} | |
{% endif %} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
IMG_1436.mov