Manuale — SkyListen Real

← Torna all'app

Guida utente e guida tecnica alla rete multi-nodo

App online: https://www.alessandropezzali.it/skylisten-real/

Parte 1 — Utente finale Parte 2 — Tecnico Risoluzione problemi

SkyListen Real è un prototipo civile, gratuito e difensivo. Non è un'arma e non è un disturbatore di segnale (jammer): si limita ad ascoltare in modo passivo.

Parte 1 — Utente finale

Cos'è SkyListen e cosa fa / non fa

SkyListen Real trasforma il telefono in un sensore acustico. Ascolta l'audio ambientale, ne estrae caratteristiche spettrali (frequenze, armoniche, ecc.) e calcola uno “score drone”: un numero da 0 a 1 che indica quanto il suono assomiglia a quello di un drone.

Cosa fa:

Cosa NON fa:

Come aprire e installare l'app

L'app va usata via HTTPS, altrimenti il browser non concede l'accesso a microfono e GPS. Usa il link ufficiale: https://www.alessandropezzali.it/skylisten-real/

Android (Chrome)

iPhone / iPad (Safari)

Dopo la prima apertura online, l'app resta utilizzabile anche offline (la mesh tra telefoni richiede però una rete locale).

I comandi e gli indicatori

ElementoA cosa serve
Avvia microfonoChiede il permesso al microfono e inizia l'ascolto. Lo stato passa a ASCOLTO.
Calibra fondo 20sMisura per 20 secondi il rumore di fondo del luogo, così lo score diventa più affidabile. Resta in silenzio normale durante la calibrazione.
Soglia (slider)Il livello di score oltre il quale scatta POSSIBILE DRONE. Più alta = meno falsi allarmi ma meno sensibile; più bassa = più sensibile ma più falsi positivi.
Score droneIl punteggio corrente da 0.00 a 1.00.
Spettrogramma a cascataLa “fotografia” del suono nel tempo (vedi sotto).
StatoFERMO (microfono spento), ASCOLTO (attivo, nessun allarme), POSSIBILE DRONE (score sopra soglia).
Attiva GPSAllega la posizione agli eventi (utile per la stima di zona in rete).
Invia beacon di testManda un evento finto al server, per verificare la connessione mesh.
Esporta CSVScarica un file con tutti gli eventi registrati (orario, nodo, score, posizione, feature).
Allarme multi-nodoMostra l'esito della rete: NESSUNO, PARZIALE o CONFERMATO, con il numero di conferme e l'eventuale zona stimata.
Log eventiCronologia testuale di ciò che accade.

Procedura d'uso passo-passo

Come leggere lo spettrogramma e quando lo score sale

Lo spettrogramma a cascata scorre da destra verso sinistra: ogni nuova colonna è l'istante più recente. L'asse verticale è la frequenza (suoni gravi in basso, acuti in alto); il colore indica l'intensità, dal blu scuro (debole) al giallo/rosso (forte).

I droni tendono a produrre un suono continuo e “armonico”: righe orizzontali parallele e stabili a frequenze multiple tra loro. Quando compaiono questi pattern, lo score tende a salire. Rumori brevi e irregolari (passi, voce, vento) di solito non li generano.

Privacy

Parte 2 — Tecnico (rete multi-nodo)

Schema della rete

[Telefono A] ─┐
[Telefono B] ─┼──►  Server WebSocket (PC / Raspberry, stessa LAN)  ──► allarme a tutti
[Telefono C] ─┘

Ogni telefono è un sensore che invia eventi numerici. Un server sulla stessa rete Wi-Fi raccoglie gli eventi, verifica le conferme e ridistribuisce lo stato di allarme con l'eventuale stima di zona.

Avviare il server

Sul PC/Raspberry, dalla cartella del progetto:

cd server
npm install
npm start

Il server ascolta in dual-stack (IPv4 + IPv6) sulla porta 8787; in locale usa ws://localhost:8787. Variabili d'ambiente principali:

VariabileDefaultSignificato
PORT8787Porta di ascolto
HOST::Indirizzo di bind (dual-stack IPv4 + IPv6)
MAX_PAYLOAD65536Dimensione massima messaggio (byte)
MAX_MSG_RATE50Messaggi al secondo per client

Esempio: PORT=9000 MAX_MSG_RATE=20 npm start. Dettagli completi in server/README.md.

Collegare i telefoni

Logica dell'allarme

Posizionamento dei sensori

Training opzionale del modello

È possibile addestrare un classificatore drone/no-drone e agganciarlo all'app (lo score del modello si combina con l'euristica). È facoltativo: senza modello l'app funziona comunque con la sola euristica FFT.

Rete radio LoRa (futura) e piano d'emergenza

Per estendere la rete oltre Internet/Wi-Fi servirà hardware radio (LoRa/Meshtastic) e un bridge su Raspberry/PC — tappa futura, non a costo zero. Oggi puoi vederne l'anteprima con la demo simulata sulla mappa ("Avvia simulazione LoRa"), senza comprare nulla.

Il piano operativo d'emergenza (cosa preparare prima, come attivare la rete in pochi minuti, esercizio periodico e degrado se la rete cade) è nella pagina Rete LoRa — manuale e piano d'emergenza.

Onestà: la rete LoRa è un layer di rilevamento di prossimità, non un sistema di difesa; non localizza con precisione e non funziona se l'hardware non è già installato e testato prima. Niente promesse di protezione.

Limiti reali e onesti

Risoluzione problemi

SintomoPossibile causa e soluzione
Il microfono non partePermesso negato o pagina non in HTTPS. Apri il link ufficiale (HTTPS), poi consenti l'accesso al microfono nelle impostazioni del sito.
“Serve HTTPS”Stai usando http:// o un file locale. Usa il link ufficiale oppure localhost in sviluppo.
La mesh non si connetteVerifica che server e telefoni siano sulla stessa rete Wi-Fi, che IP e porta nel campo Server WS siano corretti (ws://IP:8787) e che un eventuale firewall non blocchi la porta.
Score sempre altoAmbiente rumoroso o calibrazione fatta con rumore: ricalibra in silenzio e, se serve, alza la soglia.
Score sempre basso / nessun rilevamentoSoglia troppo alta o microfono lontano dalla sorgente: abbassa la soglia e ricalibra.
L'app non si aggiornaChiudi e riapri; il service worker carica la nuova versione al riavvio.

← Torna all'app