dati mqtt sul #Tangle con #MAM
Finalmente dopo aver combattuto per settimane e mesi ci siamo arrivati!
La XDK di Bosch sta inviando dati in JSON tramite MQTT al Tangle di IOTA via MAM.
Ringrazio
Come prima cosa ringrazio:
- Rck – per i sui progetti SensorNode e SensorHub
Contatti:
https://twitter.com/rckeey
https://ecosystem.iota.org/users/rck/profile
https://github.com/rckey - Christopher Aldave – ed il fantastico fantastico progetto di #IOTALima
Contatti:
https://twitter.com/chrislaive
https://github.com/chrislaive/ - La IOTA Foundation – per IOTA il Tangle (ed essere rivoluzionari)
- Bosch – per la Bosch XDK (ed essere fichi)
Il gergo
So let’s get on the jargon:
- Bosch XDK – un dispositivo sensore programmabile ed una piattaforma di prototipazione per qualsiasi caso d’uso IoT che ci si possa immaginare
- JSON – è un formato di file standard aperto che utilizza un testo leggibile dall’uomo per trasmettere oggetti dati costituiti da coppie valore-attributo e tipi di dati array (o qualsiasi altro valore serializzabile)
- MQTT o Mosquitto – è un protocollo di connettività machine-to-machine (M2M) / “Internet of Things”
- IOTA – Il primo ledger distribuito open source che stanno costruendo per dare forza al futuro dell’Internet of Things con microtransazioni senza commissioni ed integrità dei dati per le macchine
- Tangle – Il ledger distribuito di IOTA, al contrario, non consiste in transazioni raggruppate in blocchi ed archiviate in catene sequenziali, ma come un flusso di singole transazioni annodate tra di loro
- MAM (Masked Authenticated Messaging) – è un protocollo di comunicazione dati di secondo livello che aggiunge funzionalità per emettere e accedere ad un flusso di dati crittografato, come RSS, sul Tangle (Il ledger distribuito di IOTA)
La meraviglia di mqtt via MAM
Ora vediamo com’è stato costruito:
Qui vediamo la XDK di Bosch che invia i dati (io chiamo falso JSON) del sensore come temperatura, pressione ed umidità al broker mqtt. Il SendDataOverMQTT Bosch originale è stato utilizzato con alcune leggere modifiche come l’autenticazione tramite username e password al broker mqtt.
Il mio codice per la XDK di Bosch è disponibile in questo repository qui.
Questo falso JSON non è necessario in quanto il codice di Christopher Aldave transforma gli input in JSON reale, ma è meglio provare le cose aggiungere un po’ di complessità 🙂
Questo è MQTTlens (un addon per Chromium) che uso per visualizzare i dati mentre stanno arrivando.
Il primo mostro di Dr. FrankenCode:
Ho preso il codice originale dal repository MAMExample su Github di Christopher Aldave e l’ho adattato al mio scopo. Così ho aggiunto una connessione client mqtt, un subscribe (termine di mqtt) al topic mqtt.
Il mio codice per Mqtt JSON verso MAM è disponibile in questo repository qui.
Ed il secondo mostro di Dr. FrankenCode:
Ho preso il SensorHub di Rck e l’ho leggermente modificato per mostrare solo i miei dati (non un’enorme modifica, ma è comunque la sua creazione).
Questo è il risultato:
Questo non è solo bello, è fantastico!