Slide 1

Slide 1 text

is made for IoT Michael Kuehne Head of Dev @ cybus

Slide 2

Slide 2 text

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“

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Cybus: A Middleware for the Industrial Internet of Things Security Monitoring Maintenance Efficiency Sovereignty Async

Slide 5

Slide 5 text

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“

Slide 6

Slide 6 text

Supported Protocols

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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/#

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

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)

Slide 11

Slide 11 text

Demo Time Let‘s move...

Slide 12

Slide 12 text

But how?

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

Demo Time Let‘s talk...

Slide 15

Slide 15 text

But there‘s so much more

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

23. – 25. September Energiecampus, Hamburg Subscribe to our Newsletter what-the-data.com/alpha

Slide 18

Slide 18 text

Thx! ...and get connected! cybus.io @cybus_io hello@cybus.io Pssst! We‘re hiring! Michael Kuehne @michikuehne kuehne@cybus.io

Slide 19

Slide 19 text

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