Successfully reported this slideshow.

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Fhem as IOT rasberry pi platform

  1. 1. FHEM as IoT platform Thilo Röhl 3-2016, www.pkienthusiast.com
  2. 2. Motivation • Everyone has a smartphone, no one knows how to create things or develop software • First Generation of Apple being garage builders • Smartphone and tablets create a out of the box • No expertise with making things, creating things • Even computer science students tend to have virtual expierience
  3. 3. The Rasberry Pi • Invented for School people to educate programming • Project founded in UK • Roughly sold 5 Millions (2013) • Production in UK – moved back from China • Non Profit Organisation • Open Design • Low Power, about 12 € for a whole year
  4. 4. Operation System • Linux • Open Source • Invented by Linus Torvalds et al
  5. 5. FabLabs • Open laboratories to fix things • People want to understand how things work rather than buying new things • The makers build their own systems • Connection and building own things • Open space, non profit
  6. 6. AirPi • Created by a group of english pupils • Sensors for air quality, sound, light • Sourcecode freely available is now maintained by a english chemistry phd student • You get it in single parts to solder it yourself • Nonprofit
  7. 7. AirPi delivery
  8. 8. Adafuit LCD Display • A simple display to solder for yourself including a plate, an LCD display and 5 small buttons • Tutorials with pictures on the webpage how to solder it. Source code to use the display is freely available
  9. 9. Ardafruit LCD Template Delivery
  10. 10. FHEM • Created by Rudolf König / Germany in 2005 • Perl script to be used for home automation, GPL open source • Module based system, module maintained by anyone active on the forum • Very active community • Independent of cloud or networks
  11. 11. Sensors, Events, Actors • FHEM connects Sensors with different modules creating inside events using triggers to start actors • Any Sensor can be freely connected to any Actor • The perl language allows regular expressions and powerful combinations • Local scripts can be executed or web services called • FHEM instances can be connected to allow a distributed model • It is possible to connect devices over many different wired or wireless protocols e.g. KNX, EIB, Homematic, GPIO of the rasberry pi
  12. 12. Z-Wave • Wireless protocol supported by a alliance of vendors • Z-Wave creates a „secure“ mesh network • Examples are smoke detectors, water detectors, wall plugs with sensors and logic
  13. 13. Enocean • Alliance of couple of vendors, based in Munich • Focus on low-power design • Switch using the energy of the movement of the finger • Temperature or window opener use the light
  14. 14. Bluetooth LE • New devices in the market, mainly for smart phone connections can be interconnected with FHEM
  15. 15. ZigBee • Used for Philips Hue Lightning, Osram Lightfy • Tendencies to unfollow open standards • Security issues according heise * *http://www.heise.de/security/meldung/Deepsec-ZigBee-macht-Smart-Home-zum-offenen-Haus-3010287.html
  16. 16. If you cannot decide… • Chose an open system ! • FHEM is able to integrate them all • Consider Home Automation as a journey. Step by step integration, avoid buying island solutions
  17. 17. Base Setup of Rasberry Pi • Basis setup of pi • sudo apt-get update • sudo apt-get upgrade • sudo raspi-config • to expand file-system and to setup localisation/keyboard • date –s „03/08/2016 12:30“ • to setup time. The pi has no clock – use ntp if possible • In some cases, a kernel update using „sudo rpi-update“ might be necessary. I had to turn of the device tree using raspi-config to get some device back working. Do only do this if really necessary 
  18. 18. Base setup of FHEM • http://www.fhemwiki.de/wiki/Raspberry_Pi • wget http://fhem.de/fhem-5.7.deb • sudo dpkg -i fhem-X.Y.deb • Start browser to access local system 127.0.0.1:8083 • Access is possible over smartphone, table and with VPN even remote
  19. 19. First update • FHEM does not support a proxy for updating • Put update in the command line • Current perl modules will be download • „update“ in the browser window • „shutdown restart“ • „backup“
  20. 20. The power of the community • Users contribute freetime to help others. www.fhem.de • Resulting scripts are shared and further improved and finally integrated in FHEM • They are all having a lot of fun and are creating a deeper understanding of IT • Access to basic concepts of IT concepts for the whole community
  21. 21. Dummy • http://www.fhemwiki.de/wiki/Erste_Schritte_in_fhem • A state variable • define mySchalter1 dummy • attr mySchalter1 room Schulungsraum
  22. 22. Readingsgroup Battery Status • define battStatus readingsGroup .*:[Bb]attery • All Readings with Battery or Battery from all Devices • Get connectivity overview
  23. 23. Dummies with with symbols and colors • Dummies for alarms, Symbols, On/Off button
  24. 24. Zwave battery powered outside sensor • Temperature, Humidity, Lux, Movement
  25. 25. Plotting Outside Temperature/Humidity
  26. 26. Readingsgroup Weather Readings
  27. 27. Plotting System load – 900 Mhz Throtteling
  28. 28. Plotting Bluetooth Presence
  29. 29. notify • Notify triggers because of an event. • A notify can trigger an SMS over a USB SIM Stick or a pushover app message or an email • define b3lampV1 notify btn3 set lamp $EVENT • define b3lampV2 notify btn3 { fhem "set lamp $EVENT" } • define b3lampV3 notify btn3 "/usr/local/bin/setlamp "$EVENT"“ • define n_mySchalter1_on notify mySchalter1:on set myLampe1 on
  30. 30. at • At triggers something depening on a time • define a1 at 17:00:00 set lamp on # fhem Befehl • define a2 at 17:00:00 { Log 1, "Teatime" } # Perl Befehl • define a5 at +00:00:10 set lamp on # Start in 10 secs • define a12 at +*{sunset_rel()} { fhem("set lamp on-till 23:00") if($we) } # Only Weekends before sunset
  31. 31. Notify for Smoke Alarm
  32. 32. Combine any input with any output • Everything in FHEM can be combined regardless of the proctol connecting to the outside • If you are not satisified with a current solution, integrated you own and show the example to the community
  33. 33. Combine Cloud Services • Use the cloud to archive data, visualise data, trigger actions • Useful when you need more power, more storage or a long term data qualitiy • Examples are ubitdot as general IOT data collector, netatmo as weather service, Amazon as storage provider or Pushover as mobile messaging service
  34. 34. Create installation short manuals • E.g. Freeradius base config • apt-get install freeradius libfreeradius2 freeradius-common freeradius-utils • Installs packages, depening packages, start scripts (service freeradius start/stop) and start the service • add new client to : • /etc/freeradius/clients.conf • client 192.168.1.0/24 { • secret = radiustest • shortname = Testnetz • }
  35. 35. And no go ahead and play with it  • Rasberry Pi Setup • https://www.raspberrypi.org/documentation/installation/installing-images/ • Zwave • Example devices taken from www.fibaro.com, www.aeotec.com, www.popp.eu • Enocean • Example devices taken from www.nodon.fr • Bluetooth • Example devices taken from www.parrot.com/flowerpower, www.playbulb.com

×