Michael Dawson
September 2015
Node On Guard !
A Node Based Home Alarm System
About Michael Dawson
Loves the web and building software
2
Senior Software Developer @ IBM
22 years development experience
10 years in runtime development
Contact me:
Michael_dawson@ca.ibm.com
Twitter: @mhdawson1
https://www.linkedin.com/pub/michael-dawson/2/128/605
3
• A Personal Project – Alarm for our cottage
• Node Based Customizable IoT Home Alarm
• Make it do what you want !
• Not what somebody else decided for you
• When things go wrong you can fix it !
• Open source: https://github.com/mhdawson/HomeAlarm
• Hardware ($100)
• Raspberry Pi
• 433 MHz receiver/transmitters
• 433 sensors and actuators
• USB webcams
• IR illuminators
Introduction
Supporting Technology
4
• Docker
• Raspberry Pi
• Node
• C++
• Bash
• MQTT
• Websockets
• SMS
• TLS/SSL
• HTTP
• SCP
• fswebcam
• WiringPi
Execution Environments
Languages and runtimes
Protocols
Hardware Interface
Architecture
5
USB
433 MHz
docker
MQTT(mosquito)
docker
HTTP(apache2)
docker
Alarm(Node)
SCP
Browser
HTTPs
HTTPs
+
Websockets
MQTT
+
SSL/TLS
PI443-TX
PI443-RX
PIWebcam
TwillioSMS
Node + MQTT =
6
Receive
Send
Interacting with the Physical World
7
RX
TX
Interacting with the Physical World
8
zone=house/2262/1:3:front door
zone=house/2262/2:4:patio door
zone=house/2262/3:2:motion living
zone=house/2262/4:1:motion hall
zone=house/2262/5:5:fire
Interacting with the Physical World
9
Notification and Reporting
10
Notifications and Reporting - SMS
11
Deploy your own for free
12
• Controller - Bluemix PaaS
• Bluemix container service
• mqtt server
• web server
Alarm in Action – Demo if time permits
13
Copyrights and Trademarks
© IBM Corporation 2015. All Rights Reserved
IBM, the IBM logo, ibm.com are trademarks or registered
trademarks of International Business Machines Corp.,
registered in many jurisdictions worldwide. Other product and
service names might be trademarks of IBM or other companies.
A current list of IBM trademarks is available on the Web at
“Copyright and trademark information” at
www.ibm.com/legal/copytrade.shtml
Node.js is an official trademark of Joyent. IBM SDK for Node.js is not formally
related to or endorsed by the official Joyent Node.js open source or
commercial project.
Java, JavaScript and all Java-based trademarks and logos are trademarks or
registered trademarks of Oracle and/or its affiliates.

Node on Guard!

  • 1.
    Michael Dawson September 2015 NodeOn Guard ! A Node Based Home Alarm System
  • 2.
    About Michael Dawson Lovesthe web and building software 2 Senior Software Developer @ IBM 22 years development experience 10 years in runtime development Contact me: Michael_dawson@ca.ibm.com Twitter: @mhdawson1 https://www.linkedin.com/pub/michael-dawson/2/128/605
  • 3.
    3 • A PersonalProject – Alarm for our cottage • Node Based Customizable IoT Home Alarm • Make it do what you want ! • Not what somebody else decided for you • When things go wrong you can fix it ! • Open source: https://github.com/mhdawson/HomeAlarm • Hardware ($100) • Raspberry Pi • 433 MHz receiver/transmitters • 433 sensors and actuators • USB webcams • IR illuminators Introduction
  • 4.
    Supporting Technology 4 • Docker •Raspberry Pi • Node • C++ • Bash • MQTT • Websockets • SMS • TLS/SSL • HTTP • SCP • fswebcam • WiringPi Execution Environments Languages and runtimes Protocols Hardware Interface
  • 5.
  • 6.
    Node + MQTT= 6 Receive Send
  • 7.
    Interacting with thePhysical World 7 RX TX
  • 8.
    Interacting with thePhysical World 8 zone=house/2262/1:3:front door zone=house/2262/2:4:patio door zone=house/2262/3:2:motion living zone=house/2262/4:1:motion hall zone=house/2262/5:5:fire
  • 9.
    Interacting with thePhysical World 9
  • 10.
  • 11.
  • 12.
    Deploy your ownfor free 12 • Controller - Bluemix PaaS • Bluemix container service • mqtt server • web server
  • 13.
    Alarm in Action– Demo if time permits 13
  • 14.
    Copyrights and Trademarks ©IBM Corporation 2015. All Rights Reserved IBM, the IBM logo, ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml Node.js is an official trademark of Joyent. IBM SDK for Node.js is not formally related to or endorsed by the official Joyent Node.js open source or commercial project. Java, JavaScript and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates.