Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Using Java Script and COMPOSE to build cool IoT applications, SenZations 2015

Presentation by Charalampos Doukas: Learn how to use Node.js and JavaScript to program both your IoT hardware and your Cloud application using Open Source tools and the COMPOSE platform. Device sensing and interaction from the Cloud through JavaScript

  • Login to see the comments

Using Java Script and COMPOSE to build cool IoT applications, SenZations 2015

  1. 1.   Using  JavaScript  and  COMPOSE  to   build  cool  IoT  applica;ons   Charalampos  Doukas   @buildingiot  
  2. 2. PART  A  –  Some  Basics   Using  JavaScript  and  COMPOSE  to  build  cool  IoT   applica;ons  
  3. 3. IoT:  The  main  components   Devices  –  ‘Smart   Objects’  –  ‘Things’   Networks   Online  Services  
  4. 4. Devices:  the  community  approach     Devices  
  5. 5. Devices   •  Prototyping  plaHorms  (some  IoT  oriented)   •  Arduino  (….)   –  hMp://postscapes.com/arduino-­‐wifi   •  openPicus  Flyport  (WiFi,  Ethernet,  GPRS,  Enocean)   •  Libelium  Waspmote   •  mBed  by  ARM   •  Pinocc.io  (mesh  network  support,  RF+WiFi)   •  (Spark  core)  Par;cle.io  (WiFi,  3G)   •  Electric  Imp   •  Tessel  (WiFi,  Node.js)    
  6. 6. Devices   Devices  
  7. 7. IoT:  the  community  approach     Devices  
  8. 8. IoT:  the  community  approach     Devices  
  9. 9. IoT:  the  community  approach     Devices   NodeMCU   WiFI   eLua   12$   Based  on  ESP8266  WiFI  SoC   Community  based  development  SW  +  HW    
  10. 10. IoT:  the  community  approach     Devices   IoT Gateways
  11. 11. IoT:  the  community  approach     Devices   Wearables?
  12. 12. Devices     •  SODAQ  (WiFi,  Xbee,  ..)   •  XinoRF   •  PanStamps   •  Intel  boards   •  TI  CC3200  (SimpleLink)   •  Domain  specific   –  BITalino  (Wearables)   –  Thingsquare   –  FluMer   hMp://postscapes.com/internet-­‐of-­‐things-­‐diy   hMp://postscapes.com/internet-­‐of-­‐things-­‐hardware    
  13. 13. Sensors  &  Actuators   •  Gas  &  Air  quality   •  Barometric  pressure   •  Temperature  &  Humidity   •  Light  &  Sound   •  Mo;on   •  Flex  &  Force   •  Posi;on   •  Magne;c  fields   •  Electricity   •  Biometrics  
  14. 14. Sensors  &  Actuators   •  Proximity  &  Presence   •  Weight   •  Liquids  &  Liquid  flow   •  Radia;on   •  …  
  15. 15. Sensors  &  Actuators   •  Move  things  (motors)   •  Ac;vate  (switches)   •  Interfaces   –  Sound   –  Light   –  Displays   •  Remote  interfaces   –  Social   –  Email,  text,  …   –  Phone  (twillio)  
  16. 16. Soiware   •  Standard  IDEs   –  Arduino  IDE   –  Eclipse   •  Code  –  less:   –  Scratch   •  Cloud-­‐based   –  Codebender  (codebender.cc)   –  par;cle.io   •  Browser-­‐based   –  mBed   –  Electron   –  Noduino   –  …  
  17. 17. Workflow  -­‐  based   •  Node-­‐RED  
  18. 18. Networks  
  19. 19. Protocols   •  Web  based:   •  HTTP   –  REST   –  WebSockets   •  M2M  (lower  resources  +  actua;on)   –  MQTT   –  CoAP  -­‐  LWM2M   –  XMPP   –  STOMP   –  …  
  20. 20. Online  Services   •  Sensor  Data   –  Pachube/Cosm/Xively   –  Paraimpu   –  TheThingsystem.io   •  Device  Management     •  Full  PaaS  
  21. 21. IoT  &  JavaScript   Why  JavaScript?  
  22. 22. IoT  &  JavaScript   Why  JavaScript?  
  23. 23. IoT  &  JavaScript   Why  JavaScript?  
  24. 24. IoT  &  JavaScript   Why  JavaScript?  
  25. 25. IoT  &  JavaScript   Why  JavaScript?  
  26. 26. IoT  &  JavaScript   SoEware   •  Noduino   •  A  simple  and  flexible  JavaScript  and  Node.js  Framework  for   accessing  basic  Arduino  controls  from  Web  Applica;ons   using  HTML5,  Socket.IO  and  Node.js  
  27. 27. IoT  &  JavaScript   SoEware   •  Device.js   •  DeviceJS  is  a  JavaScript  based  development  plaHorm  for   reac;ng  to  sensors  and  controlling  devices.  It’s  built  on  top   of  Google’s  V8  JavaScript  engine,  Node.js  and  a  real-­‐;me   JSON  database  
  28. 28. IoT  &  JavaScript   SoEware   •  Node-­‐RED   –  Node-­‐RED  is  a  tool  for  wiring  together  hardware  devices,  APIs  and   online  services   –  Web-­‐based   –  O/S  
  29. 29. IoT  &  JavaScript   SoEware   •  Node-­‐RED  
  30. 30. IoT  &  JavaScript   SoEware   •  Node-­‐RED   •  Nodes  available:    Over  40    user  contributed    nodes  
  31. 31. IoT  &  JavaScript   SoEware   •  Node-­‐RED  
  32. 32. IoT:  the  community  approach     Device  SoEware   Cylon.js   is   a   JavaScript   framework   for   robo9cs,   physical   compu9ng,   and   the   Internet  of  Things.  It  makes  it   incredibly   easy   to   command   robots  and  devices.   Device  SDK  over  JS/Node.JS     REST/WebSockets/MQTT     Browser/Mobile  support  
  33. 33. Building  IoT  Applica;ons   What  else  does  it  take?   Devices  –  ‘Smart   Objects’  –  ‘Things’   Networks   Online  Services  
  34. 34. Building  IoT  Applica;ons   What  else  does  it  take?   Deploy  &  Manage  Back-­‐ End   Many  APIs  to  connect  and   integrate   Management  &  Data   Maintenance  
  35. 35. Building  IoT  Applica;ons   What  else  does  it  take?   Soiware   Hardware   Libraries   APIs   Data? Users?
  36. 36. Building  IoT  Applica;ons   What  else  does  it  take?   Hosting Management Outsourcing Resources scalable
  37. 37. More  than  sensor  data  storing…  
  38. 38. What  is  COMPOSE?   Scalable  PaaS   IoT  Marketplace   Development  Tools   Sensor   Communica;on   Technologies  
  39. 39. MQTT   WebSockets   XMPP   …   Service  Discovery   Security   IoT  PlaLorm  As  A   Service  
  40. 40. COMPOSE  at  heart   servIoTicy   •  IoT  Streaming  made  easy!   •  RESTful  API  for:   –  Storing  device  (sensor)  data   –  Querying  &  Retrieving  the  data   –  Pushing  data  to  the  device   –  Subscribing  to  no;fica;ons  (e.g.,  new  sensor  data  arrived)   •  Free  and  Open  Source   •  Downloadable  bundle  (Ubuntu/Debian  Image)   •  Soon  -­‐>  CloudFoundry  installa;on  
  41. 41. WWW  -­‐>  IoT   CoAP REST   MQTT   CoAP   MQTT   STOMP   WS   CoAP  
  42. 42. COMPOSE  at  heart   servIoTicy   •  Integra;on  of  popular  frameworks:   •  Apache  STORM   •  Elas;cSearch   •  CouchBase  DB   •  Apache  Apollo  –  Ac;veMQ   –  WS/STOMP/MQTT/AMQP/…   •  JeMy   •  ….  
  43. 43. COMPOSE  
  44. 44. COMPOSE   hMps://github.com/compose-­‐eu  servIoTicy   IoT  streaming  made  easy   COMPOSE  SDKs   hMp://www.servio;cy.com   hMp://www.gluethings.com    
  45. 45. COMPOSE   Developer Friendly! Conceptual   idea  from   Node-­‐RED  
  46. 46. Meet  COMPOSE   Security taken seriously!
  47. 47. PART  B  –  Some  Fun  stuff  (Hands  on   Demo)   Using  JavaScript  and  COMPOSE  to  build  cool  IoT   applica;ons   (Mind  the  Demo  Effect)  
  48. 48. Charalampos  Doukas   Researcher   •  Informa;on  &   Communica;on  Systems   Engineer   •  PhD  in  Health  Informa;cs   •  Senior  Researcher  in   CREATE-­‐NET   •  COMPOSE  Project     Maker   •  IoT  Blogger   –  Many  DIY  IoT  Projects   •  Workshops  (Makerland,   Makerfaire…)   •  Author   –  Building  Internet  of  Things   with  the  Arduino   •  Consultancy   @BuildingIoT hdoukas

×