Dal divano alla radio del camper con Codex e Tailscale

Dal divano alla radio del camper con Codex e Tailscale

1) Un’officina informatica sul divano di casa.

Qualche giorno fa ho sistemato l’autoradio Android del mio camper senza sedermi al posto di guida e, per buona parte del lavoro, senza nemmeno avvicinarmi al veicolo. Ero sul divano di casa, davanti al Mac, mentre Codex raggiungeva l’impianto del camper, diagnosticava i problemi e interveniva sulla radio.

Non si è trattato di una dimostrazione teorica. Abbiamo ripristinato gli aggiornamenti del Play Store, installato un sistema che corregge automaticamente data e ora a ogni accensione, eliminato parecchie applicazioni inutili, recuperato memoria, cambiato il launcher, impostato uno sfondo personalizzato e realizzato persino un pulsante per aprire il cancello di casa.

È un esempio molto concreto di ciò che diventa possibile quando metti insieme una connessione permanente, Tailscale, un router configurabile come il Teltonika RUTX50 e uno strumento operativo basato sull’intelligenza artificiale come Codex.

2) Il camper è quasi sempre collegato a Internet.

Sul camper ho installato un router Teltonika RUTX50 con una SIM. Quando sono in viaggio utilizza la rete mobile, anche 5G; quando il camper è parcheggiato a casa si collega invece alla Wi-Fi domestica e non consuma i dati della SIM.

Salvo che il mezzo si trovi in una zona completamente priva di copertura e senza una rete Wi-Fi disponibile, il router rimane quindi online. Questo trasforma il camper in una piccola rete informatica mobile: autoradio, dispositivi di bordo e altri apparati possono comunicare tra loro e, con le dovute protezioni, essere raggiunti anche da lontano.

Avere una connessione, però, non significa che sia prudente pubblicare su Internet il pannello del router o la porta di manutenzione dell’autoradio. Per ottenere un accesso remoto privato ho installato Tailscale sul Teltonika.

3) Tailscale spiegato senza tecnicismi.

Tailscale crea una rete privata tra i dispositivi che hai autorizzato. Puoi immaginarla come un cavo virtuale cifrato che collega il tuo computer, il router del camper, il telefono e gli altri apparecchi ammessi, anche se si trovano su reti fisiche differenti.

Il Mac di casa e il Teltonika possono così riconoscersi attraverso indirizzi privati Tailscale. Non devo conoscere l’indirizzo pubblico assegnato alla SIM, aprire porte sul router o rendere l’apparato visibile a chiunque su Internet. I collegamenti sono cifrati e l’accesso dipende dall’identità dei dispositivi e dalle regole della mia rete Tailscale.

Nel mio caso il Teltonika svolge anche la funzione di porta d’ingresso controllata verso la sua rete locale. Dietro al router si trovava l’autoradio all’indirizzo interno 192.168.77.249. Anche se il camper fosse stato a centinaia di chilometri da casa, il percorso sarebbe rimasto concettualmente lo stesso: Mac, Tailscale, Teltonika e rete locale del camper.

4) Come Codex è entrato davvero nell’autoradio.

La prima richiesta che ho rivolto a Codex era molto semplice: «L’autoradio non mi fa più aggiornare le applicazioni. È accesa: entra e controlla».

Codex ha raggiunto il Teltonika attraverso Tailscale e ha aperto una connessione SSH verso il router. SSH, detto in modo semplice, permette di amministrare un computer o un apparato remoto attraverso una riga di comando protetta.

L’accesso all’autoradio, invece, non è avvenuto tramite SSH. Codex ha scoperto che l’unità esponeva ADB sulla porta 5555. ADB è lo strumento di manutenzione di Android: consente di leggere informazioni sul sistema, consultare i registri degli errori, installare applicazioni, cambiare impostazioni ed eseguire comandi.

Il percorso tecnico esatto è stato quindi: Tailscale fino al Teltonika, SSH sul router, tunnel verso la rete del camper e ADB fino all’autoradio. Per vedere e comandare graficamente lo schermo è stato usato anche scrcpy. Alla fine Codex ha preparato sul Mac uno script, macrom-remote.sh, che apre automaticamente tunnel SSH, collegamento ADB e controllo grafico.

Questo dettaglio è importante: non è stata esposta l’autoradio direttamente a Internet. Il router ha funzionato da passaggio controllato tra la rete privata Tailscale e il dispositivo Android.

5) La spiacevole verità sulla mia Macrom.

La radio è una Macrom ed è uno degli acquisti di cui mi sono più pentito. Non la consiglio assolutamente.

È lenta, il processore è inadeguato e il firmware è pieno di difetti. Viene presentata come un’unità Android 10, ma la diagnosi ha mostrato una base reale Android 8.1, API 27, su piattaforma AC8227L. La centralina si identifica come FF-5000 e utilizza una CPU ARMv7 quad-core da circa 1,1 GHz, con 2 GB di RAM e senza memoria swap.

Durante le operazioni più pesanti la temperatura aveva raggiunto 80–83 gradi e il processore era praticamente saturo. Non è quindi un vero tablet Android moderno integrato nel cruscotto, come avevo immaginato al momento dell’acquisto, ma un sistema molto limitato, modificato dal produttore e pieno di compromessi.

Ormai è montata e smontarla sarebbe un’altra impresa. Me la tengo, ma se potessi tornare indietro non la comprerei. Proprio per questo mi interessava capire se la tecnologia potesse almeno renderla tollerabile e gradevole da usare.

6) Il bug della data che bloccava il Play Store.

La connessione a Internet funzionava, il DNS rispondeva e sul dispositivo c’era spazio disponibile. La causa degli aggiornamenti bloccati era molto più assurda: l’orologio dell’autoradio saltava al 24 dicembre 2006.

Quando la data di un dispositivo è completamente sbagliata, i certificati usati per le connessioni sicure sembrano scaduti o non ancora validi. Il Play Store non riesce più ad autenticarsi correttamente e gli aggiornamenti si fermano, anche se la rete funziona benissimo.

La cosa mi disturbava soprattutto per Headunit Reloaded, l’app che uso per trasformare l’autoradio in un terminale Android Auto collegato via USB al mio Fold7. Vedevo che era disponibile una versione nuova, ma non riuscivo mai a installarla.

Codex ha riattivato data, ora e fuso orario automatici, impostato time.google.com come server NTP e forzato una nuova sincronizzazione. Il Play Store ha immediatamente ripreso a funzionare. Headunit Reloaded è stata aggiornata alla versione 8.2.0 e sono terminati correttamente anche gli altri aggiornamenti in coda.

7) La correzione automatica a ogni accensione.

Sistemare l’orologio una volta non bastava. Dopo un riavvio reale, la radio tornava al 2006: l’orologio hardware perdeva la data e, nonostante l’opzione automatica risultasse attiva, il firmware non risvegliava correttamente la sincronizzazione.

Codex ha quindi creato una piccolissima applicazione locale chiamata Macrom Time Fix. Non mostra pubblicità, non usa servizi cloud e non deve rimanere permanentemente attiva. All’avvio imposta il server NTP, abilita data e ora automatiche e programma quattro tentativi di sincronizzazione: dopo 15 secondi, un minuto, tre minuti e dieci minuti. In questo modo funziona anche quando la connessione del router impiega un po’ ad arrivare.

All’app è stato concesso tramite ADB il solo permesso speciale necessario, WRITE_SECURE_SETTINGS. Dopo l’installazione abbiamo riavviato davvero l’autoradio e controllato i registri: l’automazione è partita da sola e la data è tornata corretta.

Questo, per me, è il passaggio più interessante. Codex non si è limitato a suggerirmi una procedura trovata online: ha esaminato il comportamento concreto del dispositivo, costruito una soluzione compatibile con il suo vecchio Android, l’ha installata e l’ha verificata con un riavvio reale.

8) Meno applicazioni e molta più memoria.

Codex ha poi censito 118 pacchetti installati, distinguendo le vere applicazioni dai servizi di sistema, dai driver e dai componenti necessari alla radio. Lo spazio fisico non era il problema principale: restavano circa 7,7 GB liberi su 12. I colli di bottiglia erano RAM, processore e temperatura.

Dopo il mio consenso abbiamo rimosso o disattivato Google Search, YouTube, Chrome, Google Maps, EasyConnection, Netflix, l’app Email, il lettore PDF, GPS Test, Tuya e Spotify. Ho invece conservato Google Keep, Headunit Reloaded, DAB-Z, MainUI, Play Store, Play Services e la sintesi vocale.

Lo spazio libero è passato da 7,7 a 9,3 GB, con circa 1,6 GB recuperati. La RAM libera è salita da circa 70 a 460 MB, quella disponibile a circa 1,4 GB; a riposo la CPU risultava libera per oltre il 90 per cento e la temperatura era scesa a circa 69 gradi.

Non è diventata una radio potente, perché nessun software può sostituire un processore migliore. È però diventata molto meno affannata.

9) Che cos’è un launcher e perché KISS ha cambiato tutto.

Su Android il launcher è l’applicazione che gestisce la schermata iniziale: sfondo, icone, ricerca e modalità con cui apri le altre applicazioni. Cambiare launcher non modifica il sistema operativo, ma può cambiare radicalmente il modo in cui il dispositivo si presenta e si usa.

Al posto dell’orribile interfaccia originale abbiamo installato KISS Launcher 3.26.0, leggerissimo e open source. È stato impostato come Home predefinita e configurato con accessi immediati a Headunit Reloaded, DAB-Z, Google Keep e Play Store. Il vecchio launcher Macrom è rimasto installato come soluzione di emergenza, perché rimuovere un componente di sistema su un’autoradio di questo genere sarebbe stato un rischio inutile.

Sempre dal divano ho inviato una fotografia, che Codex ha adattato al display 1024 × 600 senza deformarla e impostato come sfondo. Il risultato finale è pulito, personale e molto più gradevole dell’interfaccia fornita dal produttore.

KISS mi è piaciuto tanto che l’ho poi installato anche sul mio Boox, il lettore di libri elettronici basato su Android.

10) Il pulsante per aprire il cancello.

Volevo infine un accesso rapido chiamato «Cancello» sulla Home di KISS, senza reinstallare la pesantissima app Tuya sull’autoradio. Il cancello è comandato da un relè Wi-Fi a contatto pulito: quando viene azionato, unisce per un istante gli stessi due poli che metterebbe in contatto il telecomando fisico.

Abbiamo realizzato una minuscola app Android con un pulsante grande e una richiesta di conferma, per evitare tocchi accidentali. L’app richiama un webhook privato di Home Assistant; Home Assistant aziona il relè per un secondo e poi lo spegne. La prova reale ha registrato esattamente un secondo tra accensione e spegnimento, senza ripetizioni automatiche del comando.

Anche Home Assistant è raggiungibile attraverso Tailscale. Il segreto non deve essere inserito dentro un’app distribuita né il comando del cancello deve essere pubblicato liberamente su Internet. Di questo piccolo progetto, che merita attenzione soprattutto sul piano della sicurezza, parlerò magari in un articolo dedicato.

11) Che cosa ha fatto davvero Codex.

Codex è un agente di OpenAI capace di lavorare con file, terminale, codice e altri strumenti messi a sua disposizione. Tu descrivi l’obiettivo in linguaggio comune; Codex raccoglie informazioni, formula ipotesi, esegue controlli, propone modifiche e, quando lo autorizzi, può applicarle e verificarne il risultato.

In questa storia ha combinato competenze che difficilmente avrei trovato riunite in un singolo intervento: reti private, router Linux, SSH, Android Debug Bridge, analisi dei registri, creazione di un’app Android, impostazioni di sistema, Home Assistant e automazioni.

Non devi essere un informatico per usarlo, ma devi restare il responsabile delle decisioni. Io ho indicato che cosa volevo ottenere, ho precisato quali applicazioni conservare, ho autorizzato rimozioni e riavvii e ho confermato quando era accettabile provare davvero il cancello. Codex ha gestito la complessità tecnica, ma le scelte e i limiti sono rimasti miei.

È essenziale procedere per gradi: prima diagnosi in sola lettura, poi backup quando necessario, modifiche reversibili, una prova alla volta e conferma esplicita prima di azioni delicate. L’accesso remoto a router, dispositivi Android e sistemi domotici deve inoltre essere protetto con autenticazione forte, permessi minimi e nessuna porta amministrativa esposta indiscriminatamente.

Per approfondire puoi consultare la documentazione ufficiale di Codex in https://learn.chatgpt.com/docs e la spiegazione ufficiale di Tailscale in https://tailscale.com/docs/concepts/what-is-tailscale.

12) Le possibilità sono molto più grandi dell’autoradio.

Questa esperienza dimostra che Codex non serve soltanto a scrivere programmi da zero. Può aiutarti ad amministrare sistemi esistenti, anche quando sono vecchi, documentati male e costruiti con componenti raffazzonati, come questa autoradio Macrom di evidentissima impronta cinese.

Lo stesso metodo può essere utile per un server in studio, un NAS, un router, un piccolo computer domestico, Home Assistant o altri dispositivi collegati. Tailscale fornisce la strada privata per raggiungerli; Codex aiuta a capire che cosa c’è dall’altra parte e a eseguire il lavoro necessario.

La radio rimane quella che è: hardware modesto e firmware discutibile. Ma adesso aggiorna le applicazioni, corregge da sola l’orologio, dispone di molta più memoria, presenta una Home finalmente decente e può essere amministrata da remoto. Non male per un apparecchio che avevo quasi imparato a odiare.

13) Passa all’azione.

Per il tuo appuntamento con me, chiama il numero 059 761926 e concorda il tuo primo incontro, anche a distanza.

Iscriviti al canale YouTube «fare l’avvocato è bellissimo» per diventare immortale https://www.youtube.com/@farelavvocatoebellissimo


Scopri di più da fare l’avvocato è bellissimo

Abbonati per ricevere gli ultimi articoli inviati alla tua e-mail.

Unisciti a 91 altri iscritti

Un commento

Rispondi