home automation with perl
DESCRIPTION
Home automation with Perl (FHEM). I've used a Raspberry Pi with 868MHz technology to gather data about my home, and view/analyse this with Logstash, Elasticsearch and Kibana.TRANSCRIPT
![Page 1: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/1.jpg)
Home automation with Perl
Raspberry Pi, 868MHz, FHEM, Redis, Logstash , Kibana and Elasticsearch
monitoring
![Page 2: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/2.jpg)
The hardware
▪ Raspberry Pi
▪ COC (868MHz)
▪ JeeLink
▪ FS20
▪ Homematic
![Page 3: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/3.jpg)
![Page 4: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/4.jpg)
The software stack
▪ FHEM (perl!)
▪ Redis
▪ Logstash
▪ Elasticsearch
▪ Kibana
![Page 5: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/5.jpg)
What is FHEM
▪ Home automation system
▪ Written in Perl
▪ Badly documented (mostly German)
▪ Great auto-configure functionality
▪ Has web interface and Android app
![Page 6: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/6.jpg)
What is Redis
▪ An advanced in-memory key-value data store.
▪ FAST!!
▪ Durable (configurable disk-write)
▪ Single-threaded
▪ Lots of fancy features (lists, hashes, sets)
▪ Very well documented
▪ Great perl module
▪ Not very scalable… master-slave possible
![Page 7: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/7.jpg)
What is Logstash
▪ A tool for managing events and logs
▪ Primarily an interface - between sources (redis, files, pipes, …) and storage (elasticsearch, mongodb, email, …)
▪ Lots of very helpful filters (date, grok, geoip, …)
▪ Horizontally scalable
▪ Fantastic community “If a newbie has a bad time, it’s a bug”
![Page 8: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/8.jpg)
What is Elasticsearch
▪ Elasticsearch is a search server based on Lucene
▪ Very easy to set up
▪ Very horizontally scalable
▪ Written in Java…
▪ Great RESTful API
▪ Great perl module written by the developers themselves
▪ Needs BIG hardware (500 million events/day: 132GB RAM, 16 cores)
▪ Stability….. :-/
![Page 9: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/9.jpg)
The costs (so far…)
Device Unit cost
Total
RPi + Power + SD card 50 50
COC 868MHz 75 75
JeeLink v3 868MHz 32 32
EM1000 power monitor 34 68
PCA301 remote socket with power monitor 34 34
HMS100TF remote thermometer/hydrometer 25 50
Total 309
![Page 10: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/10.jpg)
Concerns
▪ Security for actuators
▪ Social implications – Big Brother
▪ Catastrophic Corner Cases
![Page 11: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/11.jpg)
Questions…?
![Page 12: Home Automation with perl](https://reader036.vdocuments.mx/reader036/viewer/2022062405/554f79dcb4c9052a518b4991/html5/thumbnails/12.jpg)
Links
▪ FHEM http://fhem.de/fhem.html
▪ Redis http://redis.io/ (The little Redis book)
▪ Logstash http://logstash.net/
▪ Elasticsearch http://www.elasticsearch.org/
▪ ELV Elektronik http://www.elv.de/
▪ Busware http://busware.de/
▪ Raspberry Pi http://www.raspberrypi.org/