what is iot, and how modulus and pacific can...
TRANSCRIPT
What Is IoT, and How Modulus and Pacific Can Help
Eduardo Pelegri-Llopart Vice President, Technology Progress Software
© 2014 Progress Software Corporation. All rights reserved. 2
Agenda
What Is IoT
What Is Node
Why Node.js and IoT
Two Examples
What Else? Samples, More Samples
What Is IoT
© 2014 Progress Software Corporation. All rights reserved. 4
Computing Tomorrow Today
© 2014 Progress Software Corporation. All rights reserved. 5
IoT et al. – Types & Uses
Beacons, (indoor) Location Based Services Payments Home / Office Automation Smart Buildings Industry Automation Wearables Connected Cars Smart Cities ….
Very fast moving space Brought to you by the economy of scale of mobile devices
Protocols
© 2014 Progress Software Corporation. All rights reserved. 7
IoT = Connected, Thus, Protocols
Many Protocols, in all layers Physical: Z-Wave, Zigbee, Bluetooth LE, Wi-Fi, RFID, Thread (new),
Ethernet, Radios • Radio frequency, range, power consumption • IP support, Hub/Mesh topology • Examples: iBeacon (BLE) and Philips Hue (Zigbee)
Session / Communication: • HTTP, CoAP (doc transfer)
• XMPP, MQTT, AMQP (pub/sub) What protocol to choose will vary on goals and application
(QoS, Industry/Consumer)
© 2014 Progress Software Corporation. All rights reserved. 8
Two Examples: iBeacons and Philips Hue
Apple iBeacon – notification protocol on BLE • Signal 2/s – 10/s, 3-6months/2years battery
• Power (proximity) and UID (identity)
• Point-to-Point, no pairing, 50 meters
• Indoor microlocation, retail, etc…
Philips Hue • Ethernet/IP (Bridge) + Zigbee/Mesh (Bulb)
• AC power
• REST interface (to bridge)
• Home automation
Smart Glasses
© 2014 Progress Software Corporation. All rights reserved. 10
Display: Glass vs. BT-200
Monocular Small FOV
Binocular Large FOV
Google Glass
© 2014 Progress Software Corporation. All rights reserved. 11
Business Use Cases and Key Verticals – Smart Glasses
Business Use Cases • Rich Communications – phone, messaging, video conferencing, video sharing
• Continuous data streaming – messages, tasks, alerts
• Augmented reality – Training, recording, next-step guideance, compliance
Key Verticals – Enable “Deskless Workers” 10% of workforce • Military
• Healthcare
• Manufacturing
• Logistics
• Energy/Utilities
Home Automation
© 2014 Progress Software Corporation. All rights reserved. 13
Home – Philips Hue, Nest
Building Energy Management – Enlighted Inc
Commercial Appliance Management
ESEV Charging Infrastructure
Home & Building Automation / Industrial Management
© 2014 Progress Software Corporation. All rights reserved. 14
Business Use Cases
House – Remote control and monitoring,
Automation, Energy monitoring and savings…
Smart Buildings – Better efficiency, Compliance
with new laws (California Title 24)
Industry 4.0, Smart Manufacturing
Business Use Cases – House, Office Automation, Smart Buildings
Recall Apple’s track record of moving from “consumer” to “enterprise”
Wearables
© 2014 Progress Software Corporation. All rights reserved. 16
Health / Wearables
Fast moving field
Fitnets bands
Smart watches
Smart clothing
Smart glasses
Wearables – Telematics
© 2014 Progress Software Corporation. All rights reserved. 18
Connected Cars
Remote Access to Cars (Tesla, FIAT) and Chargers OTA (Over-the-Air) Fixes pushed to Tesla Cars Vehicle tracking, fleets, taxis….
Beacons
© 2014 Progress Software Corporation. All rights reserved. 20
Beacons
© 2014 Progress Software Corporation. All rights reserved. 21
Business Use Cases – Beacons
Business Use Cases
• Retail – Targeted Advertising, Special Offers, Loyalty Apps, Indoor Micro-location and Navigation
• Warehousing – Location, Inventory
• Electronic Payments
Some Ongoing Trials:
Smart Cities
© 2014 Progress Software Corporation. All rights reserved. 23
Smart Cities
Garbage Trucks Lights Utilities Traffic Lights Government 2.0
So… How Can I Build These Apps?
© 2014 Progress Software Corporation. All rights reserved. 25
Enter Modulus
What Is Node.js
© 2014 Progress Software Corporation. All rights reserved. 27
Node.js = V8 + libuv (+ xtras) + Community (NPM)
A JavaScript Runtime to run outside of the browser
Builds on the Javascript V8 engine and libuv library for async IO
Highly Efficient
Highly Portable
Event-Driven
Built-in package manager (NPM)
© 2014 Progress Software Corporation. All rights reserved. 28
Why Are JavaScript & Node Growing So Fast?
Why JavaScript?
Virtually all developers know it Widest developer footprint of any language
Easy to learn, productive Even business users learn it fast
Used for everything Browser, Server-side, Mobile, Wearables, IoT
Used at all levels of the stack Frontend, middleware and backend DB
Maximizes developer collaboration All developers can contribute everywhere
Why Node?
Event-based model, highly scalable Great for data-intensive, real-time apps
Web API Focused Very good fit for API-first architectures
Extremely efficient Requires few computational resources
Incredible Community and Ecosystem Over 97,000 packages
Fast and easy setup Passes the 5 minute test
© 2014 Progress Software Corporation. All rights reserved. 29
Why Is Node a Great Match for IoT
Why JavaScript?
Virtually all developers know it Widest developer footprint of any language
Easy to learn, productive Even business users learn it fast
Used for everything Browser, Server-side, Mobile, Wearables, IoT
Used at all levels of the stack Frontend, middleware and backend DB
Maximizes developer collaboration All developers can contribute everywhere
Why Node?
Event-based model, highly scalable Great for data-intensive, real-time apps
Web API Focused Very good fit for API-first architectures
Extremely efficient Requires few computational resources
Incredible Community and Ecosystem Over 97,000 packages
Fast and easy setup Passes the 5 minute test
Roll Call Sample
© 2014 Progress Software Corporation. All rights reserved. 31
Roll Call Sample
Use iBeacons to detect presence in some space Record this in our servers Act on this by manipulating some smart lights For extra credit smart lights are behind firewall
© 2014 Progress Software Corporation. All rights reserved. 32
Mongoose
BLE/iBeacon
iOS
Web
Node MongoDB
POST request
Express
Roll Call and Node.js
Hue Bridge
Local Node
Server
Modulus Node Server
iOS App
Bulb
Bulb
Bulb
Fire
wal
l
Snow Plow Sample
© 2014 Progress Software Corporation. All rights reserved. 34
Tracking and Managing Snow Plows … With Rollbase
Snow Plows (et al) have GPS unit
Based on Jungle Lasers’ App Goal
s Efficiently Managing GPS Stream Data
Exposing data to Rollbase
© 2014 Progress Software Corporation. All rights reserved. 35
End-to-End: Snow Plow / Geo Data Example Location-viewer
Rollbase App Dashboards
Modulus
JSDO Remote Objects
AngularJS SPA App
Municipality Data
Rollbase Mobile
GPS Data
Node and MongoDB
OEM Data (emergencies)
Current Data
Historical Data
Hospital Patients (e.g. dialysis)
© 2014 Progress Software Corporation. All rights reserved. 36
jsdo-node – JDSO Remoting into Node.js Layer
Rollbase App
Node.js Layer
Node JSDO server objects
Any JSDO Client
Snow Plow DEMO
What Else?
© 2014 Progress Software Corporation. All rights reserved. 39
What Else Can We Do with Node?
Corticon 5.4 REST Interface
Node.js Layer
POST / JSON AngularJS SPA
Rollbase Node.js Layer
Invoke REST
AngularJS SPA
Socket.io or REST
Rollbase Mobile
Angular Node OpenEdge REST JSDO
© 2014 Progress Software Corporation. All rights reserved. 40
Open Source Samples on Node.js and IoT at Github.com/Progress
ios-beacon-scanner roll-call (4 apps) angular-demo corticon-angular-app corticon-angular-insurance angular-express-rollbase-seed angular-rollbase-blog jsdo-node locations-viewer
Thanks to David Inglis, Keegan Mendonca and Reeti Banthia, and Jungle Lasers http://dcinglis.wordpress.com & http://mendoncakeegan.wordpress.com
Get session details & presentation downloads Complete a survey Access the latest Progress product literature
www.progress.com/exchange2014
Visit the Resource Portal