Con il ronzio dell'elettronica verso l'IoT, la comunicazione da macchina a macchina e i dispositivi connessi, i progettisti sono alla costante ricerca di una sublime modalità di tecnica di comunicazione per scambiare informazioni tra due dispositivi elettronici. Sebbene ci siano già molte opzioni tra cui scegliere come BLE, NFC, RFID, LoRa, Sigfox ecc., Una società chiamata Chirp ha sviluppato un SDK che consente lo scambio di dati tramite audio semplicemente utilizzando l'altoparlante e il microfono del dispositivo senza la necessità di abbinamento. Inoltre, l'SDK è indipendente dalla piattaforma e supporta anche la comunicazione dati a bassa potenza.
L'SDK codifica i dati in un flusso audio univoco e li riproduce attraverso l'altoparlante del dispositivo, questo flusso audio può quindi essere rilevato da qualsiasi dispositivo utilizzando un microfono e decodificarlo, per ottenere il messaggio effettivo. L'SDK è multipiattaforma e supporta già Android, iOS, Windows e python tra gli altri. Può anche essere utilizzato su piattaforme microcontrollore come ARM e supporta piattaforme di sviluppo come ESP32 e Raspberry Pi. Per saperne di più su Chirp e sulle sue possibili applicazioni, Circuit Digest si è rivolto al Dr. Daniel Jones - CTO di Chirp, per discutere alcune domande. Le risposte per le quali sono riassunte di seguito
1. Qual è la tecnologia alla base di chirp e come funziona?
Il chirp è un modo per trasmettere informazioni utilizzando le onde sonore. A differenza del Wi-Fi o del Bluetooth che utilizza le frequenze radio, Chirp codifica i dati in toni che possono essere riprodotti (trasmessi) utilizzando qualsiasi altoparlante del computer e ricevuti tramite qualsiasi microfono del computer senza la necessità di avere alcun hardware aggiuntivo come i chip RF. Ciò consente a Chirp di essere utilizzato su qualsiasi dispositivo di consumo che abbia un altoparlante e un microfono, come telefoni cellulari, laptop, sistema PA, ecc. E può trasmettere informazioni anche tramite lo streaming di YouTube o la trasmissione TV.
I toni udibili codificati riprodotti attraverso l'altoparlante sono sensibili agli esseri umani e suona come un minuscolo brano di canto digitale degli uccelli, da cui il nome "cinguettio". Ma possiamo anche sfruttare il fatto che l'altoparlante e il microfono del computer possono effettivamente funzionare anche con frequenze ultrasoniche che non sono udibili dall'orecchio umano, in questo modo possiamo anche trasmettere informazioni sul suono che non possiamo sentire.
2. Con così tanti protocolli di comunicazione wireless intorno a noi come BLE, NFC, RFID, LoRa ecc. Perché abbiamo ancora bisogno del chirp? Cosa c'è di unico con esso?
Uno dei motivi sarà l'attrito estremamente basso di Chirp. A differenza di Bluetooth o Wi-Fi, posso utilizzare Chirp per avviare immediatamente una comunicazione da uno a molti per condividere un messaggio con tutti quelli che mi circondano senza doverli accoppiare. Rende molto più facile condividere qualcosa rapidamente e facilmente con tutti intorno alla stanza o al tavolo. È molto utile per connettersi con persone che non ho mai incontrato prima o per interagire con macchine che forse non avevo mai incontrato prima. Ad esempio aprire uno smart locker o condividere un biglietto da visita ecc.
A parte questo, molto tempo vediamo anche che Chirp viene utilizzato anche nella comunicazione peer to peer. Ad esempio, Shuttl una compagnia di autobus indiana sta usando Chirp tra l'autista dell'autobus e il passeggero per verificare se la persona è salita sull'autobus e se il suo biglietto è stato riscattato.
3. È possibile impostare una comunicazione mesh con Chirp? Posso comunicare con più dispositivi?
Sì, una delle cose fondamentali da ricordare del suono è che si tratta di un tipo di comunicazione di troppo, il che significa che qualsiasi cosa nelle vicinanze che si trova nel raggio udibile del nostro trasmettitore sentirà il suono e riceverà i dati. Ciò presenta vantaggi e limitazioni. Il vantaggio è che è molto facile per la condivisione multicast. Per cose come la rete a maglie potrebbe funzionare, ma avresti bisogno di una sequenza di ricevitori all'interno del raggio dell'altro. Quindi, normalmente tendiamo a usare il chirp di più per uno o molti scenari di trasmissione.
4. Come può Chirp funzionare senza alcun abbinamento? Questo porta a problemi di sicurezza dei dati?
Abbiamo una minuscola app demo chiamata "Chirp Messenger" (disponibile su Android e iOS Store) che mostra come funziona il nostro SDK. Per inviare un messaggio l'utente può digitare il messaggio e premere invia che incorporerà il messaggio in un tono udibile e lo riprodurrà attraverso l'altoparlante del mio telefono. Pertanto, qualsiasi dispositivo nelle vicinanze, su cui è in esecuzione il nostro kit per sviluppatori, può ricevere questi toni audio tramite il microfono. Questi toni audio vengono decodificati in base alla frequenza costituente e viene applicata la correzione degli errori per contrastare gli effetti del rumore e della distorsione per ottenere il messaggio effettivo. In questo modo Chirp è completamente gratuito, tutto ciò che serve è ascoltare i toni e decodificarli.
Ci sono alcune implicazioni di sicurezza che possono essere utilizzate quando si inviano dati sensibili tramite Chirp, come la stratificazione di alcune funzionalità di sicurezza sul protocollo esistente. Poiché Chirp è solo un mezzo di trasferimento, puoi incorporare qualsiasi cosa in quei toni. Ad esempio, puoi utilizzare la crittografia RSA o AES per crittografare i tuoi dati prima di inviarli su un chip e quindi decrittografarli utilizzando la crittografia a chiave pubblica.
5. Chirp è sufficientemente piccolo da poter essere utilizzato con controller integrati a bassa potenza? Quanta energia consuma?
Ci sforziamo di ottimizzare il più possibile il nostro SDK. Abbiamo un fantastico team DSP incorporato che elimina ogni bit e byte non necessari dal codice per ridurre il ciclo della CPU. Il motivo è che una delle grandi aree in cui stiamo assistendo a una diffusione è con il chip di campo incorporato. Soprattutto se si desidera comunicare con un dispositivo IoT a bassa potenza e con specifiche ridotte. Il nostro SDK può anche essere eseguito su un processore ARM Cortex M4 in esecuzione a una frequenza di 90 Mhz con meno di 100 kB di RAM.
Le misurazioni della potenza sui controller Cortex-M4, misurate sulle nostre schede di sviluppo, erano di circa 20 mA durante l'ascolto attivo e meno di 10 µA in modalità Wake-On-Sound con 90 M di cicli al secondo. La modalità Wake-on-sound utilizza microfoni a bassissima potenza di un produttore chiamato Vesper che produce potenza zero sempre sul microfono. In questo modo il microfono verrà elencato attivamente per il suono e quando sente un chrip riattiverà il controller Cortex dalla modalità sleep per decodificare i dati.
6. Quale sarebbe il raggio di comunicazione e il carico utile per Chirp Communication?
In termini di portata, tutto dipende da quanto forte viene trasmesso il segnale dall'altoparlante. Maggiore è il volume della trasmissione, maggiore è la portata, questo perché per ricevere le informazioni i microfoni dovrebbero ascoltarle prima. Possiamo controllare la portata semplicemente controllando il livello di pressione sonora del dispositivo di emissione. All'estremità più lontana puoi trasmettere un cinguettio a un intero stadio trasmettendo i tuoi dati a centinaia di metri di distanza oppure puoi abbassare il volume del nostro altoparlante per trasmettere i tuoi dati all'interno di una stanza.
In termini di velocità dati, il canale acustico è rumoroso e quindi non è una velocità che potrebbe essere utilizzata per competere con Bluetooth o Wi-Fi. Stiamo parlando di centinaia di bit al secondo e non in megabit. Il che significa che Chirp è consigliato per essere utilizzato per inviare piccoli dati come valori di token, ecc. I nostri protocolli più veloci funzionano a una velocità di 2,5 kb / sec, ma questi sono per scenari in stile NFC a corto raggio. Su un intervallo molto lungo, la velocità dei dati sarebbe di 10 bit al secondo.
7. Poiché i dati vengono scambiati utilizzando le onde sonore, in che modo sarà immune al rumore ambientale?
Ovviamente l'ambiente che ci circonda è incredibilmente rumoroso, dai ristoranti agli scenari industriali i rumori di fondo sono sempre presenti. Siamo originariamente usciti da un laboratorio di ricerca dell'Università di Londra, Computer Science Lab, che si occupava principalmente del problema di come comunicare acusticamente in un ambiente rumoroso. E abbiamo diversi dottorandi e professori che cercano di risolvere questo problema. È qui che si concentrano molte delle nostre ricerche e abbiamo più brevetti in questo settore.
A testimonianza di ciò, abbiamo operato con successo in una centrale nucleare qui nel Regno Unito. Siamo stati spinti da una società chiamata EDF Energy per inviare carichi utili ad ultrasuoni oltre 80 metri di distanza negli ambienti di sfondo incredibilmente assordanti fino a 100 decibel che dobbiamo indossare come difensori. Tuttavia siamo stati in grado di ottenere il 100% di integrità dei dati in un test di 18 ore dell'apparecchiatura.
8. Quali sono le altre piattaforme hardware a basso consumo che saranno supportate da Chirp?
Abbiamo già un SDK stabile per ARM Cortex M4 e M7 e poi stiamo lavorando su send only SDK per ARM Cortex M0 che è un processore a virgola fissa che non ha architettura a virgola mobile. Supportiamo anche ESP32 tramite la piattaforma Arduino e abbiamo anche iniziato a esaminare il supporto FPGA per processi estremamente efficienti.
9. Dove viene attualmente utilizzato il chirp, puoi fornirci alcuni esempi di casi d'uso?
Il rilevamento di prossimità è davvero un'ottima applicazione. Poiché solo le persone vicino a te possono sentire i tuoi cinguettii, può essere usato come euristica per sapere chi è intorno a te. Chirp viene utilizzato da un'enorme piattaforma di social gaming chiamata Roblox come un modo per i giovani giocatori di rilevare altre persone vicine a loro, utilizzando efficacemente i cinguettii ultrasonici. In questo modo posso tirare fuori il mio cellulare e fungerà da faro ultrasonico che verrà scoperto da altri giocatori nella stanza per avviare una sessione di gioco.
Stiamo anche per lanciare una partnership con un'importante azienda di sale riunioni per aiutarli con la navigazione interna utilizzando Chirp. Mentre cammini da una stanza all'altra in un edificio, è molto importante che il tuo dispositivo sappia in quale stanza ti trovi. Con questa organizzazione utilizziamo il chirp come mezzo per il tuo laptop o cellulare per sapere in quale stanza ti trovi e consentono di stabilire una connessione a una sala riunioni.
10. Quali sono i termini di licenza per Chirps SDK? Che tipo di lealtà è coinvolta?
Per piccole imprese, hobbisti e produttori di fai da te Chirp è completamente gratuito fino a 10.000 utenti attivi mensili. Questo perché vogliamo davvero vedere le persone che utilizzano la nostra tecnologia e la comunità degli sviluppatori che la sperimentano. Oltre a questo, vogliamo anche sostenere le piccole imprese. Per le aziende e i clienti più grandi, tendiamo a far pagare loro una tariffa annuale