Make IoT Child s play Gamifying IoT with Vorto & Kura Alexander Edelmann, Vorto Committer Luca Dazi, Kura Committer
Make IoT Child s Play - Overview IoT Fever Game with Vorto & Kura 3 Mosquitto Server TI Sensor Tag 2 Measured Data 1 Measured Data (BLE) Kura SensorTag OSGI Service Bundle Describes Generates IoT Gateway Stack Information Model Repository Information Model TI Sensor Tag Mapping (Kura BLE) TI Sensor Tag Kura Code Generator Reads
Make IoT Child s Play - Kura IoT Gateways Revolution: Towards Real-time Actionable Data Business Application MQTT Broker
Remote Management Configuration Management... Administration GUI Updates Management Remote Access Make IoT Child s Play - Kura Eclipse Open IoT Stack for Java Applications Your Application Your Application Connectivity and Delivery Field Protocols Cloud Services Data Services MQTT Paho Modbus Network Configuration Cellular, Wi-Fi, Ethernet Firewall, Port Forwarding Link Monitors CANBus Basic Gateway Services DB Service Clock Service Device Profile Watchdog Custom Protocols Device Abstraction javax.comm Java HID APIs javax.usb w/ udev access GPS Position javax.bluetooth / BLE GPIO / SPI / I2C jdk.dio Your Application OSGi Application Container (Eclipse Equinox, Concierge) Java SE 7 / 8 (OpenJDK)
Make IoT Child s Play - Kura Using Services Acquire the relevant Declarative Service Define Service members Define Service hooks methods Use the Service
Make IoT Child s Play - Kura OSGi Metatype Definition Define a metatype for Application-specific configurable data... And manage those data with the WebUI (Or remotely...)
Make IoT Child s Play - Vorto Information model Abstract representation of functionalities and properties of the TI SensorTag TI Sensor Tag Information Model Mapping Functionblock: Accelerometer Sensor Functionblock: Temperature Sensor Functionalities - Accelerometer Sensor - Temperature Sensor - Humidity Sensor - Pressure Sensor - etc. Functionblock: Humidity Sensor Functionblock: Pressure Sensor Device specific information Information Models are created using the IoT Toolset.
Make IoT Child s Play - Vorto The IoT Tool Set realized as Eclipse plugins and provides a textual DSL editor Overview of Vorto Models in the local workspace View & Edit Vorto Models in a DSL Editor Search & Download Vorto Models from the centralized Vorto Repository.
Make IoT Child s Play - Kura The Vorto DSL: An easy way to describe a device Vorto Meta Model Complies to
Make IoT Child s Play - Vorto Vorto Model Repository Manage & Share Information Models in a centralized repository. REST Vorto IoT Tool Set Search Download Upload 3rd Party Tool / App REST vorto.eclipse.org/repo
Make IoT Child s Play - Vorto A single platform for different stakeholders Great, let me generate it for my platform. Ok, I will add the sensor and share it again Search & Download Upload Model User A The temperature sensor is missing! Comment Create Watch & Receive Change Notifications Stefan B. Looks interesting. I want to stay informed Alex User B
ios Platform Kura Bosch M2M Make IoT Child s Play - Vorto Information Models can be transformed in various representations. Example Code Generators are: ios Swift Java, XML Java, XML, XSD IoT Tool Set Information Model Repository Code Generator Extension Point
Make IoT Child s Play - Vorto Code Generation: Kura TI Sensor Tag OSGI Bundle Generated OSGI Bundle Sensor BlueTooth Detection create TI SensorTag 2 Code Generator BlueTooth Service IoT Gateway Stack MQTT Client IoT Gateway Services Information Model 1 Communicates Information Model Repository
Make IoT Child s Play - Vorto Vorto Toolset Architecture Repository Connector Information Meta Model Vorto Model DSL Editors Bosch Kura Other Eclipse Xtext Code Generator Infra Eclipse Modelling Framework Eclipse Platform Source Code available under https://github.com/eclipse/vorto Legend Vorto Components Vorto Dependencies
Make IoT Child s Play - Vorto Vorto Repository Architecture Eclipse Toolset Browser REST Controllers Repository Services Reference Resolution Import Export (DSL,XMI) Validation Search Vorto Information Meta Model Modeshape Engine Federation Connectors EMF XText Legend Persistence Vorto Components Vorto Dependencies
1 Make IoT Child s Play Putting it all together in a demo 3 Mosquitto Server TI Sensor Tag 2 Measured Data 1 Measured Data (BLE) Kura SensorTag OSGI Service Bundle Describes Generates IoT Gateway Stack Information Model Repository Information Model TI Sensor Tag Mapping (Kura BLE) TI Sensor Tag Kura Code Generator Reads