Integrare qualsiasi TV in Home Assistant
di Antonio Mario Longo
17 Novembre 2020
Guide
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:
- Device Broadlink Rm 3 mini https://amzn.to/2UO64i9
- Raspberry con istallato Hassio o Home Assistant (https://www.vincenzocaputo.com/home_assistant/istallare-hassio-su-raspberry-pi4-e-hard-disk-ssd-476 o https://www.vincenzocaputo.com/home_assistant/home-assistant-guida-allinstallazione-su-raspberry-41)
- Integrazione dei dispositivi Broadlink e Custom Component Smart Ir istallato (https://www.vincenzocaputo.com/home_assistant/home-assistant-integrazione-device-broadlink-rm-e-installazione-di-smart-ir-479)
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.
- Dirigetevi su Strumenti per gli Sviluppatori, posizionato nella barra destra di Home Assistant e spostatevi sulla scheda Servizi.
- Cercate e selezionate il servizio remote.learn_command
- Selezionate l'entità del Broadlink Rm che avete precedentemente configurato.
- Scrivete in basso alla riga entity_id il seguente testo :
entity_id: remote.rm_mini_cucina device: television command: Off
- 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.