community italiana di domotica personale
 
Catturare codici infrarossi e radiofrequenza usando Broadlink Manager (via Web GUI)

Catturare codici infrarossi e radiofrequenza usando Broadlink Manager (via Web GUI)

SCOPI DELLA GUIDA
  • Catturare codici infrarossi e radiofrequenza utili alla domotizzazione di dispositivi non nativamente domotici
  • Livello di difficoltàbasso
CONCETTI AFFRONTATI:
  • Utilizzo software
  • Cattura codici
COMPONENTI SOFTWARE UTILIZZATE:
PREREQUISITI
  • Dispositivo Broadlink già configurato in Wi-Fi
DISPOSITIVI FISICI UTILIZZATI:
  • Un dispositivo Broadlink infrarosso (eg. RM4 Mini) o infrarosso/radiofrequenza (eg. RM4 Pro) – o analoghi
GUIDA maggiormente DEDICATA A utenti:
Tutti gli ambienti
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione guida: 1.5

Abstract

TelecomandoL’utilizzo in domotica di codici infrarossi e/o in radiofrequenza rappresenta spesso un buon strumento per riuscire a domotizzare qualcosa che, nativamente, non lo sarebbe.

Da tempo infatti esistono semplici ed economici dispositivi utili all’apprendimento e sopratutto alla trasmissione di codici di questo tipo (eg. Broadlink RM4 Mini); tali dispositivi, una volta inseriti in domotica, rappresentano una “leva” per virtualizzare l’indiretto controllo di dispositivi “obiettivo”.

In sostanza, la tecnica è quella di apprendere i codici dai telecomandi dei dispositivi che vogliamo domotizzare, inserirli nella configurazione del nostro HUB personale sotto forma di accessori (interruttori, ventilatori, condizionatori ecc.) che, quando attivati, scaturiscano nell’invio dei codici infrarossi/radiofrequenza appropriati.

Questa tecnica è stata usata in svariati progetti presenti su inDomus, per esempio:

Quello che vedremo in questa guida è come, partendo da un dispositivo Broadlink (capace nella ricezione/invio di codici infrarossi/radiofrequenza) e da un telecomando o un radiocomando (capaci rispettivamente nella trasmissione codici infrarossi o in radiofrequenza), riusciremo a catturare tali codici al fine di un riutilizzo in configurazione domotica. Per farlo utilizzeremo il tool Broadlink Manager in versione Web GUI istanziato presso Docker.

Nb. questa guida fa riferimento a codici radiofrequenza 433 MHz/315 MHz (non rolling code) e a segnali infrarossi (con lunghezza d’onda tra i 700 nm e 1 mm, ovvero quella dei telecomandi tradizionali). Per domotizzare telecomandi rolling code, è disponibile questa guida.

Al tema dell’uso di infrarossi e radiofrequenze in domotica abbiamo dedicato un episodio del nostro podcast.

ATTENZIONE: Prima di porsi il problema di catturare codici, la cosa più sana è fare un salto sul nostro ARCHIVIO COLLABORATIVO di codici infrarossi/radiofrequenza. Con un po’ di fortuna, potresti già trovare il lavoro fatto. Differentemente, non dimenticarti (sempre tramite quella pagina) dopo aver raccolto i tuoi, di inviarli all’archivio!

Configurazione Broadlink

Per utilizzare un attuatore Broadlink è necessario che esso sia già configurato e quindi presente sulla nostra Wi-Fi. Per far in modo che l’emettitore infrarosso entri (e resti) dentro tale rete wireless è sufficiente utilizzare l’app mobile  “e-Control” (per Android e iOS) e seguire le istruzioni a schermo. Alternativamente utilizzare l’app Broadlink (per Android e iOS, ma usarla solo in caso l’attuatore non sia supportato dall’app e-Control): in questo caso provvedere ad eseguire solo la procedura che fornisce all’attuatore le coordinate d’accesso alla Wi-Fi, poi interrompere e non completare la configurazione.

Finita la prima configurazione una tantum sarà poi necessario che l’attuatore Broadlink possegga, all’interno della nostra Wi-Fi, un IP fisso adottando la tecnica del “MAC Binding” sul router. Per farlo, si consiglia la lettura di questa guida.

All’atto dell’assegnare un IP fisso al Broadlink si consiglia di appuntarsi da parte sia l’IP assegnato sia il “MAC Address” (indirizzo fisico) dell’attuatore: entrambe queste informazioni serviranno più avanti.

Installare Docker

La guida è adatta a qualsiasi tipo di computer; ciononostante, chi utilizza Windows solitamente utilizza quest’altra guida, più pratica per questo sistema operativo.


Per tutti gli altri, questa guida suggerisce l’adozione di un container Docker che, di fatto, crea un’interfaccia web molto pratica per la cattura e il trattamento dei codici infrarossi/radiofrequenza.

N.b. Se si dispone già di Docker, va da sé che questo paragrafo possa essere saltato.

Installare Docker su Raspberry Pi dotato di sistema operativo Raspberry Pi OS (oppure su un qualsiasi computer Linux) è piuttosto rapido e semplice: esiste infatti sia una procedura completamente automatica oppure una manuale. Entrambe le procedure sono illustrate in dettaglio in questa breve guida.

Su Mac, invece, provvediamo ad installare Docker scaricandolo direttamente dal sito ufficiale (voce “Download from Docker HUB“). Una volta scaricata l’immagine, provvedere ad aprirla e copiare l’app “Docker.app” nella cartella “Applicazioni” del computer (o dove meglio si crede).

Cartella contenuti

Prima di procedere all’istanziamento di Broadlink Manager, però, è necessario creare una cartella la quale conterrà vari contenuti persistenti. Una volta collegati via SSH al computer ospitante tramite una propria utenza, provvedere a creare le cartelle:

sudo mkdir ~/broadlinkmanager

Ora procedere oltre.

Vetrina - Offerte del giorno

Istanziare Broadlink Manager

A questo punto è possibile provvedere all’installazione di Broadlink Manager, il quale viene eseguito come container Docker tramite un’istanza specifica.

In ambito Docker, l’istanziamento dell’applicazione può essere effettuato tramite esecuzione di un comando manuale (più immediato) oppure tramite una configurazione del tool di gestione Docker Compose, approccio inizialmente più ostico ma che consigliamo per tutta una serie di motivi. Entrambe le scelte sono valide, ma in prospettiva (specie in ottica di aggiornamento) imparare ad usare Docker Compose è altamente consigliato.

ATTENZIONE: affinché i comandi a seguire funzionino, è necessario aver aggiunto Docker al gruppo sudoers, come spiegato in guida d’installazione Docker.

Tramite comando “docker run”

Istanziamo dunque Broadlink Manager su Docker tramite il comando che segue via terminale (da CLI, via SSH oppure con control-alt-t da interfaccia desktop):

docker run -d --name=broadlinkmanager -v ~/broadlinkmanager:/opt/broadlinkmanager/datays --net=host --restart=unless-stopped techblog/broadlinkmanager

Al termine, verifichiamo che tutto sia andato per il verso giusto:

docker logs broadlinkmanager -f

in fondo al log dovremmo trovare qualcosa come:

* Running on http://0.0.0.0:7020/ (Press CTRL+C to quit)

Congratulazioni: Broadlink Manager è ora operativo.

Tramite Docker Compose

Se astutamente si sceglie di utilizzare Docker Compose, allora è semplicemente necessario aggiungere al proprio file docker-compose.yaml la seguente configurazione (sotto il bocco services):

  broadlinkmanager:
    image: techblog/broadlinkmanager
    network_mode: host
    container_name: broadlinkmanager
    restart: unless-stopped
    volumes:
      - ~/broadlinkmanager:/opt/broadlinkmanager/datays

Una volta salvato il file docker-compose.yaml, eseguire il comando:

docker compose up -d broadlinkmanager

il quale provvederà a istanziare il container.

N.b. In caso il comando “docker compose” dovesse dare errore, verificare di non aver installata la versione applicativa di Docker Compose anzichè la versione plug-in alla quale il comando sopra fa riferimento. In tal caso, adeguare il comando da “docker compose” a “docker-compose” (col trattino in mezzo).

Lanciato il comando, attendere il completamente del primo avvio. Ci potrebbe volere un po’: per leggere in tempo reale i log e verificare quindi cosa stia succedendo all’interno del container, eseguire il comando:

docker container logs broadlinkmanager -f

in fondo al log dovremmo trovare qualcosa come:

* Running on http://0.0.0.0:7020/ (Press CTRL+C to quit)

Congratulazioni: Broadlink Manager è ora operativo.

Interfaccia

Per cominciare ad utilizzare Broadlink Manager così installato è necessario collegarsi, tramite browser, all’indirizzo:

http://INDIRIZZO_IP_DEL_RASPBERRY:7020

N.b. Alcuni browser hanno risaputi problemi con Broadlink Manager: per esempio, alcuni fanno sì che l’elenco degli attuatori Broadlink presenti sulla propria rete (vedi immagine che segue) non venga visualizzato. In caso, provare a cambiare browser.

L’interfaccia si presenta all’incirca come segue:

Broadlink Manager Web Gui - Interfaccia principale

Come si nota dall’esempio sopra, l’interfaccia provvede automaticamente a individuare eventuali componenti Broadlink attestati sulla propria rete. Va da sé che se nulla dovesse apparire nella lista, esisterà qualche problema, probabilmente causato da una cattiva configurazione del/dei Broadlink spiegata in precedenza.

Scelto quale dei componenti usare per acquisire codici, cliccare sul pulsante “Action” sulla destra. Si aprirà una dialog box che consente di acquisire codici infrarossi, radio, oppure inviare una di queste tipologie di codici:

Broadlink Manager Web Gui - Action

Cliccando su “Learn IR/RF Code” il broadlink entrerà in attesa di un codice per un tempo di 60 secondi, arco temporale nel quale premendo un tasto del telecomando/radiocomando (puntandolo verso il Broadlink, in caso di codici IR) il codice verrà acquisito e proposto come stringa (in standard Base64) presso il campo “Status“.

Codici ripetuti

Broadlink Manager, alla voce di menu “Change Repeats“, consente di generare dei “codici ripetuti”. Ipotizziamo per esempio di acquisire un codice per l’aumento di volume di una tv, e immaginiamo di volerlo inviare più di una volta: copia-incollando il codice nel campo “Your code:” e indicando il numero di ripetizioni (capo “Current Repeats:“), alla pressione del pulsante “Generate” un nuovo codice verrà generato il quale, quando inviato, moltiplica intrinsecamente l’esecuzione del comando originale.

Conversioni

Talvolta si dispone di codici in standard HEX, o viceversa quelli acquisiti in formato Base64 non sono adatti perché servono in standard HEX: la sezione “Conversion Hex – Base64“. Non ha bisogno di grandi spiegazioni.

Pubblicazione codici

I codici, va da sé, andranno man mano collezionati, possibilmente (nostro consiglio) presso un foglio Excel, utilizzando un banalissimo copia-incolla a partire dalla finestra di “Broadlink Manager”.

A tal proposito ricordiamo l’esistenza del nostro “archivio collaborativo” di codici infrarossi/radiofrequenza, al quale invitiamo tutti a collaborare man mano che, a partire dai propri telecomandi, si collezionano i codici.

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.