Merging Realities
Using the Web to Bring the Internet of Things to High End Augmented Reality
FullStack Conference
#FullStackCon, London UK <2019-07-10>
#FullStackCon 2019 1 http://purl.org/aframe-webthing Philippe Coval Fabien Benetou Merging Realities Using the Web to Bring the Internet of Things to High End Augmented Reality FullStack Conference #FullStackCon, London UK <2019-07-10>
#FullStackCon 2019 2 http://purl.org/aframe-webthing $ who are we ? ● Philippe Coval – Software engineer for Samsung Open Source Group – Interest: Web of Things with “Privacy by Design” ● Fabien Benetou – WebXR developer consulting for the European Parliament / UNICEF – Mozilla Tech Speaker ● Met In 2019 at FOSDEM and mutual inspiration – Check @MozHacks
Samsung Open Source Group 23 https://social.samsunginter.net/@rzr Mozilla WebThing project ● FLOSS Platform for IoT – using Web – with Privacy By Design ● WebThing API and Schemas – Can be implemented – using native (C/C++), Python, – JS (node.js or IoT.js) ● Things gateway – to connect, control (UI) – and automate webthings G D P R G D PR A rt. 25 A rt. 25
Samsung Open Source Group 24 https://social.samsunginter.net/@rzr Javascript the language of Web (of Twins) ● IoT.js: an alternative runtime inspired by Node.js: – Powered by JerryScript engine designed for micro-controllers – Feature: Networking (HTTP, MQTT...) & IO (I2C, GPIO, ADC, PWM) ● Things can be build using webthing-iotjs module: – Standalone HTTP servers exposing Mozilla Things API: ● RESTful architecture: read, update operations – Devices can be connected to MozIoT webthing gateway ● ACL (JWT), Remote access using pkgkite tunneling – Or Web services (OpenData, Social Media etc)
#FullStackCon 2019 27 http://purl.org/aframe-webthing WebThing to XR Integration ● A-Frame components can be accessed from DOM API ● So attributes can be updated from JS – Bind Webthing from URL ● Using HTTP polling (and/or WebSockets if supported) – If shared through gateway (server): ● Set URL + JWT token to requests (client app) – authorization issued from WebUI (devel menu) ● It works both way: – Sensors: (Real to XR) & Actuators (XR to Real) ● https://www.npmjs.com/package/aframe-webthing
Samsung Open Source Group 28 https://fosdem.org/2018/schedule/event/tizen_rt/ “Any sufficiently advanced technology is indistinguishable from magic.” ~ Arthur C. Clarke
#FullStackCon 2019 31 http://purl.org/aframe-webthing Lets build the Web of Twins ? ● Digital twins – Introduced by Dr M. Grieves (2002) ● Real time (or deferred) connectivity: – Between the physical component ● and its digital counterpart ● “Devices as service” concept: ● Applies to many industries: – City, manufacturing, health, transport… ● Useful for: – Re/Co/Design – Monitoring, Quality tracking – Impact analysis: ● Dependency, process, lifecycle, financial... – Digital traces for analytic – Simulation, AI/ML etc – Improve decision making
#FullStackCon 2019 33 http://purl.org/aframe-webthing Summary ● 3D in browser has never been so easy – Using A-frame framework supported by browsers and devices ● Ready for JavaScript developers – Develop for low end microcontrollers using IoT.js – And support WebThing API to be interacted from the web ● Direct or connected to gateway (shared securely to apps) ● Let’s develop the Web of Twins: – built on FLOSS tools with privacy by design
37 https://social.samsunginter.net/@rzr Samsung Open Source Group Q&A (or Extras?) Ask now or online: https://social.samsunginter.net/@rzr https://twitter.com/@utopiah