Met de elektronica zoemend richting IoT, machine-naar-machine communicatie en verbonden apparaten, zijn ontwerpingenieurs constant op zoek naar een sublieme communicatietechniek om informatie tussen twee elektronische apparaten uit te wisselen. Hoewel er al veel opties zijn om uit te kiezen, zoals BLE, NFC, RFID, LoRa, Sigfox enz., Heeft een bedrijf genaamd Chirp een SDK ontwikkeld waarmee gegevens via geluid kunnen worden uitgewisseld door simpelweg de luidspreker en microfoon van het apparaat te gebruiken zonder de noodzaak van koppelen. Bovendien is de SDK platformonafhankelijk en ondersteunt ook low power datacommunicatie.
De SDK codeert de gegevens in een unieke audiostream en speelt deze af via de luidspreker van het apparaat. Deze audiostream kan vervolgens worden opgevangen door elk apparaat met behulp van een microfoon en decoderen om het daadwerkelijke bericht te verkrijgen. De SDK is platformonafhankelijk en ondersteunt al onder andere Android, iOS, Windows en Python. Het kan ook worden gebruikt in microcontrollerplatforms zoals ARM en ondersteunt ontwikkelingsplatforms zoals ESP32 en Raspberry Pi. Om meer te weten over Chirp en zijn mogelijke toepassingen, benaderde Circuit Digest Dr. Daniel Jones - CTO van Chirp, om enkele vragen te bespreken. De antwoorden hiervoor zijn hieronder ingekapseld
1. Wat is de technologie achter chirp en hoe werkt het?
Chirp is een manier om informatie te verzenden met behulp van geluidsgolven. In tegenstelling tot Wi-Fi of Bluetooth die radiofrequenties gebruikt, codeert Chirp gegevens in tonen die kunnen worden afgespeeld (verzonden) met elke computerluidspreker en ontvangen via elke computermicrofoon zonder dat er extra hardware zoals RF-chips nodig zijn. Hierdoor kan Chirp worden gebruikt op elk consumentenapparaat met een luidspreker en microfoon, zoals mobiele telefoons, laptops, PA-systeem, enz. En kan het zelfs informatie verzenden via YoutTube-stream of tv-uitzending.
De gecodeerde hoorbare tonen die door de luidspreker worden afgespeeld, zijn gevoelig voor mensen en het klinkt als een klein stukje digitaal vogelgezang, vandaar de naam "tjilpen". Maar we kunnen ook profiteren van het feit dat computerluidspreker en microfoon eigenlijk ook kunnen werken met ultrasone frequenties die onhoorbaar zijn voor het menselijk gehoor, op deze manier kunnen we ook informatie verzenden over geluid dat we niet kunnen horen.
2. Met zoveel draadloze communicatieprotocollen om ons heen zoals BLE, NFC, RFID, LoRa enz.. Waarom hebben we nog steeds een piep nodig? Wat is er uniek aan?
Een van de redenen hiervoor is de extreem lage wrijving van Chirp. In tegenstelling tot Bluetooth of Wi-Fi kan ik Chirp gebruiken om onmiddellijk een-op-veel-communicatie op gang te brengen om een bericht met iedereen om me heen te delen zonder dat ik ermee hoef te koppelen. Het maakt het een stuk gemakkelijker om snel en gemakkelijk iets te delen met iedereen in de kamer of rond de tafel. Het is erg handig om contact te maken met mensen die ik nog niet eerder heb ontmoet of om te communiceren met een machine die ik misschien niet eerder heb ontmoet. Bijvoorbeeld een slimme locker openen of een visitekaartje delen enz.
Afgezien daarvan zien we ook vaak dat Chirp wordt gebruikt in Peer to Peer Communication. Shuttl, een Indiase busmaatschappij, gebruikt bijvoorbeeld Chirp tussen de buschauffeur en de passagier om te controleren of de persoon in de bus is gestapt en of zijn ticket is ingewisseld.
3. Is het mogelijk om een mesh-communicatie op te zetten met Chirp? Kan ik met meerdere apparaten communiceren?
Ja, een van de belangrijkste dingen om te onthouden over geluid is dat het een type communicatie is dat te veel is, wat betekent dat alles in de buurt dat zich binnen het hoorbare bereik van onze zender bevindt, het geluid zal horen en de gegevens zal ontvangen. Dit heeft zowel voordelen als beperkingen. Het voordeel is dat het heel gemakkelijk is om multicast te delen. Voor zaken als mesh-netwerken zou het mogelijk werken, maar u zou een reeks ontvangers nodig hebben binnen het hoorbereik van elkaar. Dus normaal gesproken hebben we de neiging om meer chirp te gebruiken voor een tot veel uitzendscenario's.
4. Hoe kan Chirp werken zonder enige koppeling? Leidt dit tot problemen met de gegevensbeveiliging?
We hebben een heel kleine demo-app genaamd "Chirp Messenger" (beschikbaar in de Android- en iOS-winkel) die laat zien hoe onze SDK werkt. Om een bericht te verzenden, kan de gebruiker het bericht typen en op verzenden drukken, waardoor het bericht wordt ingesloten in een hoorbare toon en wordt afgespeeld via de luidspreker van mijn telefoon. Dus elk apparaat in de buurt waarop onze ontwikkelaarskit draait, kan deze audiotonen via de microfoon ontvangen. Deze audiotonen worden gedecodeerd naar de samenstellende frequentie en foutcorrectie wordt toegepast om de effecten van ruis en vervorming tegen te gaan om het eigenlijke bericht te verkrijgen. Op deze manier is Chirp volledig vrij van paring, het enige dat nodig is, is de tonen horen en deze decoderen.
Er zijn enkele beveiligingsimplicaties die kunnen worden gebruikt bij het verzenden van gevoelige gegevens via Chirp, zoals het in lagen aanbrengen van enkele beveiligingsfuncties op het bestaande protocol. Omdat Chirp slechts een overdrachtsmedium is, kunt u alles in die tonen opnemen. U kunt bijvoorbeeld RSA- of AES-codering gebruiken om uw gegevens te versleutelen voordat u ze over een chip verzendt en ze vervolgens decoderen met behulp van cryptografie met openbare sleutels.
5. Is Chirp klein genoeg om te worden gebruikt met ingebouwde controllers met laag vermogen? Hoeveel stroom verbruikt het?
We streven ernaar om onze SDK zo veel mogelijk te optimaliseren. We hebben een geweldig ingebed DSP-team dat alle onnodige bits en bytes van de code heeft verwijderd om de CPU-cyclus te verminderen. De reden hiervoor is dat een van de grote gebieden waarop we opname zien, is met de ingebedde veldchip. Vooral als u wilt communiceren met IoT-apparaten met een laag stroomverbruik en lage specificaties. Onze SDK kan zelfs worden uitgevoerd op een ARM Cortex M4-processor die werkt op een frequentie van 90 MHz met minder dan 100 kB RAM.
De vermogensmetingen op Cortex-M4-controllers, zoals gemeten op onze ontwikkelingsborden, waren ongeveer 20 mA bij actief luisteren en minder dan 10uA in wake-on-sound-modus met 90 miljoen cycli per seconde. De wake-on-sound-modus maakt gebruik van superzuinige microfoons van een fabrikant genaamd Vesper die de microfoon altijd op nul zet. Op deze manier zal de microfoon actief noteren voor geluid en wanneer hij een piep hoort, zal hij de Cortex-controller uit de slaapstand halen om de gegevens te decoderen.
6. Wat zou het communicatiebereik en de payload zijn voor Chirp-communicatie?
Qua bereik hangt het allemaal af van hoe hard het signaal door de speaker wordt uitgezonden. Hoe hoger het volume van de uitzending, hoe groter het bereik, dit komt omdat om de informatie te ontvangen, de microfoons deze eerst zouden moeten horen. We kunnen het bereik heel eenvoudig regelen door het geluidsdrukniveau van het uitzendende apparaat te regelen. Aan het andere uiteinde kunt u een tsjilp naar een heel stadion zenden en uw gegevens honderden meters verderop verzenden, of u kunt ons luidsprekervolume verlagen om uw gegevens binnen een kamer te verzenden.
In termen van de gegevenssnelheid is het akoestische kanaal luidruchtig en daarom is het geen snelheid die kan worden gebruikt om te concurreren met Bluetooth of Wi-Fi. We hebben het over honderden bits per seconde en niet in megabits. Wat betekent dat Chirp wordt aanbevolen voor het verzenden van kleine gegevens zoals tokenwaarden enz. Onze snelste protocollen werken met een snelheid van 2,5 kb / sec, maar deze zijn voor scenario's in NFC-stijl op korte afstand. Over een zeer groot bereik zou de gegevenssnelheid 10 bits per seconde zijn.
7. Aangezien gegevens worden uitgewisseld met behulp van geluidsgolven, hoe kunnen ze dan immuun zijn voor omgevingslawaai?
Uiteraard is de omgeving om ons heen ongelooflijk luidruchtig, van restaurants tot industriële scenario's is achtergrondgeluid altijd aanwezig. We kwamen oorspronkelijk uit een onderzoekscentrum van University College London, Computer Science Lab, dat voornamelijk keek naar het probleem van hoe akoestisch te communiceren in een lawaaierige omgeving. En we hebben meerdere PhD's en professoren die dit probleem proberen op te lossen. Dit is waar veel van onze onderzoeken zich op richten en we hebben meerdere patenten op dit gebied.
Als bewijs hiervan hebben we met succes in een kerncentrale hier in het VK gewerkt. We werden ingeschakeld door een bedrijf genaamd EDF Energy om ultrasone ladingen over een bereik van 80 meter te sturen in de ongelooflijk oorverdovende achtergrondomgevingen tot 100 decibel die we verdedigers moeten dragen. Toch waren we in staat om 100% data-integriteit te bereiken tijdens een 18 uur durende test van de apparatuur.
8. Wat zijn de andere low-power hardwareplatforms die door Chirp zullen worden ondersteund?
We hebben al een stabiele SDK voor ARM Cortex M4 en M7 en vervolgens werken we aan het verzenden van alleen SDK voor ARM Cortex M0, een vaste-puntprocessor zonder drijvende-komma-architectuur. We ondersteunen ook ESP32 via het Arduino-platform en zijn ook begonnen met het onderzoeken van FPGA-ondersteuning voor extreem efficiënte processen.
9. Waar wordt chirp momenteel gebruikt, kunt u ons enkele voorbeelden geven van gebruik?
Nabijheidsdetectie is echt een goede applicatie. Omdat alleen mensen in uw buurt uw tjilpen kunnen horen, kan het worden gebruikt als een heuristiek om te weten wie er om u heen is. Chirp wordt gebruikt door een enorm sociaal gamingplatform genaamd Roblox als een manier voor de jonge gamers om andere mensen in de buurt te detecteren, effectief met behulp van ultrasone tjilpen. Op deze manier kan ik mijn mobiel tevoorschijn halen en het zal fungeren als een ultrasoon baken dat door andere spelers in de kamer kan worden ontdekt om een spelsessie te starten.
We staan ook op het punt een samenwerking aan te gaan met een groot bedrijf voor vergaderruimten om hen te helpen met indoor navigatie met behulp van Chirp. Als u in een gebouw van kamer naar kamer loopt, is het heel belangrijk dat uw apparaat weet in welke kamer u zich bevindt. Bij deze organisatie gebruiken we chirp als een manier voor uw laptop of mobiel om te zien in welke kamer u zich momenteel bevindt en stelt u in staat om verbinding te maken met een vergaderruimte.
10. Wat zijn de licentievoorwaarden voor Chirps SDK? Om wat voor soort loyaliteit gaat het?
Voor kleinere bedrijven, hobbyisten en doe-het-zelvers is Chirp volledig gratis tot 10.000 maandelijkse actieve gebruikers. Dit komt omdat we echt willen dat mensen onze technologie gebruiken en de community van ontwikkelaars ermee experimenteert. Daarnaast willen we ook kleine bedrijven ondersteunen. Voor grotere ondernemingen en klanten rekenen we hen meestal een jaarlijkse vergoeding