Internet of Things (IoT) Track

Apache Mynewt - ASFs First Embedded OS Project

Justin McLean, IoT Consultant & Trainer, VP Apache MyNewt

Apache Mynewt is an operating system for low powered embedded systems based on 32-bit microcontrollers. At the core is a small pre-emptive RTOS and an extensive set of modules for connectivity, file systems, power and performance management options and lots more. It is a highly flexible, responsive, general purpose OS for constrained devices, think of it as embedded Linux for devices that can’t run Linux. Features include a secure bootloader, image management, hardware abstraction, instrumentation for stats and logs. This makes it easy to going from prototype to production when using Apache Mynewt without having to reinvent the wheel.

Apache Camel: Integrate Everything

Zoran Regvart, Apache Camel Committer & PMC Member

Very little software solutions stands on their own, many need connecting to other systems using various technologies and use patterns. If you leave integration of other systems to Apache Camel you can focus on the business logic, decouple by isolating changes in the integration layer and deliver faster by not spending the time on developing integration code. Let's see how you can start with little or no knowledge of Camel and quickly end up with a working solution. The talk will go into explaining basic concepts of Camel and in steps deliver a working example in IoT space.

Revolutionizing the Production Industry with Apache PLC4X

Christofer Dutz, Senior IT Consultant, codecentric

While the cloud, big-data, fast-data, machine-learning has been a huge thing in the IT industry for the last years, the production industry was stuck in a proprietary world, dominated by some of the big players. The new incubating Apache PLC4X project aims to closing this gap by providing a unified API for communicating with industrial controllers via a wide variety of protocols. Besides providing the APIs and driver implementations, PLC4X also provides integration modules to other Apache frameworks such as Apache Edgent or Apache Camel. This makes it really easy to integrate industrial controllers into our Open-Source world. Self-optimizing production processes, predictive maintenance, industrial control systems running in the companies cloud. This was all almost impossible until now. With Apache PLC4X it will be easy.

Apache Spark and Apache Ignite: Where Fast Data Meets the IoT

Akmal Chaudhri, Technology Evangelist, GridGain

It is not enough to build a mesh of sensors or embedded devices to obtain more insights about the surrounding environment and optimize your production systems. Usually, your IoT solution needs to be capable of transferring enormous amounts of data to storage or the cloud where the data have to be processed further. Quite often, the processing of the endless streams of data has to be done in real-time so that you can react on the IoT subsystem's state accordingly. This session will show attendees how to build a Fast Data solution that will receive endless streams from the IoT side and will be capable of processing the streams in real-time using Apache Ignite's cluster resources. In particular, attendees will learn about data streaming to an Apache Ignite cluster from embedded devices and real-time data processing with Apache Spark.

IoT Applications and Patterns using Apache Spark & Apache Bahir

Luciano Resende, Data Science Platform Architect, IBM & Leucir Marin, Software Architect, IBM

The Internet of Things (IoT) is all about connected devices that produce and exchange data, and building applications that produce insights from these high volumes of data is very challenging and require a understanding of multiple protocols, platforms and other components. On this session, we will start by providing a quick introduction to IoT, some of the common analytic patterns used on IoT, and also touch on the MQTT protocol and how it is used by IoT solutions some of the quality of services tradeoffs to be considered when building an IoT application. We will also discuss some of the Apache Spark platform components, the ones utilized by IoT applications to process devices streaming data.

We will also talk about Apache Bahir and some of its IoT connectors available for the Apache Spark platform. We will also go over the details on how to build, test and deploy an IoT application for Apache Spark using the MQTT data source for the new Apache Spark Structure Streaming functionality.

Attacking IoT Developers

Olaf Flebbe, Software Architect, Robert Bosch GmbH

In this talk I will present research regarding security of development process, presenting and motivating best practises for developers. Since plenty of IoT server projects are onboarded recently both at the eclipse foundation and and the apache software foundation, it might be valid to check on best practises on these projects. I will present tools - among others - to assert the secure handling of dependencies, or to discover dependencies with known vulnerabilities. These tools were used to look into various IoT projects and selective results will be shown: surprisingly ineffective ways to verify authenticity of artefacts, usage of outdated dependencies and prominent, but not-state-of-that-art-secured repositories.

I will demo an live-attack to an IoT project developer and present some observations while working with communities to fix the issues found.

Having fun with Raspberry(s) and Apache Projects

Jean-Frederic Clere, Manager, Software Engineering, Red Hat

You can do a lot with a Raspberry and ASF projects. From a Tiny object connected to Internet to a small server application. - Raspberry as a IoT Sensor collecting data and sending it to ActiveMQ. - Raspberry as a Modbus supervisor controlling an Industruino (Industrial Arduino) and connected to ActiveMQ.