Realizziamo un display LCD (Nokia 5110) su Home Assistant con ESPHome.

In questo articolo vedremo come integrare un LCD (Nokia 5110) su Home Assistant, tramite ESPHome per visualizzare quello che più ci piace. Vediamo cosa ci occorre per questo progetto:

Iniziamo con il nostro progetto:

Per iniziare dobbiamo scaricare il Font da utilizzare sul display, io ho scelto Arial Bold , dopo averlo scaricato, andiamo a inserirlo nella dirctory di ESPHome . File Editor > Config > Esphome > Upload file.

Ora passiamo ad assemblare il Display con il Mini D1 come da fig.

Display LCD (Nokia 5110)

Collegamenti da fare tra Il Mini D1 e il Display (Nokia 5110) Vedi Fig.

PinOut tra LCD e Mini D1

Apriamo il nostro Home Assistant e creiamo un nuovo progetto su ESPHome, io l’ ho chiamato Nokia, e compiliamo il software da caricare.( vi ricordo per maggiore informazioni vi consiglio di andare a leggere la guida ufficiale su ESPHome.

La parte software da caricare è questa:

Qui sotto il codice da copiare e incollare

spi:
  clk_pin: D5
  mosi_pin: D7
  
font:
  - file: 'Arial Bold.ttf'
    id: font1
    size: 14

display:
  - platform: pcd8544
    reset_pin: D0
    cs_pin: D8
    dc_pin: D1
    contrast: 50
    lambda: |-
      it.print(0, 0, id(font1), "PENDOLAS");

Prima di caricare il software bisogna che si settano alcuni parametri. per ottimizzare al meglio la visuale sul disdplay.

  1. Nella sezione Font > Size : impostare la dimensione del Font
  2. Nella sezione del display > contrast: impostare la luminosità. Ogni display ha la sua luminosità.

Se volete vedere sul display l’ora e la data con qualche scritta, questo è l’esempio:

spi:
  clk_pin: D5
  mosi_pin: D7


time:
  - platform: homeassistant
    id: hass_time

  
font:
  - file: 'Arial Bold.ttf'
    id: font1
    size: 12

display:
  - platform: pcd8544
    reset_pin: D0
    cs_pin: D8
    dc_pin: D1
    contrast: 30
    lambda: |-
      it.strftime(1, 0, id(font1), "%H:%M ",id(hass_time).now());
      it.strftime(1, 16, id(font1), "%d.%m.%Y" ,id(hass_time).now());
      it.print(2, 32, id(font1), "PENDOLAS");

Ora siamo pronti per caricare il nostro software. Buon divertimento.