2016.04.17 Firenze. Iottly, open source Internet of Things distribution



Similar documents
M2M, IoT, DEVICE MANAGEMENT: ONE PROTOCOL TO RULE THEM ALL? Julien Vermillard, Sierra Wireless

IoT concepts Andrea Acquaviva EDA group Politecnico di Torino, Italy

DIY Device Cloud Documentation

CARRIOTS TECHNICAL PRESENTATION

M 2 M IWG. Eclipse, M2M and the Internet of Things. Overview. M 2 M Industry WorkGroup! M2M?

AdRadionet to IBM Bluemix Connectivity Quickstart User Guide

Deployment Topologies - DPAdmin An isoagroup Product

Next Generation Open Source Messaging with Apache Apollo

UPnP Internet of Things Dec 2014

KURA M2M/IoT Gateway. reducing the distance between embedded and enterprise technologies. Tiziano Modotti, October 28 th, 2014

Towards a common definition and taxonomy of the Internet of Things. Towards a common definition and taxonomy of the Internet of Things...

Bringing M2M to the web with Paho

UPnP Internet of Things

Secure Cloud and Remote Service Connections for AllJoyn Applications

Building Multi-Site & Ultra-Large Scale Cloud with Openstack Cascading

Building Internet of Things applica5ons with COMPOSE and JavaScript Charalampos

CCN. CCNx 1.0 Internet of Things Architectural Overview. Computer Science Laboratory Networking & Distributed Systems March 2014

The fabryq IoT prototyping platform

ONEM2M SERVICE LAYER PLATFORM INITIAL RELEASE

API MORNING. IBM Bluemix. The Digital Innovation Platform IBM Corporation

Intel IoT Gateways: Publishing Data to an MQTT Broker Using Python

SILVER PEAK ACCELERATION WITH EMC VSPEX PRIVATE CLOUD WITH RECOVERPOINT FOR VMWARE VSPHERE

Design of Home Automation Framework With Social Network Integration

A central continuous integration platform

Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems

Open Source SCADA. A Framework for the Connected World. Remote Monitoring and Control 2014 SCADA Technology Summit. Presented by:

Secure Cloud and Remote Service Connections for AllJoyn Applications

Architecture Workshop

Building a CloudStack UI for the Enterprise

An Open-Source Streaming Machine Learning and Real-Time Analytics Architecture

Evolving from SCADA to IoT

Skynax. Mobility Management System. System Manual

Camilyo APS package by Techno Mango Service Provide Deployment Guide Version 1.0

Reimagining Business with SAP HANA Cloud Platform for the Internet of Things

The full setup includes the server itself, the server control panel, Firebird Database Server, and three sample applications with source code.

WISE-4000 Series. WISE IoT Wireless I/O Modules

The Information Revolution for the Enterprise

CF & IoT Protocol Support

Building a Robot Kit with a Raspberry PI 2 and Windows 10 IoT Core

Web of Things Architecture

Internet of things (IOT) applications covering industrial domain. Dev Bhattacharya

WIND RIVER INTELLIGENT DEVICE PLATFORM XT

KEEPING YOUR SANITY AS YOU EMBRACE CLOUD AND MOBILE

Publish Cisco VXC Manager GUI as Microsoft RDS Remote App

How To Develop An Open Play Context Framework For Android (For Android)

Present and Act Upon. Register. Consume. Stream Analytics. Event Hubs. Field Gateway. Applications Cloud Gateway. Legacy IoT (custom protocols)

Open Source building blocks for the Internet of Things. Benjamin Cabé JFokus 2013

Apache Stratos Building a PaaS using OSGi and Equinox. Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos

Windmill. Automated Testing for Web Applications

HP OO 10.X - SiteScope Monitoring Templates

Ensuring the security of your mobile business intelligence

End-to-End M2M and IoT Services

Collaborative Open Market to Place Objects at your Service

How To Understand The Power Of The Internet Of Things

Configuring SIP Mobility for CounterPath Bria on the NetVanta 7100 and NetVanta UC Server Systems

Features of AnyShare

Introduction to MQTT. May 15th /05/2013 1

Using GitHub for Rally Apps (Mac Version)

Hong Kong Information Security Outlook 2015 香 港 資 訊 保 安 展 望

Programming IoT Gateways With macchina.io

Jenkins and Chef Infrastructure CI and Application Deployment

Horizontal IoT Application Development using Semantic Web Technologies

DevOps. Building a Continuous Delivery Pipeline

ManageEngine Desktop Central. Mobile Device Management User Guide

Short-range Low Power Wireless Devices and Internet of Things (IoT)

Wyse Device Manager TM

Vortex White Paper. Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems

WD My Cloud EX4 Personal Cloud Storage Release Notes for Firmware

Web of Things Use Cases and Solutions at FZI

Using the Raspberry Pi to Prototype the Industrial Internet of Things

Oracle WebLogic Server: Remote Monitoring and Management

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

Why Use ThinManager to Manage Thin Clients? White Paper. For more information, please visit:

Who s Endian?

Cloud3DView: Gamifying Data Center Management

Sisense. Product Highlights.

Memopol Documentation

Azure Data Lake Analytics

Life With Big Data and the Internet of Things

CROSS PLATFORM AUTOMATIC FILE REPLICATION AND SERVER TO SERVER FILE SYNCHRONIZATION

Web of Things Framework

How To Set Up Wiremock In Anhtml.Com On A Testnet On A Linux Server On A Microsoft Powerbook 2.5 (Powerbook) On A Powerbook 1.5 On A Macbook 2 (Powerbooks)

StriderCD Book. Release 1.4. Niall O Higgins

How To Configure Syslog over VPN

QoS VPN Router.

Installing and Using the vnios Trial

Enterprise Mobile App Management Essentials. Presented by Ryan Hope and John Nielsen

Could IoT be WebRTC's greatest source of innovation?

Leveraging Cloud Storage Through Mobile Applications Using Mezeo Cloud Storage Platform REST API. John Eastman Mezeo

Chapter 6 Using Network Monitoring Tools

Building Cloud-Connected Solutions with Exosite and Texas Instruments

1. What are the System Requirements for using the MaaS360 for Exchange ActiveSync solution?

Cloud Infrastructure Planning. Chapter Six

Short range low power wireless devices and Internet of Things (IoT)

Transcription:

2016.04.17 Firenze

About me Stefano Terna Technical co-founder @ TomorrowData @stefanoterna stefanoterna stefano.terna@tomorrodata.io

About TomorrowData Domain: IoT & Machine Learning for SMEs Open Source: Iottly Project Technologies: IoT continuous integration Remote machine learning

Topics Introduction to key IoT concepts Iottly live demo Working with the source code Road map

Technological phase transitions A different arrangement of parts that makes a new whole with different properties Carbon IT Infrastructures Bandwidth Virtualization Pressure > 10 GPa Storage cost CPU cost CLOUD Data Volume Velocity Variability Embedded devices Sensors cost Low power Pervasiveness Internet BIG DATA

IoT post transition issues Embedded devices Industrial automation Pre transition It works Don t touch it anymore!! (or upgrade rarely) Post transition Integrating Delivering Devices Put your logic cloud-side Don t touch it anymore!! (or upgrade rarely)

IoT post transition issues Logic and useful functions cannot just live in the cloud. They should be implemented on the field : to benefit from real-time high frequency data captured by sensors to build reliable solutions for critical industrial applications to reduce action latency and bandwidth consumption to make the data actionable even if the connection is discontinuous We have too many devices to forget about continuously integrating and delivering the firmware. what happens if the device won t reboot? what happens if firmware is corrupted during transfer?

IoT post transition issues Embedded devices Industrial automation Pre transition Post transition Security? Who cares about small devices on his local network... Who knows the meaning of the messages... Security Privacy hackers remotely kill jeep highway 2015 July Best practices Security? Don t use the same password for every device encryption

Open Source Open Source plays a fundamental role in addressing the main issues arising in the IoT scenario: interoperability, security and privacy A true interoperability can be achieved only if the building blocks can be shared by producers and developers among the different solutions, platforms and devices. In turn, such a wide spreading of the same code base will increase security, by enabling cross testing processes, performed by multiple independent parties in different application contexts. Moreover publishing the code that handles the data will result in a much stronger answer to the privacy demand than just asking the user to accept formal policies.

Distribution An IoT Platform is not just a program It is an entire ecosystem of architectural blocks They need to be properly orchestrated togheter many great open source tools already exists to cover some blocks New tech issues generated by the IoT scenario need to be addressed by new tools

Python It is easy to try out new key concepts Prototyping on both sides of the IoT pipeline (MicroPython) Orchestrating existing and new tools Fabio Pliger, The IoT (r)evolution, present and future - PYCON6

Iottly https://github.com/iottly open source Internet of Things distribution

Iottly Architecture and Python map IOTTLY Core Database IOTTLY Trust Mongo DB Web framework Tornado Web server nginx Front-end security Python decorators Python Openfire SleekXMPP MQTT Payload is free JSON Custom configuration of messages MQTT / XMPP Device authentication Mosquitto paho Real-time admin control of devices Customized on payload semantics OTA firmware upgrades Allows to start controlling devices in seconds GUI Web / Responsive Real-time Customizable (controls, icons, layout) Internet / WAN / LAN Transport Ethernet / Cellular / WiFi Arduino Raspberry Pi UDOO C/C++ Python Python Agents for devices Angular JS Ready to use control app Internet / WAN / LAN JSON Device admin console Device security Mosquitto Message designer Python IOTTLY Broker XMPP IOTTLY IoT developers tools

Live demo https://demo.iottly.org

Iottly Description Iottly is an Internet of Things enabling platform Open source: IoTtly GitHub It is specifically designed to speed up industrial IoT projects where the following aspects are important: Bidirectional complex communication scenarios with remote devices, over-the-air firmware upgrade, automatic generation of device code based on message semantics. It is designed as a distribution orchestrating already existing open tools: technical insights

Iottly Main Python components - Iottly Core Iottly Core On GitHub: https://github.com/iottly/iottly-core It is written in Python on top of Tornado Main functions include: receiving incoming messages from devices, on /msg handler, via the iottly-xmpp-broker; sending messages messages to devices, via the SleekXMPP python library, which in turn is connected to the iottly-xmpp-broker; persisting incoming messages to the Iottly database which runs on Mongo; pushing messages to the iottly-console in real-time, via websockets accepting messages from the iottly-console, via the /command handler and forwarding them to remote devices; forwarding incoming messages to a client service, iottly-client-core, registered via a client callback url.

Iottly Main Python components - Iottly device agent Iottly device agent On GitHub: https://github.com/iottly/iottly-device-agent-py Designed for devices which can run Python (like Raspberry Pi, UDOO) A porting to MicroPython is under evaluation It installs onto the device enabling it to communicate with Iottly Main features include: XMPP communication to iottly-xmpp-broker via SleekXMPP library API exposed to the user, to implement complex firmware behaviours Parallel processing of multiple firmware tasks implemented via multiprocessing Python API Ability to self upgrade upon receiving Over the Air firmware upgrade via XMPP protocol no need to remotely ssh into the device for development and maintenance

Working with the source code Iottly distribution is designed to enable developers to get involved quickly and simply. It s easy to have the full Iottly architecture up and running in minutes, starting from a fresh clone of Github repos. Just read the instructions

Road map Targeting IoT Continuous integration and delivery Smart things Branch master Smart things production Smart things Git integration with Iottly Branch newfeature Merge into master Smart things Test on the field Iottly QA On the field

Road map http://tomorrowdata.io/iottly/technical-insights/

c/o Bliss Coworking Strada Basse di Dora, 42 Torino - Italia tomorrowdata.io info@tomorrowdata.io Talk given at PyCon7, 15-17 April 2016, Florence, Italy Slides distributed under Creative Commons License Attribution-Share Alike 4.0 International (CC BY-SA 4.0)