mercoledì 27 marzo 2019

Date a #Siri ciò che non è di Siri (Lesson 6) - #Corso #Homebridge

Glauco Silvestri

Essere riusciti ad avere Hombridge funzionante è già un grande risultato. Ora possiamo controllare tutti i nostri dispositivi, che siano certificati per Apple Casa o no, attraverso Siri e il nostro iPhone (n.d.r. E l'iPad, e il Mac).

Ma cosa accade se viene a mancare la corrente? 

Il ovviamente Raspberry si spegne, e al ritorno della corrente si riaccende. Ma pur riavviandosi il sistema operativo del Raspberry, Homebridge non può partire da solo. Questo è il compito che abbiamo oggi: Rendere Homebridge capace di partire in automatico ogni volta che il Raspberry si resetta.

Cominciamo col dire che ci sono vari metodi, su Linux, e più nel dettaglio su Raspbian, per far avviare al boot un programma. Io ne ho provati personalmente un paio, e quello che ho trovato più semplice e immediato, nonché più comodo da controllare, è quello che vi illustrerò oggi.
L'idea è quella di creare una cartella di Esecuzione Automatica, proprio come quella che Windows ci ha abituati ad avere nel menù Avvio, per lo meno fino a Windows 8 e 10 (n.d.r. C'è ancora, ma non si vede più nel menù di avvio).

Su Raspbian non esiste questa cartella, ma si può creare. Per cui, se abbiamo Homebridge funzionante, dobbiamo chiuderlo premendo contemporaneamente CTRL e C.

Poi, sempre nella finestra terminale collegata in SSH col Raspberry, digitiamo i seguenti comandi.
cd /home/pi/.config
mkdir autostart
cd autostart
Con questi primi comandi abbiamo creato la cartella autostart, e ci siamo entrati per poi inserire quanto serve all'avvio automatico di Homebridge. Dobbiamo scrivere un piccolo script, niente di difficile. Con la stringa che segue apriamo il nostro editor di testo e creiamo il file homebridge.desktop.
sudo nano homebridge.desktop
All'interno del file dobbiamo scrivere i seguenti comandi:
[Desktop Entry]
Name=homebridge
Exec=lxterminal –e “home/homebridge”
Type=Application
Poi salviamo il tutto premendo contemporaneamente CTRL e O, e chiudiamo con CTRL e X.

La terza riga è ciò che ci interessa maggiormente. In pratica ordiniamo al sistema operativo di avviare, non appena il Desktop è stato caricato, una finestra terminale, e di lanciare Homebridge.

Ora proviamo a vedere se funziona. Digitiamo la seguente stringa e premiamo Enter.
sudo reboot
Il comando serve a riavviare il Raspberry. Colleghiamo il monitor al nostro piccolo hub per vedere cosa succede. Attendiamo qualche secondo, ecco che compare il desktop, ecco che si apre la finestra terminale, e... sì, Homebridge parte e mostra il QR code (n.d.r. Ovviamente non dobbiamo rifare l'abbinamento!). 
Controlliamo sull'iPhone che Homebridge risulti connesso all'applicazione Casa (n.d.r. L'icona dovrebbe indicare lo stato dei dispositivi, o presentare una scritta di errore di connessione).
Funziona tutto? Perfetto!

E se invece avessimo dei problemi? Metti che nella finestra terminale non vediamo partire Homebridge? Probabilmente è sbagliata la path indicata nello script homebridge.desktop.

Noi avevamo scritto “home/homebridge” nel nostro script. Potremmo aver sbagliato posizione. Lo possiamo controllare subito digitando quanto segue:
which homebridge
Premiamo Enter e attendiamo la risposta. A terminale dovrebbe comparire l'esatta posizione del file che cerchiamo.

A quel punto copiamo la path corretta, torniamo dentro al nostro script, correggiamo il percorso con quanto indicato dal sistema, salviamo, chiudiamo, e riproviamo a fare il reboot.

Questa volta dovrebbe funzionare tutto correttamente.

E qui potremmo chiudere la nostra lezione... Ma in appendice credo sia opportuno spiegare come fare a interrompere l'avvio automatico di Homebridge. Non si sa mai, potrebbe essere utile, come anche potrebbe non servire mai. E' meglio comunque sapere che per 'spegnere' l'avvio automatico è sufficiente cancellare il file homebridge.desktop.
Per farlo è sufficiente chiudere Homebridge con la solita pressione contemporanea di CTRL e C, e digitare quanto segue.
cd /home/pi/.config/autostart
sudo rm homebridge.desktop
Con questi comandi non facciamo altro che andare nel direttorio autostart, e cancellare homebridge.desktop. A questo punto, facendo il reboot, noteremo che all'avvio del sistema operativo non si aprirà più la finestra terminale il nostro hub non sarà più operativo.

Ci vediamo la prossima settimana per l'ultima lezione...


Scopri i miei ebook cliccando QUI






About the Author

Glauco Silvestri / Author & Editor

Vivo a Bologna. Vivo per le mie passioni. Scrivo, leggo, amo camminare. Adoro il cinema, amo tantissimo le montagne. Sono cresciuto a suon di cartoni di Go Nagai e Miyazaki.
Mi guadagno da vivere grazie all'elettronica. Lavoro nella domotica, e nell'illuminazione d'emergenza, per una grossa azienda italiana. Ci occupiamo di sicurezza, salute, emergenza... ma anche di energia pulita. Il mio sogno sarebbe vivere grazie ai miei libri, ai miei disegni, alle mie fotografie... Ma onestamente, suppongo di essere più bravo nel mio attuale lavoro. Ciò non significa che io rinunci a provare, tutt'altro, faccio di tutto per migliorare, crescere, ottenere il meglio che posso nei miei lavori, che siano racconti, digital painting, fotografie...
Ovviamente, oltre a ciò, sono anche un blogger, ma se state leggendo questa breve nota, vuol dire che già lo sapete.

0 commenti:

Posta un commento

Post Recenti



Powered by Blogger.

Popular Posts

Cerca sul Blog

')