Salta il contenuto

Scroll Indicator

Building the DigiLab : Behind the scenes

La costruzione del DigiLab: dietro le quinte

Lab401 ha recentemente rilasciato il suo dispositivo DigiLab, una "bacchetta magica" per armeggiare con l'elettronica del Flipper Zero.

Proprio come per l'accessorio LightMessenger di Lab401, stiamo togliendo il sipario sul "making-of", approfondendo ogni fase, dall'ideazione alla distribuzione.

Questa è la terza parte della serie "Produzione di prodotti con Lab401".

  • Nella prima parte abbiamo discusso il nostro approccio e la nostra metodologia per la creazione, la produzione e il lancio dei prodotti.
  • Nella seconda parte abbiamo condiviso il percorso di produzione del LightMessenger.

Se siete interessati alla produzione elettronica o a vedere cosa c'è dietro il lancio di un prodotto, date un'occhiata a questi articoli!

Un grande ringraziamento a @tixlegeek, l'ingegnere che ha realizzato il progetto.

Che cos'è il DigiLab?

Il DigiLab è un dispositivo che si collega a Flipper Zero. È un multiutensile elettronico che consente agli utenti di analizzare ed esplorare segnali elettrici a bassa potenza: Può rilevare diversi aspetti dei segnali e tradurli in un feedback cinetico "in tempo reale": audio, luce, vibrazioni, ecc.

Consente inoltre di rilevare, identificare e manipolare in modo semplice e intuitivo i dispositivi I²C e SPI.

Si tratta di una "sonda magica" che elabora e suddivide il segnale, abbinata a un'applicazione di alto livello che visualizza il tutto.

Non è destinato a sostituire gli strumenti di precisione dedicati: è destinato a essere un naso digitale per l'elettronica, il primo strumento a cui ci si rivolge quando si esplora l'elettronica.

Avete presente quando alcuni compiti "semplici" sono in realtà fastidiosamente difficili? Ad esempio, si tratta di CAN_HI o CAN_LO? C'è un segnale su questa linea? Si tratta di 9600 baud o 38400 baud? O perché non posso semplicemente leggere i registri di un modulo di temperatura senza programmare un dannato Arduino e combattere con l'IDE "migliorato" di Arduino?

Il DigiLab risolve tutti questi problemi, in modo davvero pulito, unico e intuitivo.

Fase 0: cosa costruiremo?

Inizialmente, abbiamo dato il via a una sessione di brainstorming. Il LightMessenger ci ha permesso di conoscere le architetture hardware, software e API di Flipper ed eravamo pronti a realizzare un dispositivo che spingesse ulteriormente l'hardware di Flipper.

Uno dei motivi principali per cui Flipper Zero è diventato così popolare è la sua versatilità. Non è stato progettato per essere il migliore per ogni singolo compito: esistono altri strumenti migliori per quasi tutte le funzionalità: RFID, RF, SDR, ecc.). È stato progettato per essere versatile: fare un po' di tutto.

Con il DigiLab abbiamo voluto seguire la stessa logica di progettazione e costruire uno strumento versatile per gli hobbisti dell'elettronica. L'idea era semplice: una bacchetta magica per l'elettronica digitale. Volevamo sfruttare i punti di forza del Flipper e di un circuito personalizzato che lo avrebbe trasformato nello strumento da prendere per primo quando si voleva sperimentare con l'elettronica.

Nelle parole di tixlegeek:"Come appassionato di elettronica, ho cercato di immaginare lo strumento che mi sarebbe piaciuto avere sul campo: qualcosa che potesse dare una rapida visione senza la necessità di un oscilloscopio o di una configurazione ingombrante. Da qui è nato il concetto di "bacchetta magica"".

Non volevamo sostituire apparecchiature più costose, ma creare uno strumento versatile che permettesse di svolgere la maggior parte delle attività necessarie, senza dover tirare fuori l'oscilloscopio, BusPirate, ecc.


Progettazione

Come per i prodotti precedenti, abbiamo dovuto considerare diversi fattori di vincolo. Con il LightMessenger, abbiamo dovuto lavorare all'interno di vincoli fisici, di bilancio e logistici che hanno orientato le nostre scelte tecniche. Con il DigiLab, abbiamo aggiunto anche vincoli tecnici: quello che stavamo cercando di fare avrebbe spinto l'hardware del Flipper ai suoi limiti.

Tutto sommato:

  • Sfide tecniche L'elettronica sarebbe stata più complicata. Volevamo essere in grado di vedere ed elaborare le frequenze in "tempo reale" e di eseguire anche l'eterodirezione "in tempo reale" (conversione di una frequenza in un'altra, in modo che gli utenti potessero ascoltare le frequenze nei loro circuiti e vederle sullo schermo). Doveva supportare tensioni fino a 12 V in modo sicuro (senza mettere a rischio le porte GPIO del Flipper) e doveva avere un'interfaccia piuttosto complessa.

  • Robustezza meccanica
    Il componente aggiuntivo sarà utilizzato da persone reali, con mani grandi e talvolta con un uso non proprio delicato. Pertanto, abbiamo dovuto progettare un modulo robusto, soprattutto tenendo conto delle limitazioni GPIO della porta esterna di Flipper Zero.

  • Sviluppo
    Il codice deve rimanere chiaro e accessibile, in modo che chiunque possa capirlo e contribuire.

  • Produzione
    Ogni elemento deve essere facilmente realizzabile con componenti facilmente reperibili.

  • Costi
    L'approccio è stato quello di rimanere semplici ed efficienti. Diamo priorità a ciò che è necessario per garantire che il prodotto finale sia disponibile a un prezzo ragionevole.

  • Estetica
    L'estetica può essere spesso facilmente trascurata, ma contribuisce in modo significativo all'esperienza dell'utente. Abbiamo voluto mantenere lo stesso design estetico divertente e ricco di opinioni delle volte precedenti, garantendo al contempo l'ergonomia.


Prototipi e direzione

Da tixlegeek:

Ho iniziato facendo schizzi e armeggiando con modelli di cartone per avere un'idea più precisa dello strumento:

Parallelamente, ho ordinato un prototipo di scheda elettronica. L'obiettivo era quello di convalidare l'elettronica e i componenti e di vedere come tutto sarebbe stato assemblato.

All'inizio stavo pensando di utilizzare un ESP32 per gestire i segnali e fornire un feedback via web. Ma dopo averne parlato con la squadra, ci siamo resi conto che non era questo il vero scopo del progetto, quindi l'idea è stata abbandonata.

Se il dispositivo fosse stato autonomo, avrebbe potuto essere in qualche modo autodistruttivo. Nel prodotto finale, tutto è gestito direttamente dal Flipper Zero.


Connessioni, sonde e problemi.

Ho lavorato con un'ampia varietà di strumenti, ciascuno dotato di un proprio set di accessori, alcuni più standard di altri. Quando si tratta di collegare le sonde a un circuito stampato, ci sono sicuramente modi buoni e cattivi per farlo, ma in pratica si trasforma spesso in un incubo di spine, prese e connettori non corrispondenti.

Volevamo trovare una via di mezzo tra prezzo, praticità e robustezza. Allo stesso modo, non volevamo imporre all'utente come utilizzare lo strumento, quindi volevamo mantenere le cose il più aperte possibile.

Abbiamo affrontato un bel viaggio per capire quale fosse il modo migliore per rendere pratico il DigiLab, pur mantenendo i costi bassi. A un certo punto abbiamo provato anche con i connettori a banana, ma si sono rivelati troppo ingombranti.

Discutendo con l'equipaggio, ci siamo trovati d'accordo sul fatto che l'SMA era la strada da percorrere: è piccolo, comune e soddisfa tutti i requisiti meccanici. Abbiamo trascorso molto tempo a scavare nei mercati delle materie prime alla ricerca di un prodotto esistente, ma non abbiamo trovato nulla.

$34 per questo... se siete produttori di cavi... qui si apre un mercato!

Se usiamo SMA come elemento di vincolo: il prodotto più vicino che abbiamo trovato è ~$34 per cavo - decisamente fuori dalla nostra fascia di prezzo. Se invece il connettore era flessibile, c'erano migliaia di cavi multimetro disponibili, ma tutti con ingombranti connettori a banana. Abbiamo effettivamente eseguito un prototipo con connettori a banana. In base ai nostri test, questi non solo erano brutti, ma aggiungevano un'enorme leva meccanica su un circuito stampato delicato. A lungo andare, questo avrebbe finito per distruggere il PCB.

Alla fine abbiamo scelto la strada della personalizzazione: il vantaggio è stato quello di poter creare le sonde esattamente come le volevamo (compatte, carine, utili) e di utilizzare il connettore SMA. Naturalmente, ciò ha comportato la necessità di costruire utensili per le sonde e di realizzare cavi personalizzati, ma siamo soddisfatti del risultato e felici di non aver ceduto su questo punto.

L'unica parte che è rimasta invariata tra il prototipo e il prodotto finale è la punta della sonda. Essa consente agli utenti di curiosare (letteralmente) in un circuito, in stile sensore a penna, se lo desiderano. Allo stesso tempo, è rimovibile, in modo da poter inserire un filo come supporto, dando all'utente la libertà di decidere esattamente ciò di cui ha bisogno - o di rimuoverlo completamente. Se l'utente collega le sonde, può utilizzare il dispositivo in modalità 'desktop' o 'laboratorio'.

Alla fine, crediamo di aver trovato una soluzione elegante nella sua semplicità.


Design estetico

Da tixlegeek:

Quando ho iniziato a lavorare alla grafica di questo prodotto, conoscevo già la storia che volevo raccontare. Il LightMessenger aveva dato il tono giusto e il DigiLab doveva seguire questa strada. Avevo una visione chiara: un bambino con un colino in testa, che brandisce un blaster di segnalazione improvvisato per respingere gli alieni. Pensate a Commander Keen e a Cuore di tenebra, nel mondo cupo di una distopia dell'informazione.

Ho abbozzato una serie di concetti e li ho trasformati in illustrazioni, alcune delle quali sono finite sulla scatola di cartone del DigiLab.



Prototipi pronti per la produzione

Dopo settimane (e molte iterazioni), avevamo finalmente un hardware funzionante, un fattore di forma solido e un prodotto di cui eravamo orgogliosi. È stato emozionante, ma in realtà è solo un terzo della storia. L'hardware da solo non significa nulla senza il software, e in più bisognava pensare ai test di produzione.

Abbiamo realizzato una prototipazione rapida di PCB tramite JLCPCB.


Il codice

All'inizio il codice è stato un po' un incubo: stavo cercando il modo più veloce e affidabile per campionare e visualizzare i segnali. Il Digilab divide i segnali rilevati in due parti: una rappresentazione analogica a bassa frequenza e un rendering pulito delle oscillazioni intorno a 0 V. L'idea era quella di misurare frequenze e tensioni e lasciare che il software calcolasse alcune metriche utili.

Ho finito per scrivere un software personalizzato, utilizzando buffer ad anello, analisi statistica e un po' di "magia" per far funzionare il tutto. Considerate le limitazioni hardware di Flipper Zero, sono molto soddisfatto di come è stato realizzato. Ne sono nati diversi strumenti, ciascuno con scene chiare e pratiche, in modo che l'utente debba a malapena pensare a ciò che accade in background.

Per I²C e SPI, c'è un sistema di rilevamento dei componenti basato su database che utilizza diverse tecniche per indovinare il tipo di dispositivo che viene sondato. L'applicazione I²C, in particolare, include un piccolo editor esadecimale di cui sono particolarmente orgoglioso: credo che sarà davvero utile.

Infine, gli strumenti Scope e Probe sfruttano al meglio l'hardware e offrono all'utente opzioni flessibili per regolare il feedback cinetico nel modo che preferisce.


Test

Come per il LightMessenger, volevamo che il test dei PCB fosse automatizzato al 100%. Ciò significa che ogni PCB è sottoposto a una serie di test che deve superare. Ciò richiede la progettazione e la costruzione di un hardware di test (chiamato "jig") e anche del software di test.

Naturalmente, questo comporta "più lavoro" e si può essere tentati di optare per la sola ispezione visiva, per risparmiare tempo o tagliare qualche angolo. Alcune fabbriche di PCBA spingono addirittura per l'ispezione visiva.

Tuttavia, il motivo per cui il collaudo al 100% è importante è il passaggio di responsabilità. Immaginiamo che si opti per l'ispezione visiva. Le PCBA vengono completate e poi integrate in un prodotto finale, imballato e spedito al vostro magazzino. Magari inviate le unità ai vostri distributori e infine lanciate il prodotto.

Siete alla fine del ciclo di produzione e vi sentite sollevati. Improvvisamente, però, ricevete un feedback dai clienti. Il dispositivo non funziona in una situazione specifica. Prendete un prodotto in magazzino e vi accorgete che un componente è stato saldato in testa durante la produzione.

Chiamate la fabbrica e lamentatevi. Loro vi dicono che l'ispezione visiva è stata superata e voi accettate il prodotto. La responsabilità di risolvere il problema è passata dalla fabbrica a voi e persino ai vostri clienti. Risolvere questo problema è incredibilmente costoso, in termini di tempo, denaro e reputazione dei clienti.

Se i circuiti stampati fossero stati testati elettronicamente, il guasto sarebbe stato individuato e la responsabilità di risolvere il problema sarebbe passata alla fabbrica di PCBA.

Se state producendo, investite tempo in test adeguati.

Per il DigiLab abbiamo costruito una maschera di prova basata sul CH32V003 che controlla tutte le funzionalità e fornisce al produttore un feedback semplice e di facile comprensione. Sono state necessarie alcune modifiche e una chiara procedura passo-passo per assicurarsi che si inserisse senza problemi nel processo di produzione.

Ecco alcune immagini della maschera di prova:

Ho saldato i punti di prova per emulare i pogo pin e ho corretto diversi errori commessi nella prima iterazione.

Poi il nostro produttore interno l'ha integrata sul banco di prova, con hardware personalizzato:


Imballaggio

Preferiamo utilizzare un imballaggio semplice:

  • Cartone non sbiancato e non rivestito, per ridurre al minimo l'impronta di sostanze chimiche dannose.
  • inchiostri a base di soia, per ridurre al minimo l'impatto ambientale
  • Inserti di schiuma semplici (senza tagli personalizzati, ecc.) per ridurre al minimo i costi.

Riteniamo che questo sia un equilibrio tra i nostri impegni etici e la possibilità di offrire al cliente una piacevole esperienza di unboxing. Allo stesso modo, siamo onesti con i clienti: non pagano per qualcosa che poi butteranno via.

Con il LightMessenger abbiamo imparato che qualche centimetro in più nell'imballaggio finisce per tradursi in palette in più nella consegna, e volevamo evitare questo problema con il DigiLab.

Abbiamo quindi optato per una scatola molto più sottile. Abbiamo sperimentato diverse configurazioni di schiuma non tagliata, ma non siamo riusciti a trovare un modo soddisfacente per presentare il dispositivo, le sonde e il punto di sonda. Senza ritagli, le cose galleggiavano all'interno della scatola. Con più strati di schiuma non tagliata, gli utenti potevano aprire la scatola e pensare che mancassero delle parti. Alla fine abbiamo utilizzato due strati, con un taglio 'intelligente', in modo che aprendo la scatola si potessero vedere le sonde sottostanti.


La nostra scatola.


Conclusione

Il DigiLab è un po' difficile da descrivere: offre un modo unico di "sentire" i circuiti, sfruttando luce, suono e vibrazioni. Quando si ha tra le mani il dispositivo o lo si vede in azione, improvvisamente tutto scatta.

Compiti che prima erano difficili o un po' scomodi da testare (soprattutto cose come: Si tratta di CAN_HI o CAN_LO? C'è un segnale su questa linea? Si tratta di 9600 baud o 38400 baud?) sono "magicamente" possibili.

Ironicamente, siamo rimasti sorpresi dall'utilità del dispositivo. Durante i nostri test, abbiamo scoperto sempre più casi d'uso dello strumento e ci siamo ritrovati a utilizzarlo spesso per le attività quotidiane.

Uno dei preferiti a sorpresa è l'esploratore I2C. In teoria, la manipolazione I2C è "facile", o un "problema risolto": si collega il modulo a una piattaforma dotata di I2C e si interagisce con il modulo. In realtà, questo significa scrivere codice su Arduino o combattere con i driver su Raspberry PI. Non è intuitivo. Con il DigiLab, il dispositivo viene rilevato e identificato immediatamente ed è possibile accedere direttamente ai registri del modulo. Quando si vede quanto è facile, improvvisamente tutti gli altri modi sembrano incredibilmente complicati.

Per questo motivo, siamo molto orgogliosi del DigiLab. Abbiamo realizzato un accessorio open-source di qualità per Flipper Zero che risolve problemi comuni in modo unico e che speriamo venga utilizzato quotidianamente da tutti gli appassionati di elettronica.

Se siete interessati a dare un'occhiata al prodotto finale, il DigiLab, ve ne saremo grati.

Il dispositivo è completamente open-source; controllate il codice su GitHub.

Grazie mille

Lab401 e tixlegeek.

Articolo precedente Dobbiamo parlare dell'iCopy-X.
Articolo successivo Building the LightMessenger : Manufacturing, Part 2

Lascia un commento

I commenti devono essere approvati prima di pubblicazione

* Campi obbligatori