In questa paginetta descriviamo l'installazione di qtVlm, un potente e completo programma di routing per barche a vela, su Raspberry, che e' un computer completo fornito su una singola scheda, piccola ma assai ricca di connettori esterni.
In realta' l'installazione di qtVlm e' molto semplice, un poco piu' lunga e' invece la preparazione del Raspberry che nel seguito viene configurato in modalita' headless, ovvero senza collegare ne video ne tastiera.
Vi sono diversi passi necessari per completare l'installazione... ed i primi sono i piu' sono importanti.
Anche se le prime scelte sono le piu' importanti, dipendono da molti fattori quindi le accennero' solo per brevita' lasciando le diverse considerazioni alla fine di questa pagina.
Come scheda Raspeberry Pi utilizzeremo un
Raspberry Pi 4 4GB di RAM con cui si hanno velocita' adeguata, memoria
a sufficienza, inserendolo in un case in alluminio per dissipare il calore per contatto.
Una normale scheda microSD da 32GB C10 ed un alimentatore USB-C 2A
completano il nostro hardware.
Come software utilizziamo Raspberry Pi OS nella versione Bullseye (definita Legacy ma comunque recente) e l'ultima versione di qtVlm.
Ora che abbiamo tutti i pezzi e deciso cosa installare possiamo procedere a creare l'immagine.
L'immagine completa del sistema operativo, con la parte di boot ed il file system che verra' resa disponibile sul Raspberry si crea in modo semplice con il programma Raspeberry Pi Imager. Raspberry Pi Imager si scarica dal sito ufficiale ed e' disponibile per Windows, Mac OS e Linux.
Lanciato il programma bisogna scegliere cosa installare:
Scegliamo la versione Legacy (2023-05):
Sono importanti le impostazioni.
Il nome dell'host per default e' raspberrypi non e' necessario cambiarlo
ma lo facciamo lo stesso impostandolo a lamp-ONE.
Il nome dell'utente di default
e' pi, si puo' cambiare ma sopratutto e' importante impostare e ricordarne la password.
Altrettanto importante e' impostare un WiFi funzionante per collegarsi successivamente.
Abilitiamo l'SSH per poterci connettere ed utilizziamo l'autenticazione con password:
Terminate le impostazioni confermiamo la scrittura, che ovviamente cancellera' ogni precedente contenuto della microSD:
Un poco di pazienza: la fase di scrittura e verifica dell'SSD puo' richiedere una decina di minuti!
Ora possiamo inserire la microSD nella scheda Rapsberry ed accenderla collegandola all'alimentatore!
Il primo boot richiede qualche momento in piu' ma generalmente un paio di minuti sono sufficienti e possiamo collegarci dal nostro PC.
Per collegarci dal nostro PC alla scheda Raspberry
abbiamo bisogno di una connessione a terminale ed una connessione grafica.
Con Windows un ottimo programma e' il Putty
mentre per la connessione grafica con VNC uno dei piu' utilizzati e'
RealVNC.
Utilizzando un Mac il Terminal e' gia' disponibile e per la connessione grafica,
tra le molte alternative, ho utilizzato
TigerVNC
[NdA perche' mi funziona anche con Wayland ma e' un dettaglio].
Se utilizzate Linux... gia' sapere come collegarvi!
Quando il boot e' terminato risponde al ping, possiamo connetterci alla scheda ed effettuare una configurazione di base:
Molti messaggi a cui rispondere, alcuni preoccupanti, ma non e' stato difficile: abbiamo dato solo i comandi ssh pi@lamp1.local, confermato, inserito una password e tutto funziona correttamente.
Lanciando il comando raspi-config si puo' modificare la configurazione del Raspberry. Con raspi-config, navigando sui suoi semplici menu dobbiamo:
raspi-config effettua immediatamente le configurazioni, restituisce eventuali errori e, se necessario, all'uscita effettua un reboot.
A questo punto l'accesso grafico e' configurato ed e' possibile accedere con VNC anche alla console grafica. Siamo pronti ad installare il software ma prima impariamo a conoscere il sistema operativo.
Facciamo un giro sul nostro sistema operativo ospite.
Raspberry Pi OS e' un Linux Debian con poche differenze rispetto alla distribuzione originale.
Personalmente mi trovo benissimo a lavorarci, sopratutto con la connessione da terminale,
ma per chi e' abituato solo a windows le differenze sono molte.
Dalla console grafica si possono effettuare la maggioranza delle configurazioni
ma per le impostazioni piu' complesse o fare in fretta spesso si utilizza una sessione a terminale.
L'utente pi corrisponde all'uid 1000 e deve utilizzare il comando sudo per lanciare comandi amministrativi. La home directory e' /home/pi ed in genere si partira' questa directory per scaricare programmi e file. Vi sono due file system / e /boot/firmware sempre presenti. Eventuali dischi esterni vengono montati su /media/pi/HARD-DRIVE-LABEL. Sono presenti tutti i comandi standard linux della distribuzione Debian: sudo apt-get update; sudo apt-get upgrade; sudo apt-get -y install xxx; ... insomma c'e' tutto, anche il vi ;-)
Importanti sono i comandi aggiuntivi di Raspberry.
pinout riporta il layout della scheda.
sudo raspi-config permette di eseguire le principali configurazioni del Raspberry in modo semplificato (l'interfaccia a caratteri e' la stessa di base-config o di dpkg-reconfigure). In pratica configura il contenuto del file /boot/firmware/config.txt ed esegue il reboot quando necessario.
L'ambiente grafico PIXEL e' ottimizzato per il processore utilizzato ed e' giustamente moderato nell'utilizzo di risorse. L'interfaccia grafica risulta semplice e diretta: e' molto semplice aggiungere programmi al menu o sul desktop.
Dal menu si possono richiamare diversi programmi tra cui cito (in ordine casuale): Cromium, LVC media player, Thonny, ...
Da ultimo qualche semplice consiglio per iniziare bene e finire meglio:
Per l'installazione di qtVlm basta scaricare il software dal sito ufficiale e copiarlo sul Raspberry.
Per copiare il file bisogna utilizzare dal nostro PC sftp oppure il comando scp qtVlm-5.12.1-rpi32Bullseye.tar.gz pi@lamp1.local quindi va scompattato il file con:
Il programma e' installato. Per lanciarlo bisogna essere connessi in VNC e da terminale lanciare i comandi:
E' sicuramente comodo lanciare qtVlm da menu anziche' da linea di comando sul terminale. Si imposta facilmente nelle Preferences / Main Menu Editor inserendo il lancio di qtVlm:
E' anche possibile creare un collegamento sul desktop: basta copiare l'icona del menu.
Finalmente possiamo dedicarci alle nostre rotte!
Ci sarebbe molto da dire su cosa aggiungere al Raspberry: GPIO, Wifi, altri software (eg. OpenCPN, System K), video, ...
Anche per il qtVlm usato in barca ci sono innumerevoli configurazioni aggiuntive: AIS, NMEA, companion (per leggere i dati con un tablet), ...
Ma l'alternativa che consiglio e' quella di utilizzare l'immagine
di OpenPlotter come descritto in
questa paginetta.
Durante ogni fase dell'installazione possono verificarsi problemi...
Molti dei messaggi che si ricevono in realta' sono del tutto normali
ed un sistemista Linux saprebbe come risolverli;
ma non tutti sono utenti esperti, quindi cerchiamo di vederne alcuni!
Innanzi tutto inserendo la scheda microSD nel vostro computer
il sistema operativo vorra' utilizzarla.
A seconda dei casi chiedera' di formattarla, inizializzarla, montarla, ...
Non serve, anzi puo' dare problemi quindi declinate gentilmente l'offerta.
Ho un Mac OS che mi chiede il permesso ogni volta che
che un programma accede ad una risorsa o salva una password.
Corretto dal punto di vista della sicurezza ma un po' noioso:
in ogni caso anche a questi messaggi bisogna confermare l'operazione.
Le connessioni con SSH sono sicure, come dice il nome (Secure Socket Shell),
quindi vengono effettuati una serie di controlli ed inviati messaggi
sia quando e' la prima volta che accediamo ad un host:
In entrambe i casi e' possibile continuare
(se abbiamo capito il messaggio sappiamo cosa fare...).
Insomma di solito dobbiamo confermare i vari messaggi e proseguire...
Ci sono moltissime variazioni rispetto a quanto indicato in questa pagina che possono
essere applicate.
Ma andiamo con ordine: prima la scelta dell'HW.
Altro componente importante e' la scheda microSD che e' in pratica l'Hard Disk del nostro sistema.
32GB sono sufficienti per i miei scopi mentre per la velocita'... piu' veloce e' e meglio e'.
Ho utilizzato una normale C10 perche' gia' l'avevo a casa ma si puo' fare meglio,
ad esempio utilizzare una A1 o una A2 che garantiscono molte piu' IOPS
[NdA sulla velocita' ci sono molti elementi da considerare, per avere qualche riferimento
meglio dare un'occhiata a
Wikipedia].
Come dimensione 32GB sono sufficienti ma la differenza di prezzo con una 64GB e' minima,
se da predere nuova conviene acquistare una 64GB.
Ora il software!
Il Raspberry ha una presa di rete RJ-45 ed il bluetooth.
Oltre che come client il Raspberry puo' operare come Hotspot di una rete WiFi anche in modalita' network bridge.
Insomma le possibilita' di connessione sono moltissime e tutte utilizzabili.
La configurazione? Con raspi-config si hanno le configurazioni piu' comuni,
altrimenti su file come su una qualsiasi Debian della versione corrispondente.
Su web si trovano moltissime pagine ed indicazioni sul Raspberry.
In generale sono tutte utili, bisogna solo fare attenzione perche'
alcuni suggerimenti erano validi con le versioni precedenti e
non sono piu' corretti.
Ad esempio la configurazione iniziale del WiFi sul wpa_supplicant.conf
e' ora automatizzata con il file /boot/firmware/config.txt
[NdA ma le reti Wifi come station sono sempre memorizzate su /etc/wpa_supplicant/wpa_supplicant.conf],
la password dell'utente pi non e' raspberry ma viene cambiata, ...
Al contrario altri documenti possono essere troppo recenti e riferirsi
alla versione 12 Bookworm che, almeno al momento, e' ancora un po'
troppo recente e, a mio avviso, non ancora sufficientemente
testata con alcune applicazioni; ma ovviamente lo sara' sempre piu' nei prossimi mesi.
Per l'installazione di OpenPlotter su Raspberry vedere
questa paginetta.
L'elenco delle versioni di Raspberry Pi OS e' riportato in
questa paginetta.
Buon vento!
Titolo: Installazione di Raspberry Pi +qtVlmProblemi? Parliamone!
Attenzione:
quando scegliete su cosa scaricare l'immagine del Raspberry Pi OS
controllate bene che si tratti della scheda microSD!
Variazioni sul tema
Ci sono tecniche per determinare l'indirizzo IP, ci si puo' collegare con un cavo di rete, ...
ho scelto la modalita' di semplice senza ricorrere ad un'immagine gia' costruita.
Innanzi tutto serve una scheda Raspeberry Pi.
Ve ne sono diverse in commercio e le piu' recenti hanno differenti quantita' di RAM tra cui scegliere.
Il modello che ho scelto e' il Pi 4 con 4GB di RAM per avere velocita' adeguata, memoria
a sufficienza e non dover utilizzare una ventola.
Infatti utilizzero' un case in alluminio per dissipare il calore solo per contatto.
Il Pi 5 e' la versione piu' recente e veloce, sarebbe stato la scelta migliore
per un server NAS o compiti CPU based. Puo' anche essere piu' efficiente in termini di consumi
e quindi di temperatura ma ha picchi piu' elevati.
Concludendo Pi 4 4GB e case in alluminio.
L'alimentatore e' un componente HW semplice ma necessario; serve un alimentatore USB-C 5V da almeno 2 o meglio 3 ampere.
In casa qualsiasi alimentatore per PC con cavo USB-C va benissimo.
Se si utilizza in barca ovviamente la cosa piu' comoda e' utilizzare la batteria
dei servizi che ha una tensione di 12V. Serve quindi un convertitore DC-DC 12V-5V:
ve ne sono sia da collegare direttamente che da utilizzare con la presa dell'accendisigari.
I consumi sono comunque limitati.
Il Raspeberry Pi e' un computer completo ma non ha tastiera, video, mouse, ...
ovviamente si possono collegare ma non sono necessari e non li abbiamo usati
effettuando un'installazione headless.
Come video la scelta e' davvero ampia e dipende molto dall'utilizzo.
La qualita' delle uscite video dei Pi 4 e' molto buona perche' supporta 2 video HDMI da 4k
(connettori micro), per utilizzarli ovviamente serve il cavo ed un display.
Ma piu' spesso si utilizza il Wifi per connettersi con un dispositivo mobile.
La mia preferenza va per un tablet a basso costo anche se
molti suggeriscono, non a torto, tablet waterproof.
La scelta della risoluzione video e le diverse impostazioni relative sono poi importanti
per avere una visione fluida e nitida e si effettuano facilmente con raspi-config.
Come sistema operativo avrei voluto utilizzare l'ultima versione di Raspeberry Pi OS a 64bit
che e' basato su Debian 12 Bookworm.
Sono molte le novita' introdotte nella 12 per Raspberry
tra cui Wayland al posto di X11 e PipeWire al posto di PulseAudio
oltre al supporto dei nuovi Pi 5.
Ma ho trovato un'incompatibilita'
[NdA QT e' compatibile con Wayland, il problema e' su una libreria audio]
e mi sono accontentato di utilizzare la versione precedente basata su Debian 11 Bullseye.
Comunque utilizzare la versione appena precedente e' spesso la scelta migliore.
Varie ed eventuali
Livello: Avanzato
Data:
31 Ottobre 2023 🎃 Halloween
Versione: 1.0.0 - 31 Ottobre 2023
Autore: mail [AT] meo.bogliolo.name