Lucky FF918: po lewej dane z sondy - linia dna i cztery punkty celow, po prawej kolorowy echogram wygenerowany przez wyswietlacz

Cosa ha dimenticato di dirti il venditore #2 – ovvero perché il Lucky FF918 disegna pesci che non ha mai misurato

Nella prima parte ho mostrato come un sensore di parcheggio finisca in un guscio e venga venduto come profondimetro. Oggi sul banco c’è un apparecchio che è davvero un ecoscandaglio e misura davvero la profondità: la sonda wireless più diffusa sul mercato, il Lucky FF918. 🎣

Non rimprovero al Lucky FF918 di non funzionare. Funziona. La domanda è un’altra: quanto di ciò che vedi su quel display a colori è misura e quanto è disegno? Per scoprirlo ho collegato un analizzatore logico alla linea dati tra il modulo radio e il display e ho registrato cosa arriva esattamente dall’acqua. Sette registrazioni indipendenti, a profondità diverse.

Ecoscandaglio Lucky FF918-C: display a colori, trasmettitore con antenna 433 MHz e trasduttore
Il set Lucky FF918-C: display, trasmettitore con antenna 433 MHz e trasduttore. Sullo schermo 13,6 m di profondità, 2,7 °C e quattro pesci con la profondità indicata: tra poco scomporremo proprio quell’immagine nei nove byte che l’hanno prodotta. (foto: materiale del produttore/venditore, usato a scopo di analisi critica)

Il risultato mi ha sorpreso, e penso che sorprenderà anche te.

Lucky FF918: a sinistra i dati della sonda - linea del fondo e quattro punti bersaglio, a destra l'ecogramma a colori generato dal display

1. L’intera conversazione tra la sonda Lucky FF918 e il display sono nove byte

Il galleggiante del Lucky FF918 trasmette a 433 MHz, a circa 333 bit al secondo. È molto lento: per confronto, il più vecchio modem telefonico degli anni Ottanta era più veloce. Un pacchetto di dati è esattamente 9 byte, cioè meno di una parola corta in un SMS. Un nuovo pacchetto arriva ogni 0,77 secondi.

Trama radio del Lucky FF918: 9 byte - trasmettitore, profondità, temperatura, quattro bersagli e somma di controllo

E questo è tutto. Tra galleggiante e display non passa altro:

  • numero del trasmettitore – perché il display sappia che è la sua sonda e non quella del vicino di postazione
  • profondità – una misura vera
  • temperatura dell’acqua – una misura vera
  • quattro campi bersaglio – un byte ciascuno
  • somma di controllo – verifica che nulla si sia corrotto per strada

2. Quei quattro byte portano solo l’altezza – nient’altro

Ogni byte di bersaglio è un numero da 0 a 255, disteso tra la superficie e il fondo. Zero significa «qui non c’è nulla», 255 significa «proprio sul fondo», 128 significa «a metà acqua». Tutto qui.

Attenzione, perché è importante quando leggi lo schermo: un byte di bersaglio è una frazione della profondità, non una distanza. Lo stesso byte vale 1 metro quando il fondo è a 2 metri, e 10 metri quando il fondo è a 20. La scala si estende sempre dalla superficie al fondo.

Verifichiamolo sulla foto promozionale del Lucky FF918 del produttore. Si vedono 13,6 m di profondità e un pesce etichettato 3,7 m. Il byte che lo porta vale 70. Il conto: 70 diviso 256, per 13,6 metri, fa 3,72 metri. Coincide al decimetro con il numero stampato sopra il pesce.

In quel byte invece non c’è nemmeno un’informazione sull’intensità dell’eco. Né sulla dimensione del bersaglio. Né su quanto forte qualcosa abbia riflesso il suono. La sonda invia esclusivamente la risposta alla domanda «a quale altezza», mai «cosa» e «quanto grande».

3. Il Lucky FF918 non sa se sotto di te c’è un pesce, una pianta o un albero caduto

Deriva direttamente dal punto due, ma vale la pena dirlo a parte, perché si traduce subito in pesca. Il galleggiante del Lucky FF918 segnala un bersaglio nella colonna d’acqua, cioè il fatto che da qualche parte tra fondo e superficie qualcosa ha riflesso il segnale. E la sua conoscenza finisce qui.

In quella trasmissione non esiste alcun campo che dica «questo è un pesce» oppure «questa è una pianta». Nessuna classificazione. Nessun riconoscimento. Eppure il display in ognuno di questi casi disegna un pesce, perché semplicemente non ha altre icone.

In pratica significa che sullo schermo diventa pesce qualsiasi cosa: un ciuffo di vegetazione che cresce dal fondo, un albero caduto, un ramo sporgente, un ceppo o qualunque altro impedimento, bolle d’aria, un termoclino, il torbido dopo la pioggia e persino l’eco del tuo stesso filo o del terminale. L’apparecchio non mente: semplicemente non ha con cosa distinguere una cosa dall’altra.

C’è un’altra trappola, molto meno evidente. Una pianta alta, un albero caduto o un ramo sporgente restituiscono eco da più altezze contemporaneamente, dal fondo fino alla loro cima. La sonda segnala allora più bersagli uno sopra l’altro e il display ne ricava diversi pesci separati messi in colonna. Quella caratteristica «pila di pesci» sopra il fondo, che sembra un branco in caccia, è molto spesso solo un cespuglio o un ramo sommerso.

Per questo tre «pesci» fermi nello stesso punto per un quarto d’ora sono quasi certamente vegetazione, un ostacolo o una struttura sommersa, e non un gruppo di carpe in attesa del tuo terminale. E vale anche il contrario: nemmeno dell’ostacolo verrai a sapere, perché l’apparecchio te lo mostra come pesce invece di avvisarti che lì è meglio non calare.

4. La taglia del pesce sul display del Lucky FF918 viene sorteggiata

Qui arriviamo alla cosa che al banco mi ha davvero fermato e che dice di più sul Lucky FF918. Se nella trasmissione non c’è un campo che descriva la dimensione del bersaglio, da dove prende il display i pesci piccoli, medi e grandi?

Li sorteggia. A ogni pacchetto di dati ricevuto, per ogni bersaglio, viene avviato un generatore di numeri casuali che assegna una classe di taglia:

Esito del sorteggioProbabilitàCosa vedi sullo schermo
118,75%pesce grande – icona più grande, più allarme sonoro
250,00%pesce medio
331,25%pesce piccolo

Da quel solo sorteggio deriva poi tutto ciò che distingue un «pesce grande» da uno «piccolo»: quale immagine già pronta viene incollata sullo schermo, quanto sarà grande il simbolo colorato e se l’apparecchio farà suonare l’allarme.

E perché sia chiaro da dove nasce questa certezza: il problema non è che l’algoritmo sia scadente. Il problema è che nella trama radio non esiste un campo capace di trasportare la dimensione del bersaglio. Anche se il display volesse mostrarla onestamente, non avrebbe da cosa.

Come verificarlo da solo, senza alcuna attrezzatura

Non devi credermi sulla parola e non devi saper leggere il codice:

  • Cala con uno spago un barattolo, un sasso o un ramo, più o meno a metà profondità.
  • Guarda l’altezza dell’icona – sarà stabile, perché la posizione è calcolata onestamente.
  • Ora guarda la sua dimensione – lo stesso barattolo immobile sarà una volta «pesce piccolo» e una volta «grande», cambiando ogni secondo.

Questo singolo test mostra entrambe le cose insieme: l’altezza costante dimostra che la misura di posizione è vera, e la taglia che salta dimostra che la dimensione è inventata. Riprendilo con il telefono, si vede benissimo.

5. L’ecogramma a colori del Lucky FF918 in gran parte non è una misura

Torna un attimo alla grafica del Lucky FF918 all’inizio dell’articolo. A sinistra c’è tutto ciò che è arrivato dall’acqua: una linea rossa del fondo e quattro punti. A destra lo stesso insieme di dati dopo l’elaborazione nel display.

Nota che la linea rossa del fondo coincide pixel per pixel in entrambe le immagini. Perché il profilo del fondo è vero: una misura onesta per ogni pacchetto di dati. È vera anche l’altezza da cui è tornata l’eco, anche se la sonda non dice nulla su cosa l’abbia riflessa.

Tutto il resto invece nasce sul posto, nel display, da schemi già pronti conservati nella sua memoria:

Elemento dell’immagineDa dove proviene
Linea del fondo, profondità in cifremisura
Temperaturamisura
Altezza da cui è tornata l’ecomisura
Dimensione e tipo dell’icona del pescesorteggio nel display
Trama giallo-rossa del fondomotivo dalla memoria dell’apparecchio
Vegetazione verde sul fondogeneratore di forme, indipendente dall’acqua
Fascia di disturbo in superficiedisegnata sempre, con spessore casuale
Scorrimento fluido dell’immagineriempimento tra i pacchetti di dati

La colonna d’acqua su quello schermo è alta 445 pixel. Viene disegnata a partire da quattro numeri.

6. Perché il Lucky FF918 funziona così? Perché a 433 MHz l’immagine non ci sta

E qui voglio essere onesto verso il produttore: non è cattiveria né risparmio. È fisica e normativa.

Calcoliamo quanto serve a un ecoscandaglio decente che disegni una vera immagine del fondo. Prendiamo un modesto valore di 300 campioni per ping:

ComponenteQuanti bit
Immagine: 300 campioni da 8 bit2.400
Telemetria: profondità, temperatura, tensione, stato, somma di controllo+ 80
Totale per un ping2.480
Ping ogni 100 ms, cioè 10 volte al secondo24.800 bit al secondo
Overhead del protocollo radio, circa il 30%32.000
Occupazione della banda solo al 65%, per lasciare margine alla ritrasmissione delle trame persecirca 50.000 bit al secondo

Il Lucky FF918 trasmette circa 94 bit al secondo. È all’incirca 500 volte troppo poco. A 433 MHz una vera immagine del fondo non si può far passare, quindi l’immagine deve nascere nel display. E nasce.

Perché è importante il margine per le ritrasmissioni? Perché a lunga distanza le trame si perdono. Se il collegamento è pieno fino all’orlo, un pacchetto perso non si può ripetere e l’immagine si spezza. E perché fare ping più spesso di ogni 100 ms? Perché ogni ping è una colonna dell’immagine: con 10 ping al secondo ogni colonna è una misura vera. Con meno ping tra di esse si apre un vuoto che l’apparecchio deve riempire con qualcosa.

Cosa significa quando compri un barchino con ecoscandaglio

Questa è la conclusione da portarsi dietro quando vai a comprare. Se qualcuno ti propone un barchino che su un solo, stretto collegamento radio deve contemporaneamente governare la barca – motori, timone, luci, sportelli, spargitore – e trasmettere l’immagine dell’ecoscandaglio, allora quelle due cose si contendono lo stesso tubo, molto stretto.

Il comando deve viaggiare in continuo e senza ritardi, perché da lui dipende se la barca gira. L’immagine ha bisogno di banda. Sulla banda 868 MHz si aggiunge poi un limite di legge: si può trasmettere solo per una frazione del tempo, così anche un modem veloce dà in media qualche centinaio di bit al secondo.

BandaVelocità realeRegge un ecogramma vero?
433 MHz (è quello che sta nel FF918)circa 94 b/sNo – 500 volte troppo poco
868 MHzda qualche decina di bit a 1 kb/sNo – limite del tempo di trasmissione
2,4 GHz LoRaqualche decina di kb/s, con un margine ragionevole
2,4 GHz WiFi20-35 Mb/s, con un margine enorme

Per questo conviene fare al venditore una domanda semplice: su quale frequenza e a quale velocità viaggia da voi l’immagine del sonar? La risposta ti dirà più di tutta la scheda prodotto.

Riepilogo – cosa il Lucky FF918 non ti dice apertamente

Riassumendo onestamente, perché questo non è un finto strumento e non ho intenzione di fingere che lo sia:

  • Profondità e temperatura sono vere – come strumento per controllare lo spot prima di calare, l’apparecchio fa il suo lavoro.
  • L’altezza dell’eco è riprodotta fedelmente, ma questo non significa che lì ci sia un pesce. Se la sonda ha segnalato un bersaglio a 4 metri, l’icona starà a 4 metri, solo che sotto può crescere un cespuglio invece di nuotare una carpa.
  • Non prendere la dimensione dell’icona per un’informazione – è sorteggiata, un’icona grande non significa un pesce grande.
  • Un’icona di pesce non significa «pesce» – la sonda segnala solo un bersaglio nell’acqua, e una pianta, un albero caduto, un ostacolo o delle bolle appaiono identici sullo schermo.
  • L’ecogramma a colori non è un’immagine del fondo – trama, vegetazione e colori sono grafica presa dalla memoria dell’apparecchio.
  • Quattro bersagli insieme sono il tetto massimo – un branco non ha modo di mostrarsi.

In altre parole: il Lucky FF918 è un discreto profondimetro con termometro e un indicatore del tipo «qualcosa è sospeso nell’acqua». Non è un ecoscandaglio nel senso in cui lo intende un pescatore che guarda un’immagine del fondo.

Come ho esaminato l’ecoscandaglio Lucky FF918

Un analizzatore logico collegato alla linea dati del Lucky FF918, tra il modulo radio e il display, sette registrazioni indipendenti a profondità e temperature diverse. Lì i dati viaggiano in chiaro, senza alcuna cifratura. Tutte e sette le registrazioni si scompongono negli stessi pacchetti da 9 byte, e la temperatura che se ne ricava resta inchiodata in ogni registrazione mentre la profondità cambia con continuità. Ecco come appare un protocollo letto correttamente. Inoltre ho seguito la logica del display stesso, per stabilire cosa fa con quei dati.

Cosa non ho verificato e di cui quindi non scrivo: non mi pronuncio sulla qualità del trasduttore né su quanto bene la sonda rilevi bersagli in acqua, non ho dati in merito. Non sostengo neppure che l’apparecchio misuri male la profondità. Descrivo solo ciò che ho dimostrato: cosa invia la sonda e cosa ne fa il display. L’analisi riguarda un esemplare preciso e la versione di firmware che vi ho trovato.

La grafica di confronto all’inizio dell’articolo è una mia ricostruzione, disegnata con lo stesso algoritmo che ho trovato nel display, non uno screenshot dell’apparecchio.

Fonti e materiali da verificare

Avvertenza. L’analisi riguarda un esemplare preciso e il firmware che vi ho trovato: altri lotti e varianti del modello (FF918-C, CWLS e derivati) possono differire. I limiti radio e le velocità sono indicativi, secondo le regole UE per i dispositivi a corto raggio; i valori esatti dipendono dalla sottobanda e dalla soluzione concreta. Se da te le cose appaiono diverse, scrivimi: verificherò volentieri un altro esemplare.

Da noi funziona così: prima che qualcosa entri nelle nostre barche, passa da questo banco. E se qualcosa non passa, lo diciamo ad alta voce, anche quando nessuno ha voglia di sentirlo.

Articoli simili

Lascia un commento