home automation with perl

12
Home automation with Perl Raspberry Pi, 868MHz, FHEM, Redis, Logstash , Kibana and Elasticsearch monitoring

Upload: flyingrobin13

Post on 10-May-2015

651 views

Category:

Technology


6 download

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

Home automation with Perl

Raspberry Pi, 868MHz, FHEM, Redis, Logstash , Kibana and Elasticsearch

monitoring

Page 2: Home Automation with perl

The hardware

▪ Raspberry Pi

▪ COC (868MHz)

▪ JeeLink

▪ FS20

▪ Homematic

Page 3: Home Automation with perl
Page 4: Home Automation with perl

The software stack

▪ FHEM (perl!)

▪ Redis

▪ Logstash

▪ Elasticsearch

▪ Kibana

Page 5: Home Automation with perl

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

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

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

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

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

Concerns

▪ Security for actuators

▪ Social implications – Big Brother

▪ Catastrophic Corner Cases

Page 11: Home Automation with perl

Questions…?