SlideShare a Scribd company logo
Drupal Home automation
       with VSCP
       Peter Bosmans
Concept
• Central swithpoint (teleruptors, relais)
• Simple network of distributed controllers (Ex.
  One for each room)
• No master-slave network (SPOF), No need to
  develop a new protocol
• Open source
  – Open hardware
  – Firmware , protocol
  – Controle software
Home automation controle software
•   Home remote (java – tomcat)
•   Linux MCE (based on Ubuntu)
•   Misterhouse (Perl – VSCP enabled)
•   Drupal
    – Webbased, permissions, taxonomy, …
    – Connection with a database (logging, views, …)
    – Expandable -> VSCP module
VSCP
• Very Simple Control Protocol
       http://sourceforge.net/projects/m2m/files/VSCP%20Specification/
       http://en.wikipedia.org/wiki/Very_Simple_Control_Protocol

• Open source
  multiplatform : windows, linux – multicontroller : PIC, AVR, ARM, …

• Runs on different physical layers
  –Level I : RS232, RS485, RF, CAN
  –Level II : Ethernet
• Event based
• Configurable Modules
  –Registers : I/O behavior, I/O zones-subzones
  –DM (Decision matrix) : Filter - Action
VSCP events
• Class : Collection of event types
  – INFORMATION(20) , ALARM(1), MEASUREMENT(10), ….

• Type : Type of event
  – CLASS INFORMATION : BUTTON(1), ON(3), OFF(4), BELOW LIMIT(10), …
  – CLASS MEASUREMENT : COUNT(1), TEMPERATURE(6), WEIGTH(3), …

• Zone : origination of event class-type
  – Basement(1), Ground floor(2), …

• Subzone : sub-origination of event class-type
  – Kitchen(1), Living room(2), Storage(3), Hall(4), …
Communicatie Drupal <-> VSCP



VSCPD
  – Gateway daemon between the CAN-network and IP-network.
  – DM for filter – action
•Incomming VSCP events
  CANbus -> USB2CAN convertor -> USB -> VSCPD -> DM -> PHPscript ->
    XMLPRC
        • DM starts PHPscript with an INFORMATION ON/OFF VSCP event
        • PHPscript creates an XMLRPC call to drupal

•Outgoing VSCP events
  Drupal VSCP module -> VSCPD -> USB -> USB2CAN convertor -> CANbus
VSCP module
• Taxonomy
   – Level I Events : Already configured within xml-file (Taxonomy import/export module)
   – Zones-Subzones : configurable by user
        • Hiërarchical
        • Synonymous field contains the de zone- of subzonenumber

• Contenttypes
   – VSCPevent : Elk VSCPevent heeft een corresponderende Drupal node
        • Taxonomy : Determines het VSCP-event (class, type, zone, subzone)
        • Byte0 : Needed by specific events
        • Data : Needed by specific events
        • Node references (sended, received) : Connection between, the sended and received ,
          VSCP events
        • Logtype : Type of logging ; through revisions of nodes of the contenttype VSCPlog
        • Log reference : Reference to the logging-node when using the type of logging through
          revisions.
        • Button : The corresponding VSCP event of the node will be sended
   – VSCPlog
        • Class, Type, Byte0, Zone, Subzone, Data : Field for the corresponding values.
VSCP module
•   Self-learning by every received event
     – On Node niveau
         • check the VSCP class, type, zone en subzone
         • If the node doesn’t exists : create node
         • If the node exists :
              – update node timestamp
              – Indien referentie naar een send event node : update de receive referentie in de send event
                node
     – On Taxonomie niveau (Zone-Subzone)
         • If the zone and/or subzone doesn’t exists : create the new term

• References
   To connect the last received VSCP event to his
   corresponding sending VSCP event
   Ex.:
   - Connect ‘on/off events’ on ‘button events’.
   - Connect the event of a measured value on the
   determination event that sets a temperature.
VSCP module
• Rules integration
   – Rule trigger :
      • After a VSCP event is received
   – Rule conditions :
      •   VSCP event has zone
      •   VSCP event has subzone
      •   VSCP event has class
      •   VSCP event had type
      •   VSCP event had byte0
      •   VSCP event had databytes
   – Rule action :
      • Send a VSCP event
   – Rule sets
      • Useful for scheduling VSCPevents
Demo : Technical structure
• Electrical installation




• Nodes : CAN based modules
   Configuration :
   IN1, OUT1 => Zone = 1 = ‘Basement’ ; Subzone = 1 = ‘Supply’
   IN2, OUT2 => Zone = 2 = ‘Ground floor’ ; Subzone = 1 = ‘Kitchen’
   IN3, OUT3 => Zone = 2 = ‘Ground floor’ ; Subzone = 2 = ‘Living room’
Demo : Drupal - VSCP
• Configuration :
   – Manual setup
       • Taxonomy ‘Zone-Subzone’
       • Content VSCPevent ‘Information – Button’
   – Semi-Automatic with the self-learning mode
       • Taxonomy ‘Zone-Subzone’
       • Content VSCPevent ‘Information – On/Off’
            – Connect the received VSCPevent to the corresponding sended VSCPevent.
• Views :
   – Buttons view : List of ‘Information - button’ VSCP events which contains a
     relation to the last received ‘Information – On/Off’ event
• Some rules examples :
   – ButtonSendEvent : responsible to send the VSCPevent and refresh the page
     after a little time delay.
   – Basement Supply ON – Email : Sends a mail when someone the on the light o
     specific room.
• Rulessets :
   – Schedules VSCPevents. Ex. Switch lights every 2 minutes
   – …
Future developments
•   More sensor integration (temperature, light, …)
•   More widgets for drupal
•   Ajax integration
•   Drupal 7 migration
•   Integration of MQTT within the VSCP daemon
    MQTT (MQ Telemetry Transport) : extremely lightweight
    ‘publish/subscribe’ messaging transport through a ‘broker’
• Integration of WS within the VSCP daemon (HTML5)
• https://www.thingspeak.com/,
  https://pachube.com/, …
Questions ??


Useful Links

VSCP :
         http://www.vscp.org/
VSCP source :
         http://sourceforge.net/projects/m2m/?source=directory
VSCP drupal module :
         http://drupal.org/sandbox/pbosmans/1429844
VSCP kiewit hardware module :
https://sourceforge.net/p/vscpmodules/kiewit
Feedback & follow-up:
http://drupalcampgent.be/feedback

More Related Content

Similar to Drupal home automation with vscp

Actors or Not: Async Event Architectures
Actors or Not: Async Event ArchitecturesActors or Not: Async Event Architectures
Actors or Not: Async Event Architectures
Yaroslav Tkachenko
 
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, NutanixGuaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
HostedbyConfluent
 
Springone2gx 2014 Reactive Streams and Reactor
Springone2gx 2014 Reactive Streams and ReactorSpringone2gx 2014 Reactive Streams and Reactor
Springone2gx 2014 Reactive Streams and Reactor
Stéphane Maldini
 
StackWatch: A prototype CloudWatch service for CloudStack
StackWatch: A prototype CloudWatch service for CloudStackStackWatch: A prototype CloudWatch service for CloudStack
StackWatch: A prototype CloudWatch service for CloudStack
Chiradeep Vittal
 
[Free OpManager training] Part 4- Network fault-management & IT automation
[Free OpManager training]  Part 4- Network fault-management & IT automation[Free OpManager training]  Part 4- Network fault-management & IT automation
[Free OpManager training] Part 4- Network fault-management & IT automation
ManageEngine, Zoho Corporation
 
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
Adam Dunkels
 
Docker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-PlaneDocker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-Plane
Madhu Venugopal
 
Docker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data plane
Docker, Inc.
 
Solving DEBS Grand Challenge with WSO2 CEP
Solving DEBS Grand Challenge with WSO2 CEPSolving DEBS Grand Challenge with WSO2 CEP
Solving DEBS Grand Challenge with WSO2 CEP
Srinath Perera
 
Debschallange 140530214713-phpapp01 (1)
Debschallange 140530214713-phpapp01 (1)Debschallange 140530214713-phpapp01 (1)
Debschallange 140530214713-phpapp01 (1)Arshia Jabeen
 
Notes on Netty baics
Notes on Netty baicsNotes on Netty baics
Notes on Netty baics
Rick Hightower
 
Building scalable flexible messaging systems using qpid
Building scalable flexible messaging systems using qpidBuilding scalable flexible messaging systems using qpid
Building scalable flexible messaging systems using qpid
Jack Gibson
 
Public private hybrid - cmdb challenge
Public private hybrid - cmdb challengePublic private hybrid - cmdb challenge
Public private hybrid - cmdb challenge
ryszardsshare
 
Spark streaming
Spark streamingSpark streaming
Spark streaming
Venkateswaran Kandasamy
 
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWSPLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PROIDEA
 
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
Amazon Web Services
 
Amazon Virtual Private Cloud
Amazon Virtual Private CloudAmazon Virtual Private Cloud
Amazon Virtual Private Cloud
Amazon Web Services
 
High throughput data streaming in Azure
High throughput data streaming in AzureHigh throughput data streaming in Azure
High throughput data streaming in Azure
Alexander Laysha
 
Free NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings rightFree NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings right
ManageEngine, Zoho Corporation
 

Similar to Drupal home automation with vscp (20)

Actors or Not: Async Event Architectures
Actors or Not: Async Event ArchitecturesActors or Not: Async Event Architectures
Actors or Not: Async Event Architectures
 
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, NutanixGuaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
Guaranteed Event Delivery with Kafka and NodeJS | Amitesh Madhur, Nutanix
 
Springone2gx 2014 Reactive Streams and Reactor
Springone2gx 2014 Reactive Streams and ReactorSpringone2gx 2014 Reactive Streams and Reactor
Springone2gx 2014 Reactive Streams and Reactor
 
StackWatch: A prototype CloudWatch service for CloudStack
StackWatch: A prototype CloudWatch service for CloudStackStackWatch: A prototype CloudWatch service for CloudStack
StackWatch: A prototype CloudWatch service for CloudStack
 
[Free OpManager training] Part 4- Network fault-management & IT automation
[Free OpManager training]  Part 4- Network fault-management & IT automation[Free OpManager training]  Part 4- Network fault-management & IT automation
[Free OpManager training] Part 4- Network fault-management & IT automation
 
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
Building the Internet of Things with Thingsquare and Contiki - day 1, part 3
 
Docker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-PlaneDocker summit : Docker Networking Control-plane & Data-Plane
Docker summit : Docker Networking Control-plane & Data-Plane
 
Docker Networking: Control plane and Data plane
Docker Networking: Control plane and Data planeDocker Networking: Control plane and Data plane
Docker Networking: Control plane and Data plane
 
Solving DEBS Grand Challenge with WSO2 CEP
Solving DEBS Grand Challenge with WSO2 CEPSolving DEBS Grand Challenge with WSO2 CEP
Solving DEBS Grand Challenge with WSO2 CEP
 
Debschallange 140530214713-phpapp01 (1)
Debschallange 140530214713-phpapp01 (1)Debschallange 140530214713-phpapp01 (1)
Debschallange 140530214713-phpapp01 (1)
 
Notes on Netty baics
Notes on Netty baicsNotes on Netty baics
Notes on Netty baics
 
Building scalable flexible messaging systems using qpid
Building scalable flexible messaging systems using qpidBuilding scalable flexible messaging systems using qpid
Building scalable flexible messaging systems using qpid
 
Public private hybrid - cmdb challenge
Public private hybrid - cmdb challengePublic private hybrid - cmdb challenge
Public private hybrid - cmdb challenge
 
Spark streaming
Spark streamingSpark streaming
Spark streaming
 
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWSPLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
PLNOG 17 - Tomasz Stachlewski - Infrastruktura sieciowa w chmurze AWS
 
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
(ARC401) Black-Belt Networking for the Cloud Ninja | AWS re:Invent 2014
 
Amazon Virtual Private Cloud
Amazon Virtual Private CloudAmazon Virtual Private Cloud
Amazon Virtual Private Cloud
 
High throughput data streaming in Azure
High throughput data streaming in AzureHigh throughput data streaming in Azure
High throughput data streaming in Azure
 
10 sdn-vir-6up
10 sdn-vir-6up10 sdn-vir-6up
10 sdn-vir-6up
 
Free NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings rightFree NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings right
 

Recently uploaded

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 

Recently uploaded (20)

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 

Drupal home automation with vscp

  • 1. Drupal Home automation with VSCP Peter Bosmans
  • 2. Concept • Central swithpoint (teleruptors, relais) • Simple network of distributed controllers (Ex. One for each room) • No master-slave network (SPOF), No need to develop a new protocol • Open source – Open hardware – Firmware , protocol – Controle software
  • 3. Home automation controle software • Home remote (java – tomcat) • Linux MCE (based on Ubuntu) • Misterhouse (Perl – VSCP enabled) • Drupal – Webbased, permissions, taxonomy, … – Connection with a database (logging, views, …) – Expandable -> VSCP module
  • 4. VSCP • Very Simple Control Protocol http://sourceforge.net/projects/m2m/files/VSCP%20Specification/ http://en.wikipedia.org/wiki/Very_Simple_Control_Protocol • Open source multiplatform : windows, linux – multicontroller : PIC, AVR, ARM, … • Runs on different physical layers –Level I : RS232, RS485, RF, CAN –Level II : Ethernet • Event based • Configurable Modules –Registers : I/O behavior, I/O zones-subzones –DM (Decision matrix) : Filter - Action
  • 5. VSCP events • Class : Collection of event types – INFORMATION(20) , ALARM(1), MEASUREMENT(10), …. • Type : Type of event – CLASS INFORMATION : BUTTON(1), ON(3), OFF(4), BELOW LIMIT(10), … – CLASS MEASUREMENT : COUNT(1), TEMPERATURE(6), WEIGTH(3), … • Zone : origination of event class-type – Basement(1), Ground floor(2), … • Subzone : sub-origination of event class-type – Kitchen(1), Living room(2), Storage(3), Hall(4), …
  • 6. Communicatie Drupal <-> VSCP VSCPD – Gateway daemon between the CAN-network and IP-network. – DM for filter – action •Incomming VSCP events CANbus -> USB2CAN convertor -> USB -> VSCPD -> DM -> PHPscript -> XMLPRC • DM starts PHPscript with an INFORMATION ON/OFF VSCP event • PHPscript creates an XMLRPC call to drupal •Outgoing VSCP events Drupal VSCP module -> VSCPD -> USB -> USB2CAN convertor -> CANbus
  • 7. VSCP module • Taxonomy – Level I Events : Already configured within xml-file (Taxonomy import/export module) – Zones-Subzones : configurable by user • Hiërarchical • Synonymous field contains the de zone- of subzonenumber • Contenttypes – VSCPevent : Elk VSCPevent heeft een corresponderende Drupal node • Taxonomy : Determines het VSCP-event (class, type, zone, subzone) • Byte0 : Needed by specific events • Data : Needed by specific events • Node references (sended, received) : Connection between, the sended and received , VSCP events • Logtype : Type of logging ; through revisions of nodes of the contenttype VSCPlog • Log reference : Reference to the logging-node when using the type of logging through revisions. • Button : The corresponding VSCP event of the node will be sended – VSCPlog • Class, Type, Byte0, Zone, Subzone, Data : Field for the corresponding values.
  • 8. VSCP module • Self-learning by every received event – On Node niveau • check the VSCP class, type, zone en subzone • If the node doesn’t exists : create node • If the node exists : – update node timestamp – Indien referentie naar een send event node : update de receive referentie in de send event node – On Taxonomie niveau (Zone-Subzone) • If the zone and/or subzone doesn’t exists : create the new term • References To connect the last received VSCP event to his corresponding sending VSCP event Ex.: - Connect ‘on/off events’ on ‘button events’. - Connect the event of a measured value on the determination event that sets a temperature.
  • 9. VSCP module • Rules integration – Rule trigger : • After a VSCP event is received – Rule conditions : • VSCP event has zone • VSCP event has subzone • VSCP event has class • VSCP event had type • VSCP event had byte0 • VSCP event had databytes – Rule action : • Send a VSCP event – Rule sets • Useful for scheduling VSCPevents
  • 10. Demo : Technical structure • Electrical installation • Nodes : CAN based modules Configuration : IN1, OUT1 => Zone = 1 = ‘Basement’ ; Subzone = 1 = ‘Supply’ IN2, OUT2 => Zone = 2 = ‘Ground floor’ ; Subzone = 1 = ‘Kitchen’ IN3, OUT3 => Zone = 2 = ‘Ground floor’ ; Subzone = 2 = ‘Living room’
  • 11. Demo : Drupal - VSCP • Configuration : – Manual setup • Taxonomy ‘Zone-Subzone’ • Content VSCPevent ‘Information – Button’ – Semi-Automatic with the self-learning mode • Taxonomy ‘Zone-Subzone’ • Content VSCPevent ‘Information – On/Off’ – Connect the received VSCPevent to the corresponding sended VSCPevent. • Views : – Buttons view : List of ‘Information - button’ VSCP events which contains a relation to the last received ‘Information – On/Off’ event • Some rules examples : – ButtonSendEvent : responsible to send the VSCPevent and refresh the page after a little time delay. – Basement Supply ON – Email : Sends a mail when someone the on the light o specific room. • Rulessets : – Schedules VSCPevents. Ex. Switch lights every 2 minutes – …
  • 12. Future developments • More sensor integration (temperature, light, …) • More widgets for drupal • Ajax integration • Drupal 7 migration • Integration of MQTT within the VSCP daemon MQTT (MQ Telemetry Transport) : extremely lightweight ‘publish/subscribe’ messaging transport through a ‘broker’ • Integration of WS within the VSCP daemon (HTML5) • https://www.thingspeak.com/, https://pachube.com/, …
  • 13. Questions ?? Useful Links VSCP : http://www.vscp.org/ VSCP source : http://sourceforge.net/projects/m2m/?source=directory VSCP drupal module : http://drupal.org/sandbox/pbosmans/1429844 VSCP kiewit hardware module : https://sourceforge.net/p/vscpmodules/kiewit
  • 14.