Integrare qualsiasi TV in Home Assistant

Guide

Scritto da Antonio Mario Longo

In una guida pubblicata qualche giorno fa abbiamo visto come integrare i Broadlink Rm e il custom component Smart IR su Home Assistant | Hassio.

Home Assistant - integrazione device Broadlink Rm e installazione di Smart IR

Purtroppo, siamo rimasti quasi in sospeso poiché, se ipoteticamente non avessimo il file Json del nostro produttore TV, non riusciremmo a comandare il nostro dispositivo.

Quindi ora vedremo come crearne uno, in modo tale da personalizzarlo in base alle nostre esigenze.

Requisiti:

Mettiamoci all'opera senza perdere troppo tempo.

  • Connettetevi con FTP o Samba sul vostro Raspberry, e dirigetevi sul seguente percorso: 
    config/custom_components/smartir/codes/media_player
    
  • Create un file json con un numero a vostro piacere, per esempio: 12345.json, con un qualsiasi editor. 
  • Aprite il file json appena creato e copiate all'interno del file il seguente codice:

 

{
    "manufacturer": "Philips",
    "supportedModels": [
      "26PFL560H"
    ],
    "supportedController": "Broadlink",
    "commandsEncoding": "Base64",
    "commands": {
        "off": "JgAaAB0dOx4cHhweHR4cHhw8HR0dHhweOzsdAA0FAAAAAAAAAAAAAAAAAAA=",
        "on": "JgAcABweHR07HhweHR0dHhw8HR0dHhweHB4dHhwADQUAAAAAAAAAAAAAAAA=",
        "previousChannel": "JgAaAB0eHB46Hh0eHB4cHh07Ox4cHh0dHTwcAA0FAAAAAAAAAAAAAAAAAAA=",
        "nextChannel": "JgAaAB0dHR47HR0dHR4dHRw8Ox4cHhweHR0dAA0FAAAAAAAAAAAAAAAAAAA=",
        "volumeDown": "JgAaABwePBwfHBweHB4dHR0eHDw9Gx0eHDwdAA0FAAAAAAAAAAAAAAAAAAA=",
        "volumeUp": "JgAaABweOx0fHBweHB4dHhweHDw7HR0eHB4dAA0FAAAAAAAAAAAAAAAAAAA=",
        "mute": "JgAaAB0dOx4cHh0dHR4cHh0dHR4cPBwePDsdAA0FAAAAAAAAAAAAAAAAAAA=",
        "sources": {
            "EXT1": "JgAYAB8bHxs9HB4cHzkfHDwcHxsfOjwcHwANBQ==",
            "EXT2": "JgAaAB8bPRsfHB4cHxsfHB46HxsfHDwcHzkfAA0FAAAAAAAAAAAAAAAAAAA=",
            "VGA": "JgAaAB8bHxw8HB8bHzoeHB8bHxweHD0bHxsfAA0FAAAAAAAAAAAAAAAAAAA=",
            "HDMI": "JgAaAB8cHxs9Gx8cHzkfGx8cHhwfGz0cHjofAA0FAAAAAAAAAAAAAAAAAAA=",
            "HDMI Side": "JgAYAD06PBwfGx85HxwfGx8bHxw9OR8bHwANBQ==",
            "AV Side": "JgAYAB8bPRwfGx8bHzoeHD0bHxweOh8bPQANBQ==",
            "Channel 1": "JgAcAB8cPBweHB8bHxweHB4cHxweHB4cHxweOh4ADQUAAAAAAAAAAAAAAAA=",
            "Channel 11": [
                "JgAcAB8cPBweHB8bHxweHB4cHxweHB4cHxweOh4ADQUAAAAAAAAAAAAAAAA=",
                "JgAcAB8cPBweHB8bHxweHB4cHxweHB4cHxweOh4ADQUAAAAAAAAAAAAAAAA="
            ]
        }
    }
}

 Iniziamo a vedere cosa trattano queste stringhe e a modifichiamole:

  • 'manufacturer'  indica la marca del televisore da comandare, quindi, va da sè che bisogna sostituire la voce 'Philips' con la marca del nostro televisore.
  • 'supportedModels', seguita da 26PFL560H, che indica il modello della nostra tv. Quindi, sostituite la stringa '26PFL560H' con il codice del proprio televisore (Attenzione a non eliminare le parentesi quadre)
  • Lasciate invariate le 2 righe successive, che praticamente indicano con quale dispositivo abbiamo catturato i codici e in che base sono i codici IR (32 o 64 bit).
  • 'command' spiega tutti i comandi della tv, e li equivale al corrispettivo codice IR.

Potrete ora iniziare a catturare i codici IR, e ad assegnarli ad ogni tasto premuto sul nostro telecomando.

  1. Dirigetevi su Strumenti per gli Sviluppatori, posizionato nella barra destra di Home Assistant e spostatevi sulla scheda Servizi.
  2. Cercate e selezionate il servizio remote.learn_command
  3. Selezionate l'entità del Broadlink Rm che avete precedentemente configurato.
  4. Scrivete in basso alla riga entity_id il seguente testo :
    entity_id: remote.rm_mini_cucina
    device: television
    command: Off
    
  5. Cliccate su CHIAMA IL SERVIZIO 

Se tutto è andato per il verso giusto, sul Broadlink si accenderà un led fisso bianco indicante che è in attesa di un codice IR da catturare. Mentre, su Home Assistant, comparirà una notifica che vi invita a premere un tasto del telecomando.

  • Posizionatevi con il telecomando vicino al Broadlink e premete il tasto corrispondente al comando che vogliamo catturare.
  • Replicate i codici con i comandi presenti sul file Json di Smart Ir, sostituendo i vari comandi alla voce 'Command' del Servizio con quelli che richiameremo ogni volta alla pressione del telecomando tv.
  • Terminato questo lungo, ma non difficile lavoretto, aprite il file json che Home Assistant ha creato sul seguente percorso sul Raspberry: /configuration/.storage (attenzione è una cartella nascosta quindi da Windows attivare l'opzione Visualizza File e cartelle nascoste).
  • Il file Json creato da Home Assistant è così composto: broadlink_remote_MACDELVOSTROBROADLINK_codes.json

All'interno del file saranno presenti tutti i codici con i relativi comandi che avete catturato.

Il contenuto sarà qualcosa del genere:

{
    "version": 1,
    "key": "broadlink_remote_macvostrobroadlink_codes",
    "data": {
        "television": {
            "Turn on": "JgBQAAABK5IUERQRFDYUERQRFBEUERQRFDYUNhQRFDYUNhQ2FDYUNhQ2FBEUERQRFDYUERMSExITEhM3EzcTNxMSEzcTNxM3EwAFKwABK0kTAA0FAAAAAAAAAAA=",
            "previousChannel": "JgBQAAABLJITEhMSEzcTEhMSExITEhMSEzcTNxMSEzcTNxM3EzcTNxM3EzcTEhMSExITEhMSExITEhMSEzcTNxM3EzcTNxM3EwAFKwABK0kVAA0FAAAAAAAAAAA="
        }
    }
}

  • Copiate i codici dei relativi comandi all'interno del File json creato all'inizio della guida (situato nel percorso config/custom_components/smartir/codes/media_player)
  • Sostituite i codici con quelli già preesistenti accanto ai comandi.
  • Correggete il vostro file yaml che avete creato per l'entità media player in modo tale da avere:

media_player:
  - platform: smartir
    name: Tv con codici personalizzati
    device_code: 12345
    controller_data: remote.rm_mini_camera_da_letto_remote
    power_sensor: binary_sensor.tv_con_codici_personalizzati

  • Eseguite un riavvio di Home Assistant, per poter far riconoscere l'entità appena creata al sistema

Godetevi la vostra tv comandata da Hassio | Home Assistant 

Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.


Vai ai commenti