node.js is made for iot - node.hh 07/16, hamburg by michael kuehne

19
is made for IoT Michael Kuehne Head of Dev @ cybus

Upload: michael-kuehne

Post on 13-Apr-2017

108 views

Category:

Technology


0 download

TRANSCRIPT

is made for IoT Michael Kuehne

Head of Dev @ cybus

Who are these IoT Developers?

Some Numbers Javascript = Prefered Language of ~ 58% IoT Developers

~ 56% IoT Developers = Hobbyists with Non-IoT Background

What are they develop? App for Existing Device (Smart Watch)

Standalone Device (Fitness Band)

Integ. Limited # of Sensors (Hub)

Integ. Devices in Network (Smart City)

Combining Data from Mult. Sources (Health App)

Data Aggreg. From Exisitng Devices (Air Quality)

Back-end Development

VisionMobile „IoT Developer Landscape 2015“

Cybus: A Middleware for the Industrial Internet of Things

Security Monitoring Maintenance Efficiency Sovereignty

Async

Why Node.js?

  Single Threaded

  Event-Driven, Non Blocking I/O Model

  Speed, Scalability & Efficiency of JS and V8

  Well-proven for APIs & Microservice Architecture

  Well-developed IoT Modules

„The Node.js community made node.js THE platform for IoT“

Supported Protocols

MQTT Protocol

Open Industry Standard (by OASIS)

M2M connectivity Protocol

Lightweight Publish/Subscribe Protocol

Data Agnostic

Small Footprint

Low Bandwith (min. size 2 bytes)

TLS & Certificates

MQTT Basics

Topics

io/cybus/dobot/status/coordinates

io/cybus/dobot/command/coordinates

Messages

[io/cybus/dobot/status/coordinates] -0.4976327,13.7116192

Quality of Service Levels

0 – best effort

1 – deliver at least once

2 – deliver exactly once

io/cybus/+/status/coordinates

io/cybus/dobot/status/#

MQTT Publish/Subscribe

MQTT Broker

Monitoring

Maintenance

publish: -0.49...,13.71...

publish: -0.49...,13.71...

subscribe

subscribe

publish: -0.49...,13.71...

Topic: io/cybus/dobot/status/coordinates io/cybus/dobot/command/coordinates

MQTT & Node.js

Client

MQTT.js

Bridge

Ponte (MQTT <> REST API <> CoAP)

Broker

Mosca (written in node.js)

Mosquitto (open source)

VerneMQ (enterprise – open source)

HiveMQ (enterprise – commercial)

Demo Time Let‘s move...

But how?

Node-RED

A visual tool for wiring the Internet of Things

created by IBM

Pulls different device APIs and online services together

Extendable with plugins written in node.js

Written in node.js

Rapid Prototyping for IoT

Wanna know more!? Checkout meetup.com/Node-RED-Hamburg

Demo Time Let‘s talk...

But there‘s so much more

Conclusion

Node.js is made for industrial IoT

One Language for the whole plattform

Less Resources but Speed

Great for Microservice Architecture

Supports & Integrates different industrial protocols

Node-RED

23. – 25. September

Energiecampus, Hamburg

Subscribe to our Newsletter what-the-data.com/alpha

Thx! ...and get connected!

cybus.io @cybus_io [email protected]

Pssst! We‘re hiring!

Michael Kuehne @michikuehne [email protected]

Appendix

MQTT

MQTT.js - https://www.npmjs.com/package/mqtt

Ponte http://www.eclipse.org/ponte

Mosca - https://github.com/mcollina/mosca

Mosquitto - https://mosquitto.org

VerneMQ - https://vernemq.com

HiveMQ - http://www.hivemq.com

IoT Stuff

Cylon.js - https://cylonjs.com

Johnny five - http://johnny-five.io

Tessel - https://tessel.io

Node-Red - http://nodered.org

Intel XDK IoT Edition - https://software.intel.com/en-us/intel-xdk-iot-edition-guide