diff --git a/Markdown Syntax compilation test for Jekyll.md b/Markdown Syntax compilation test for Jekyll.md
deleted file mode 100644
index 7fd569a..0000000
--- a/Markdown Syntax compilation test for Jekyll.md
+++ /dev/null
@@ -1,90 +0,0 @@
----
-layout: tutorial-beginner
----
-
-{% include base.html %}
-
----
-Markdown Syntax compilation test for Jekyll
----
-
-Markdown syntax examples start from here:
-
----
-General header
----
-
-
-Github specific syntax
-```
-Fenced Code
-```
-
-```bash
-Fenced code bash highlighting
-
-```
-
-~~Strikethrogh~~
-
-- [ ] Tasklist
-- [ ] Tasklist
-
-
-# Header 1
-## Header 2
-### Header 3
-#### Header 4
-##### Header 5
-###### Header 6
-
-**Strong-Bold**
-
-*Emphasize*
-
-`inline code`
-
-![image](https://community.openhab.org/uploads/default/original/1X/ada4f9ed6657f88f1e3e8e99f44343666f6ccc17.png)
-
-[link](https://community.openhab.org/)
-
-> Blockquote
->> Blockquote
->>> Blockquote
-
-1. Ordered List
-2. Ordered List
-
-- Unordered List
-- Unordered List
-
-Page Break before
-* * *
-Page Break after
-
-Section Break before
-- - -
-Section Break before
-
-Sentence Break before
-_ _ _
-Sentence Break before
-
-
-
-
-| column | column | column |
-|:---|:---:|---:|
-| | |
-|left |centered |right|
-| - | - | - |
-
-
-
-
-
-|text|picture|
-|---|---|
-|blabla|![image](https://community.openhab.org/uploads/default/original/1X/ada4f9ed6657f88f1e3e8e99f44343666f6ccc17.png)|
-
-
diff --git a/temp/test-Dateien/colorschememapping.xml b/temp/test-Dateien/colorschememapping.xml
deleted file mode 100644
index 6a0069c..0000000
--- a/temp/test-Dateien/colorschememapping.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
openHAB2 Raspberry
-beginner’s walkthrough – (Using Raspberry Pi 3 with openHAB2 and Z-Wave, WiFi
-LED, Samsung TV and YahooWeather bindings for a home automation project)
Contents
Is openHAB2 the right choice for my home automation project?
A few words about the 2 in openHAB2:
Minimal setup of the controller:
Additional hardware for optional setup of the controller
- with 7” Raspberry display:
Z-Wave sensors, switches and actuators
Chapter 3: Raspberry hardware and Raspbian OS installation
General information about Raspberry interfaces and GPIO
- pins:
Preparing MicroSD card - writing Raspbian image to MicroSD
- card (PC required):
Connecting the hardware to the Raspberry
Optional: Installation of 7” Raspberry display and display
- case:
Display installation pictures:
Chapter 4: Raspbian basic configuration
Starting up Raspberry or the first time – Raspbian PIXEL
- desktop
Basic terminal commands and functions:
Initial configuration of Raspbian
Optional: Change display orientation
Check the IP address of the Raspberry:
Optional Raspberry settings and configuration:
Check partition size on MicroSD card:
Create a Desktop icon and link it to a application
Enabling remote SSH access for root user:
Optional: Raspbian PIXEL screensaver (xscreensaver)
Configuration of xscreensaver:
Optional: Start Chromium Web server on Raspbian boot
Select the start URL for Chromium web browser:
Chapter 5: Setting up Raspbian for access via PC
Connect to the Raspberry terminal your windows system using,
- KiTTY or PuTTY:
Optional: Connect to the Raspberry file system from your
- windows system using WinSCP:
Optional: Generic samba user setup
Chapter 6: Installation of openHAB2 on Raspberry
Common openHAB2 service commands:
openHAB2 configuration for the samba server:
openHAB2 Privileges for Common Peripherals
Adding openhab user to groupds dialout an tty
Granting java environment access to serial ports
Chapter 7: Installation of Eclipse Smart Home Designer
Installation guide for windows (Eclipse Smart Home Designer
- and Java Runtime Environment):
Chapter 8: Initializing openHAB2 (finally: first startup)
Chapter 10: General information about configuring openHAB2
Chapter 10: Configuring openHAB2 using PAPER UI
General process of adding new things to the configuration
Adding local things connected via network (IP)
Adding Things using YamahaReceiver Binding:
Adding Things using Samsung TV Binding:
Adding Things using WiFi LED Binding:
Adding online things connected via network (IP)
Adding Things using YahooWeather Binding:
Adding things connected via Z-Wave controller
Adding Z-Wave things using HABmin UI
For details documentation on the Z-Wave Binding usage in HABmin
- consult:
The concept of Things, Channels, Items and Links
Creating the required items for my project
Now go on creating the items according to the list below
Chapter 11: Creating a dashboard for your home automation
- project
Creating the myfirstrule.rules file
Basic tips for debugging rules
Creating an item the see the value of a variable of a rule
- online
Creating a virtual switch on HABPANEL to use it in a rule
Further Rule examples based on this home automation project:
Switching ON/OFF switches based on luminance reading of the
- multisensory
- 1st Draft |
-
- This is the initial
- version of the document with any feedback of the community. This version was
- written with the focus on initial hardware and software setup which should
- already have a good consistency. The openHAB2
- configuration and real home automation part still needs some work done! Anyway this part
- will be the part where you have to apply individual changes and go to the
- forum for further help since no home automation project is similar to
- another. You will find not
- all the bindings utilized and not all the things added to the openHAB2
- configuration of the used testbed system since I am building the testbed
- system again from scratch. So in some places you find pictures missing or
- description not being completed. I am also using a
- parallel system (my current live home automation system) to check different
- hardware configuration, especially when it comes to the displays or to Z-Wave
- controllers. Testbed system: Raspberry Pi 3 MicroSD Sandisk
- Ultra 32GB Power supply goobay
- 3,1A USB Mouse basic logitech USB Keyboard basic
- Microsoft qwertz German layout Display HDMI
- connection to 24” computer display Case no name incl.
- ventilation Z-Wave controller UZB
- Z-Wave PLUS USB stick by Z-Wave.Me Live home automation system: Testbed system: Raspberry Pi 3 MicroSD no name 16GB Power supply no name
- 3,1A incl. cable swith Bluetooth Keyboard
- Rapoo Bluetooth Keyboard qwertz German layout Display 7” Raspberry
- display Case premium case
- for Raspberry Pi 7" Touch-Display (the closed version) Z-Wave controller Aeotec
- by Aeon Labs Z-Stick Gen5 Live Z-Wave devices: Z-Wave Fibaro Double
- Switch 2 Z-Wave Aeotec by
- Aeon Labs ZW100 Multisensor Z-Wave Aeon Labs
- ZW088 Z-Wave Key Fob, Gen5 Z-Wave NodOn Smart
- Plug |
-
- 2nd
- Drafty |
-
- Bugfixing (mostly
- typos) Minor rearranging to
- content Major changes in -
- Chapter 11: Creating a dashboard for your home automation project -
- Chapter 12: Creating rules Further input in -
- Section “Shopping list” -
- Section “Adding local things connected via network (IP)” -
- Chapter 12: Creating rules |
-
Be aware that openHAB2 is an OPEN home automation solution which is
-strongly living from a very supportive community. If you want to have a plug
-and play solution with supplier guaranteed service level and a high likeliness
-that all the features are working and all the hardware is compatible, you might
-be better off in getting a ready to use home automation kit including the
-designated controller (like e.g. devolo or homematic IP). Consider this
-especially if you are planning to do safety related automation or emergency
-detection like fire alarm.
If you, on the other hand, are willing to spend a few hrs/days in
-learning how to do a little installation and coding yourself and have no
-problems with the service level of a Raspberry Pi 3 (it is not as failsafe as
-other controllers) you might find a perfect environment with openHAB2 for your
-low cost, very flexible and continuously improving home automation environment.
This tutorial is targeting beginners like me to get a step by step
-guideline to get all the things installed. Since I am no coding expert and have
-no experience in Raspberry and Raspbian I am trying to go through the things
-step by step, so you should be able to get everything done, even without
-exactly having to go into all the details. That is one of the reasons I am also
-using the graphical GUI PIXEL for Raspbian since I thing it makes it easier for
-the beginners to get started (and you might want to use PIXEL anyway when you
-are using the Raspberry 7” display as interface for your home automation
-controller)
This tutorial is also based on having
-a Windows PC to support the setup process. You might be able to completely
-do it without the support of an extra PC, if you can get a MicroSD card with a
-pre-installed Raspbian OS and use the display options (the Raspberry 7” display
-or HDMI Display) for the Raspberry.
DISCLAIMER:
This
-tutorial might contain some typos, errors or ways of setting up, which can be
-done in a better way. I am just reflecting my process of starting from scratch
-and slowly working my way through hundreds of online tutorials, manuals, forum
-threads etc. and on the way, highlighting the issues I had in getting things
-working. There will be no guarantee that the given instructions are working for
-your project as well.
Anyway I hope this tutorial will help some beginners to enjoy home
-automation with openHAB2.
The 2 in openHAB2 is important! The tutorial is based on the openHAB2
-and will not go into all the details of the old version.
You just have to be aware, that a lot of online documentation is still
-for the openHAB version and will not
-be applicable for openHAB2!
So the best thing is always to go to the official webpage of openHAB2
-and start from there, and only if you really can’t find the information or the
-link there, go to google and search for other solutions. I was always using the
-search setting (last year) so it was more likely to the results considering
-openHAB2 and not openHAB.
-
As mentioned before, I am basing this tutorial on the graphical GUI of Raspbian
-named PIXEL so the shopping list is also containing parts for this optional
-setup:
- Raspberry
- Pi 3 |
-
- |
-
- MicroSD
- card 16GB (minimal to have some buffer for the future) Make sure you have the
- right card reader to plug the MicroSD card into your computer! |
-
- |
-
- Designated
- Raspberry power supply (min. 2,5A 5V, I recommend 3A) Do not use other USB chargers since insufficient power supply (shown
- in GUI as lightening symbol in the upper right corner) will result in serious
- issues like e.g. Bluetooth not working) A cable switch might be a good
- thing since you might have to hard-reset your Pi in the early days more often
- and the Pi itself does not have a power switch |
-
- |
-
- USB
- Mouse |
-
- |
-
- USB
- Keyboard |
-
- |
-
- HDMI
- cable (full size to whatever your display needs) |
-
- |
-
- Ethernet
- cable (optional, if you not want to use WiFi to connect the Raspberry to your
- gateway) |
-
- |
-
- Raspberry
- case (optional, will not be needed
- if you are going for the 7” Raspberry display setup) |
-
- |
-
- Display
- with HDMI input ( optional, will not
- be needed if you are going for the 7” Raspberry display setup) |
-
- |
-
(I found it very useful to have one permanent GUI interface mounted on
-your controller, you can also use this touchscreen interface directly to
-interact with your home automation):
- Raspberry
- Pi 7" Touch-Display |
-
- |
-
- Premium
- case for Raspberry Pi 7" Touch-Display (closed version) often sold in
- bundle with Touch-Display, should be available in black, white and
- transparent This
- is a very good case if you want to place the controller on a table or counter
- since it is protecting the Raspberry from the back. |
-
- |
-
- Alternative: Cases for Raspberry
- Pi 7" Touch-Display. You will find a wide range of other cases. The open
- versions might give you a better access to the Pi GPIO pins or for changing
- SD card. Please
- consider: since you can rotate the image of the GUI on the display you can
- also choose to switch from landscape to portrait orientation |
-
- |
-
- Bluetooth
- keyboard (optional, since the optional on screen touch keyboard for Raspbian
- PIXEL was not working without errors, I decided to go for a Bluetooth
- keyboard which makes the typing much easier) |
-
- |
-
If you want to use the Z-Wave technology for your home automation
-project you have to have one Z-Wave controller connected to your Raspberry
NOTE: Be aware that the details
-serial numbers or item names may vary since you have to always make sure to use
-the hardware which is allowed in your country!
- Aeotec
- by Aeon Labs Z-Stick Gen5 Pros: -
- Allows offline inclusion of Z-Wave devices which
- makes it very easy since you only have to take the stick to the mounted
- device, not the entire Raspberry Cons: -
- Including battery powered devices into openHAB2
- requires a special process (see tutorial) |
-
- |
-
- Alternative: UZB Z-Wave PLUS
- USB stick by Z-Wave.Me Pros: -
- Cheapest controller Cons: -
- For inclusion, the controller has to be plugged into
- the Raspberry, so for mounted devices like wall switches , you have to take
- the Raspberry in close proximity of the device or do the inclusion before you
- mount the switch inside the wall |
-
- |
-
- NOT REALLY an Alternative: RaZberry2 Z-Wave
- Plus Daughter Card for Raspberry Pi Home Automation (not plug and play compatible with optional setup of the controller
- with 7” Raspberry display!) Pros: -
- will be mounted directly on the Raspberry so it is
- not using a USB port Cons: -
- will be mounted directly on the Raspberry which is
- blocking the GPIO pins for e.g. the Display power supply or additional
- cooling fans, so you have to manually solder the power wires at the back of
- the razberry -
- is using the i/o port of the Raspberry Pi 3 on board
- Bluetooth, so a lot of additional configuration is needed to get the razberry
- and the Bluetooth running in parallel. -
- most expensive controller |
-
- |
-
NOTE: Be aware that the details
-serial numbers or item names may vary since you have to always make sure to use
-the hardware which is allowed in your country!
Since I am doing a German based home automation project you may find
-that some Z-Wave devices are not sold in your required country configuration (
-e.g. Z-Wave NodOn Smart Plug not available e.g. in the US)
- Z-Wave
- Fibaro Double Switch 2, Z-Wave Plus Smart Switch (comes at almost the same
- costs than the single switch and gives you 2 channels. Only reason to go for
- single switch is you need the full power range of the single switch since the
- double switch has slightly lower range) NOTE:
- This switch is designed to be installed in the electrical power wiring of
- your home (inside a distributor case). In some countries this may only be
- allowed to be done by special trained staff (insurance and/or law). |
-
- |
-
- Aeotec
- Multi-Sensor 6 ZW100-C - Z-Wave Plus |
-
- |
-
- Z-Wave
- Aeon Labs ZW088 Z-Wave Key Fob, Gen5 |
-
- |
-
- Z-Wave
- NodOn Smart Plug (not available e.g. in the US) |
-
- |
-
NOTE: if you want to by other Z-Wave
-devices always make your they are listed in the Z-Wave device list of the
-openHAB2 Z-Wave binding to make sure they are supported correctly in the
-context of openHAB2:
http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list
A lot of things you are using at home are already connected to your LAN
-and can be integrated into your openHAB2 home automation project if the right
-binding is available for that device.
You can find an overview on http://docs.openhab.org/addons/bindings.html
NOTE: Be aware that not all the
-bindings to include devices are already included in the stable version of
-openHAB2 and may require a manual installation of a so called snapshot version
-of the binding (how to install snapshot bindings is explained later in this
-tutorial since we will need it for the WiFi LED controller)
- WiFi
- XCSOURCE Magic UFO-WiFi LED-Controller Type LD382 (other brand names might
- work as well, but you have to make sure it is Type LD382, LD382A or LD686) REMARK:
- I was using a WiFi controller on purpose since: -
- it is only about half the price of a Z-Wave WiFi
- controller -
- you can control the device as well via smart phone
- (like light to music feature of the app) But
- some things you have to be aware of using WiFi LED instead of Z-Wave LED: -
- you have to have a WiFi network to which your
- Raspberry and your WiFi LED controller is connected -
- you have to manually install a beta / snapshot
- version of openHAB2 or manually install the WiFi LED Binding on top of the
- package based installation of openHAB2 (see tutorial) |
-
- |
-
- RGB
- LED stripe incl. power supply 12V DC bundle While
- you can buy the stripe and the power supply bundle separately, most of the
- times the bundle will come at the same price or even cheaper. The included
- power supply plug should directly fit into the power inlet socket of the WiFi
- controller. REMARK:
- It also allows you to attach the stripe without soldering since you can just cut
- the cable of the RGB bundle controller and use it to connect the LED stripe
- to the WiFi controller. |
-
- |
-
- Optional:
- White LED stripe Since
- the WiFi LED-Controller is allowing you to at additionally control plain
- colour LED stripe (or in case of controller type LD686 even two) you might want to get
- an additional strip in e.g. plain white to create ab clear white
- illumination. NOTE:
- You might be fine with just the stripe if you already got the power supply
- with the RGB stripe |
-
- |
-
- Optional
- (in my case it was already there and I just included it into my project): Yamaha
- Receiver RX-V581 |
-
- |
-
- Optional
- (in my case it was already there and I just included it into my project): Samsung
- TV Details MISSING NOTE: Even when the
- binding is not officially supporting your TV you might be lucky |
-
- |
-
My tutorial is using a MS-Windows windows machine for the PC part (You
-should be able to get it done with Mac or Linux PCs as well, but you have to go
-online to look up the differences and do some adaptions on the tutorial e.g.
-mounting the Raspberry file system to PC)
- The
- latest Raspbian (Raspberry OS)
- image You
- have to download the “Raspbian Jessie with PIXEL - Image with PIXEL desktop
- based on Debian Jessie” since this tutorial is using PIXEL |
-
- https://www.Raspberrypi.org/downloads/Raspbian/ |
-
- Etcher (to write the Raspbian
- image to the SD-Card) |
- - - | -
- Eclipse Smart HomeDesigner (optional but
- strongly recommended for easy editing of OpenHAB2 configuration files; incl.
- syntax highlighting) You
- have to choose the right version for your PC |
-
- https://www.openhab.org/downloads.html |
-
- To use
- Eclipse Smart HomeDesigner you need Java
- Runtime Environment JRE (if not already installed on your PC) |
- - - | -
- PuTTY or KiTTY portable to
- access the Raspberry console from your PC |
-
-
- https://portableapps.com/apps/internet/kitty-portable |
-
- WinSCP portable to access Raspberry
- file System directly from your PC (might become obsolete if you use a SAMBA
- server on your Raspberry, see tutorial) |
- - - | -
How to download software will be explained in the tutorial, but as a
-reference you will use
openHAB2 Package repository
-based installation or manual installation (be aware that the file locations on
-the Raspberry will be different based on which kind of installation you choose)
Samba server(for access of Raspberry
-files from Windows machine; needed for Eclipse Smart HomeDesigner)
xscreensaver (optional if you are
-using the display setup, to easy control screen blackening or screen savers)
- Download latest Raspbian
- Release (*.zip file) to a Windows folder |
-
- |
-
- Extract *.zip file
- to receive *.img file |
-
- |
-
- Use Etcher to write
- image to a MicroSD card
|
-
- |
-
- |
-
- |
-
- Connect
- keyboard and mouse to the USB ports |
-
- |
-
- Insert
- the MicroSD card (pins facing the circuit board) |
-
- |
-
- Connect
- Raspberry with display using HDMI ( optional, will not be needed if you are going for the 7” Raspberry display
- setup) |
-
- |
-
- Connect
- the Raspberry with Ethernet cable to your gateway (optional) |
-
- |
-
- Connect
- the power supply to the micro USB power input Make sure that you have
- everything plugged in and the Raspberry is clear of any metal items since
- this step is already powering up your Raspberry. |
-
- |
-
The full tutorial will be found on:
https://www.element14.com/community/docs/DOC-78156/l/Raspberry-pi-7-touchscreen-display
and a clip on YouTube:
https://www.youtube.com/watch?v=tK-w-wDvRTg
Remark: I had an issue with
-plugging in the power supply to the micro USB power input on the circuit board
-of the display (like shown in the video). The Raspberry was still showing me
-the low power symbol (lightening symbol on the upper right corner)
-SOLUTION: I had to plug in the power
-supply to the micro USB power input on the Raspberry itself. The display is now
-powered via the jumper cables. The standard display case is also allowing for
-both micro USB power inputs to be used.
NOTE: If the image on the display is
-having the wrong orientation, you can rotate the image by changing the
-configuration of Raspbian (see tutorial section Initial configuration of Raspbian)
- Step 1 |
-
- |
-
- Step 2 |
-
- |
-
- Step 3 |
-
- |
-
- Step 4 |
-
- |
-
- Step 5 |
-
- |
-
- Step 6 |
-
- |
-
- Step 7 |
-
- The
- two other path cables (green and yellow can be ignored) |
-
- Step 8 |
-
- Assembly
- of the standard display. (Make sure you have inserted the MicroSD card since
- you won’t have access to the slot as soon as you mounted the case!) Just
- pull the back plate off the case, insert the display including the mounted Raspberry
- (make sure that the path cables and the display cables are not crushed
- between case and board), tighten it with the 4 screws and put the back plate
- into place Here
- is a good clip on YouTube: https://www.youtube.com/watch?v=wpSxibZOmoo |
-
Since this tutorial is focussing on using the PIXEL GUI here are a few
-basic tips
Raspberry start-up screen
PIXEL basic desktop (including the programs used in this tutorial) not
-unlike other PC OS desktops:
network
- configuration Bluetooth
- configuration Terminal Applications menu (incl. access to
- configuration) File manager Web browser
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
NOTE: If you are working
-with the 7” Raspberry display setup you might need to flip/rotate the display
-orientation. Just check the section” Optional: Change display orientation”
-later in this chapter
NOTE: As soon as you have connected
-the Raspberry to the network you might find it easier to open the Terminal
-remotely using PuTTY. This also allows you to directly paste command lines from
-this tutorial into the Terminal. (Right click in PuTTY terminal is pasting the
-content of the clipboard into the terminal)
The full list can be found on:
https://www.Raspberrypi.org/documentation/linux/usage/commands.md
- help |
-
- Is
- showing you basic commands |
-
- sudo othercommand |
-
- is
- allowing you to run other commands as super user aka root user |
-
- ls -la |
-
- Shows
- the files in a directory incl. additional information |
-
- cd cd cd .. cd directory cd /directory/directory |
-
- Is
- changing the shell working directory. It can
- be used with attributes: No
- attribute => working directory is changed to user root directory. working
- directory is changed to directory one level above working
- directory is changed to the named directory inside the current
- directory working
- directory is changed to the directory defined by the full path /directory/directory . |
-
- nano filename (sudo
- nano filename) |
-
- Is
- stating a basic editor in the terminal to open or create a simple text or
- configuration file, mostly you have to add a sudo if you want to be able to
- write the files with root user rights. Closing the editor is done by ctrl+x
- and then choosing whether you want to save your changes or not |
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
- |
-
The following steps make sure, that basic Raspbian configuration is
-done.
NOTE: There may be many tutorials in
-how to set-up and configure Raspbian and going into more details about user
-rights and other Raspbian features. This tutorial is showing the way which
-worked for my project aiming to run openHAB2 on the Raspberry.
Since this tutorial is using the PIXEL GUI I always refer to the PIXEL
-way of configuring and only go back to the terminal way (text only) if it is
-required.
The 1.st thing you want to do is changing the localisation settings to
-make sure your keyboard layout and WiFi settings are matching.
NOTE: Do not change the password
-before you have changed the keyboard layout since you might put in a different
-password than you expect (e.g. US qwerty vs. German qwertz results in “Raspberrz”
-instead of “Raspberry”)
- Open Raspberry
- Pi Configuration Application
- menu -Preferences --Raspberry
- Pi configuration |
-
- |
-
- Go to
- tab Localisation |
-
- |
-
- Select
- Locale, Timezone, Keyboard and WiFi Country Locale: choose your
- language and country Timezone: choose timezone Keyboard: choose keyboard
- language and specific keyboard layout WiFi
- Country:
- choose country specific WiFi settings |
-
- |
-
- Accept
- the reboot |
-
- |
-
If you are working with the 7” Raspberry display setup you might need to
-flip/rotate the display orientation for specific cases
- Open
- Terminal |
-
- |
-
- Open
- boot config.txt file in nano editor |
-
- sudo
- nano /boot/config.txt |
-
- Add
- the line at the bottom of the file: (This
- will flip the display orientation) |
-
- lcd_rotate=2 |
-
- Optional:
- You can choose from different angles 0 degrees rotation or 90 degrees rotation or 180
- degrees rotation or 270
- degrees rotation or horizontal
- flip or vertical
- flip |
-
- display_rotate=0 or display_rotate=1 or display_rotate=2 or display_rotate=3 or display_rotate=0x10000 or display_rotate=0x20000 |
-
- Exit
- and save the file |
-
- <ctrl+x> <y> <Enter> |
-
- Reboot
- the Raspberry for the changes to take effect |
-
- sudo reboot |
-
This is important to secure your standard Raspberry user “pi” before you
-connect the Raspberry to the network.
NOTE: Make sure you have changed the
-keyboard layout to your requirements before change the password.
- Open Raspberry
- Pi Configuration Application
- menu -Preferences --Raspberry
- Pi configuration |
-
- |
-
- Go to
- tab System and select Change Password (Remark: you might not have the option
- Expand Filesystem as shown in the picture) |
-
- |
-
- Enter
- initial (for standard user “pi” it is “Raspberry” and your new password |
-
- Raspberry yourpassword yourpassword |
-
This is required for the communication to the PC (SSH) and to the Z-Wave
-stick (Serial)
- Open Raspberry
- Pi Configuration Application
- menu -Preferences --Raspberry
- Pi configuration |
-
- |
-
- Go to
- tab Interfaces |
-
- |
-
- Enable
- SSH (to access the Raspberry via Network) Enable
- Serial (to enable Serial Port for Z-Wave controllers) |
-
- SSH:
- Enable Serial: Enable |
-
Either by
-plugging in a Ethernet cable or by connecting to a WiFi network:
- Click on the network symbol |
-
- 3 lines and 2 red crosses if no
- connection is available |
-
- Select WiFi network: |
-
- yourwifi |
-
- Enter WiFi password |
-
- yourwifipassword |
-
To do so you have to check the IP address of the Raspberry in the
-terminal
- Start
- terminal by clicking on the icon |
-
- |
-
- use
- the command |
-
- ifconfig |
-
- Result:
- the terminal shows you the ip configuration and the IP addresses for the
- different connections |
-
- Ethernet
- cable: eth0
- xxx.xxx.xxx.xxx or WiFi: wlan0 xxx.xxx.xxx.xxx |
-
NOTE: You might want to set your IP
-address of the Raspberry to static, if you get problems with the lease time
-setting of your gateway (IP address is changing whenever you reconnect to the
-network)
Raspbian is proving online updates so make sure that you have the latest
-installed before you go further in the configuration.
- Start
- terminal by clicking on the icon |
-
- |
-
- use
- the command (be
- aware that the upgrade function will take several minutes to complete if you
- run it for the first time) |
-
- sudo
- apt-get update sudo
- apt-get upgrade |
-
The following settings and configuration is just for additional
-information and might not be needed to setup openHAB2. Some of the settings and
-configuration might still be useful.
Make sure Raspbian is using the full capacity of the MicroSD card
-(normally while starting up Raspbian for the first time, it is done
-automatically and the Raspberry will restart automatically):
- Open
- Terminal |
-
- |
-
- use
- the command |
-
- sudo fdisk -l |
-
- Result:
- the terminal shows you the partition size of the two partitions on the MicroSD
- card summing up to the total capacity |
-
- Example
- for 16 GB: |
-
- If the
- capacity is not completely used (e.g. you were using not a plain Raspbian
- image) you have to expand the partitions manually in the terminal
- configuration |
-
- |
-
- Start
- terminal configuration with command |
-
- sudo raspi-config |
-
- Select
- Option (Be aware that the option numbers might change in newer Raspbian
- releases) |
-
- 7 Advanced Options |
-
- Select
- Option |
-
- A1
- Expand Filesystem Prompt
- will tell you that the file system has been increased |
-
- Now
- select to exit the configuration |
-
- <Finish> |
-
- Allow
- reboot |
-
- <Yes> |
-
To be able to create a Icon you have to first create a *.desktop file
NOTE: This example is creating the
-desktop icon for the user “pi”
- Open
- Terminal |
-
- |
-
- Go to
- the directory desktop for your “pi” user |
-
- cd /home/pi/Desktop |
-
- Create
- a specific desktop file using nano editor |
-
- sudo nano yourdesktopfile.desktop |
-
- Enter
- parameters into the file accordingly Name: YourShortcutName Comment:
- Your Shortcut Comment Icon: YourIcon.png Application
- for shortcut: YourShortcutApp |
-
- Desktop
- Entry] Name=YourShortcutName Comment=Your Shortcut Comment Icon=/usr/share/pixmaps/YourIcon.png Exec=/usr/bin/YourShortcutApp Type=Application Encoding=UTF-8 Terminal=false |
-
- Exit
- and save the file |
-
- <ctrl+x> <y> <Enter> |
-
Since by default the “root” disabled it can’t be used. You might want to
-enable it for certain purposes like e.g. enabling the root user for samba file
-server to get full access to the directories from a PC (see chapter setup samba
-server)
NOTE: There is a reason for the “root”
-being disabled! Enabling the user is allowing full access to the Raspbian and
-therefore creating a security risk. Please always consider whether you really
-want to enable this user!
- Open
- Terminal |
-
- |
-
- Since
- the user already exists you just have to set the password NOTE:
- you can also use the command to change the password later on |
-
- sudo passwd root |
-
- Just
- enter twice the new password for the “root” user |
-
- rootpassword rootpassword |
-
NOTE: There is a reason for the “root”
-not being enabled for SSH! Enabling the user for SSH is allowing full remote
-access to the Raspbian and therefore creating a significant security risk.
-Please always consider whether you really want to enable this user for SSH!
- Open
- Terminal |
-
- |
-
- Open
- sshd.config file in nano editor |
-
- sudo
- nano /etc/ssh/sshd_config |
-
- Find
- the section # Authentication in the file |
-
- #
- Authentication: LoginGraceTime
- 120 PermitRootLogin
- without-password StrictModes
- yes |
-
- And
- change the PermitRootLoing line to |
-
- PermitRootLogin yes |
-
- Exit
- and save the file |
-
- <ctrl+x> <y> <Enter> |
-
- Reboot
- the Raspberry for the changes to take effect |
-
- sudo reboot |
-
If you are working with the 7” Raspberry display setup you might want to
-use a screensaver as well.
- Open
- Terminal |
-
- |
-
- Install
- xscreensaver and some additional screen saver themes |
-
- sudo
- apt-get install xscreensaver xscreensaver-data-extra xscreensaver-gl-extra <y> |
-
I am showing an example configuration which is first switching on a
-screensaver and then turning off the display completely.
- Open Screensaver
- Preferences Application
- menu -Preferences --Screensaver |
-
- |
-
- Configure
- Display Modes Mode: <Only One Screen
- Saver> Screensaver:
- <Barcode> Blank
- After: <5> minutes Cycle After:
- <0> minutes NOTE:
- This is just a sample configuration selecting one screensaver after 5 minutes |
-
- |
-
- Configure
- Advanced Display
- Power Management <check> Power Management
- Enabled Standby
- After <10> minutes Suspend
- After <10> minutes Off
- After <10> minutes <check>
- Quick
- Power-off in Blank Only Mode (Display Power Management) NOTE:
- This is just a sample switching off the screen after 10 minutes |
-
- |
-
- Close the
- Screensaver Preferences |
-
- |
-
- Open
- Terminal |
-
- |
-
- Open
- the autostart configuration file with nano editor |
-
- sudo
- nano /home/pi/.config/lxsession/LXDE-pi/autostart |
-
- Add
- the lines at the end of the file (ignoring error dialogs) |
-
- @unclutter @chromium-browser --noerrdialogs |
-
- Optional
- parameters: --kiosk
- (for full screen mode. NOTE: to exit full screen mode you have to press
- “Alt+F4” on the keyboard of the Raspberry, so you have to have a keyboard
- installed to exit this mode!) --incognito
- (for incognito mode of the browser) http://yoururl.com
- (for selecting the URL directly in the configuration file. NOTE: selecting
- the URL via Chromium settings might be easier) |
-
- @chromium-browser
- --noerrdialogs --kiosk --incognito http://yoururl.com |
-
- Exit
- and save the file |
-
- <ctrl+x> <y> <Enter> |
-
- Check
- if the browser is coming up after reboot |
-
- sudo reboot |
-
NOTE: You can also select the URL in the autostart file, but using the
-browser functionality is giving you a simpler access (no terminal) and you can
-check the result without rebooting
- Open Chromium
- and go to the Settings (3
- bullets icon) |
-
- |
-
- Select
- in the On start-up chapter the option <check> Open a specific
- page or set of pages And click
- on the link <Set pages> to enter the requested start URL |
-
- |
-
- Enter
- the requested start URL http://yoururl.com <OK> your URL Now
- Chromium is allowing you to enter an additional URL which you can ignore |
-
- |
-
- ptional:
- If you have completed your openHAB2 configuration and want to use HABPANEL as
- GUI you can just use the URL or even start specific pages in the HABPANEL GUI
- (just use the URL shown in the browser when you access the HABPANEL page) -
- NOTE: If you are linking to pages hosted on the same raspberry, most likely
- ou will receive an error message since on startup the service has not started
- up. Just refresh the page after a few minutes. |
-
- http://xxx.xxx.xxx.xxx:8080/start/index |
-
- Open KiTTY or PuTTY
- on your PC |
-
- |
-
- Enter Hostname (pi@
- in front of the IP is giving the user you want to use for connecting, in this
- case the standard user “pi”), Port and Connection type Select Open to
- launch the terminal |
-
- Hostname: pi@xxx.xxx.xxx.xxx Port:22 Connection type: SSH <Open> - |
-
- Optional save the
- session |
-
- Saved session yoursessionname <Save> |
-
- On first connection
- an security alert is coming which you have to accept |
-
- Yes - |
-
- Now a terminal
- window is opening on our PC asking you to enter the “pi” user password |
-
- yourpassword |
-
- The terminal window
- is now starting up in the user home directory |
-
- |
-
- You can now use the
- PC terminal window the same way you us the terminal on the Raspberry itself |
-
- |
-
NOTE: The connection can only access the rights of
-the Raspberry user. So the standard user “pi” will not have the writing rights
-for multiple directories. For full
-access you have to use the user “root” (user needs to be enabled since it is
-disabled in standard setup, procedure shown later in the tutorial), but
-enabling this user for SSH access is opening up a significant security risk, so
-it is recommended to use as Raspberry based Samba server for full access to
-specific directories (shown later in the tutorial).
- Open WinSCP on your
- computer |
-
- |
-
- Select: New Site Select File
- protocol: SCP Enter Host name: xxx.xxx.xxx.xxx -Enter port: 22 Enter User name: pi
- (standard user with limited access to the file system) Enter Password for
- “pi” |
-
- File protocol: SCP Host name: xxx.xxx.xxx.xxx Port: 22 User name: pi Password yourpassword |
-
- Optional save the
- Session |
-
- <Save> - |
-
- WinSCP is launched
- showing the windows directory on the left side and the “pi” user home
- directory of the Raspberry on the right side of the window |
-
- |
-
To have
-access to the Raspberry file system using the PC file explorer (it is needed to
-run Eclipse Smart Home Designer your PC) you have to setup a Samba server on
-the Raspberry first.
NOTE: You
-can also follow the alternative instructions for a openHAB2 centric
-installation at: http://docs.openhab.org/installation/linux.html#network-sharing
- Open Terminal |
-
- |
-
- Make sure Raspberry
- is updated (optional) |
-
- sudo apt-get update - |
-
- Download samba
- server to Raspbery (confirm with enter) |
-
- sudo apt-get install
- samba samba-common-bin <Enter> - |
-
- Open the samba
- server configuration file in nano editor |
-
- sudo nano
- /etc/samba/smb.conf |
-
- Go to the end of the
- file and add following lines |
-
- [RaspberryPiDirectories] comment = Your full
- access to Raspberry Pi directories path = / -read only = no - |
-
- Optional Change the
- workgroup name if needed, otherwise uncomment and enable WINS support in the
- section |
-
- # Windows Internet
- Name Serving Support Section: # WINS Support -
- Tells the NMBD component of Samba to enable its WINS Server # wins support = no wins support = yes |
-
- Exit and save the
- file |
-
- <ctrl+x> -<y> -<Enter> - |
-
- Check the syntax of
- the samba configuration file. Result: there should
- be no error message(red) in the prompt |
-
- testparm -<Enter> - |
-
- Now you have to
- restart the services to reload the config file |
-
- sudo systemctl
- restart smbd.service sudo systemctl
- restart nmbd.service |
-
- Make sure that the
- services are running again without errors |
-
- sudo systemctl
- status smbd.service sudo systemctl
- status nmbd.service |
-
- sudo systemctl
- status smbd.service sudo systemctl
- status nmbd.service |
-
- Check if all the
- services are running |
-
- sudo systemctl
- restart smbd.service sudo systemctl
- restart nmbd.service |
-
- Restart the samba
- services |
-
- sudo systemctl stop
- smbd.service sudo systemctl stop
- nmbd.service |
-
- Manually stop the
- samba services |
-
- sudo smbpasswd -d sambausr - |
-
- If needed: disable a
- user for samba |
-
- sudo smbpasswd -e sambausr - |
-
- If you need to
- enable a user for samba |
-
NOTE: Skip this section if you only want to use
-samba for openHAB2
- Create a special
- user sambausr for the samba server so you not have to use
- the root or pi user to allow access to the directories on the Raspberry |
-
- sudo adduser sambausr - |
-
- You have to enter
- your password sambausrpassword and optional information you can just leave
- empty and finally save with y |
-
- Adding user
- `sambausr' ... Adding new group
- `sambausr' (1001) ... Adding new user
- `sambausr' (1001) with group `sambausr' ... Creating home
- directory `/home/sambausr' ... Copying files from
- `/etc/skel' ... Enter new UNIX
- password: Retype new UNIX
- password: passwd: password
- updated successfully Changing the user
- information for sambausr Enter the new value,
- or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information - correct? [Y/n] y - |
-
- Map the user for
- Samba with |
-
- sudo smbpasswd -a sambausr |
-
- Enter the password sambausrpassword |
-
- New SMB password: Retype new SMB
- password: Added user sambausr. - |
-
NOTE: Instead of allowing the sambausr to have full access on the Raspbian
-file system to some specific folders by applying the chown command, you might consider enable the root user and use the root user
-to connect to the Raspberry from the file system (see chapter Optional Raspberry
-settings and configuration). But be aware that enabling the “root” user is
-creating a security risk!
- Map the user for
- Samba with |
-
- sudo smbpasswd -a root - |
-
- Enter the password rootpassword |
-
- New SMB password: Retype new SMB
- password: Added user root. - |
-
NOTE: Skip this section if you only want to use
-samba for openHAB2
- One time map the Raspberry
- folder to a windows drive (in this case Z) enter in the CMD Prompt (just put CMD in the search of Windows 10 to open the command prompt) |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:sambausr sambausrpassword /persistent:no |
-
- Persistent map the Raspberry
- folder to a windows drive (in this case Z) enter in the CMD Prompt (just put CMD in the search of Windows 10 to open the command prompt) |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:sambausr sambausrpassword /persistent:yes |
-
- You can also create
- a simple *.bat file for easy double clicking. Open the editor by
- just putting notepad in the search of Windows 10 Enter the line Save as yourmapping.bat |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:sambausr sambausrpassword /persistent:no |
-
This
-tutorial is only focussing on the package repository installation of the stable
-version and only on the add-ons for the listed hardware. All other
-installations are described on the openhab.org site installation for Linux: (http://docs.openhab.org/installation/linux.html#package-repository-installation) For the Raspbian you have to go
-for the “Apt Based Systems” part of it.
- Open Terminal |
-
- |
-
- First, add the
- openHAB2 bintray repository key to your package manager and allow Apt to use
- the HTTPS Protocol |
-
- wget -qO -
- 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' | sudo
- apt-key add - sudo apt-get install
- apt-transport-https |
-
- I choose the stable
- Official (Stable) build The stable builds
- contain the latest official release with tested features. |
-
- echo 'deb
- https://dl.bintray.com/openhab/apt-repo2 stable main' | sudo tee
- /etc/apt/sources.list.d/openhab2.list |
-
- Next, resynchronize
- the package index: |
-
- sudo apt-get update - |
-
- Now install openHAB2
- with the following command: |
-
- sudo apt-get install
- openhab2 |
-
- Optional but
- recommended: When you choose to install an add-on, openHAB2 will download it
- from the internet on request. If you plan on disconnecting your machine from
- the internet, then you will want to also install the add-ons package. |
-
- sudo apt-get install
- openhab2-addons |
-
- Since we were
- installing the stable version, we have to manually add the binding WIFILED
- used for the WiFi LED controller manually to the system. First you have to
- change to the add-ons directory. Than you have to
- download the latest version of the binding directly from the online
- repository NOTE: Later, this
- binding will not be available in the PAPER UI GUI under the Add-ons/Bindings
- tab, but will show up in the configuration/bindings tab (note here) |
-
- cd
- /usr/share/openhab2/addons sudo wget
- https://openhab.ci.cloudbees.com/job/openHAB2-Bundles/lastSuccessfulBuild/org.openhab.binding%24org.openhab.binding.wifiled/artifact/org.openhab.binding/org.openhab.binding.wifiled/2.1.0-SNAPSHOT/org.openhab.binding.wifiled-2.1.0-SNAPSHOT.jar (but here!) |
-
- If everything went
- well, you can start openHAB2 and register it to be automatically executed at
- system startup. |
-
- sudo systemctl start
- openhab2.service sudo systemctl
- status openhab2.service sudo systemctl
- daemon-reload sudo systemctl
- enable openhab2.service |
-
- sudo systemctl status openhab2.service - |
-
- Shows the status of
- openHAB2 |
-
- sudo systemctl start openhab2.service - |
-
- Start the service of
- openHAB2 |
-
- sudo systemctl stop openhab2.service - |
-
- Stops the service of
- openHAB2 |
-
- sudo systemctl restart openhab2.service - |
-
- Restarts the service
- of openHAB2 |
-
- sudo apt-get purge openhab2 -sudo rm - /etc/apt/sources.list.d/openhab2.list - |
-
- This commands
- uninstall openHAB2 from your Raspbian |
-
This is
-required to grant the PC based Eclipse Smart Home Designer access to the
-requested configuration folder on your Raspbian.
- The shares are
- configured to be not open for guests nor to the public. Let’s activate the
- “openhab” user as a samba user |
-
- sudo smbpasswd -a openhab - |
-
- Enter the password openhabpassword |
-
- New SMB password: Retype new SMB
- password: Added user openhab. - |
-
- Be aware, that
- creating and later using a specific user will ensure that permissions are honoured.
- Make sure, the “openhab” user has ownership and/or write access to the openHAB2
- configuration files. This can be accomplished by executing: |
-
- sudo chown -hR
- openhab:openhab /etc/openhab2 |
-
- Restart the samba
- service to allow the changes to be utilized |
-
- sudo systemctl
- restart smbd.service |
-
- One time map the Raspberry
- folder to a windows drive (in this case Z) enter in the CMD Prompt (just put CMD in the search of Windows 10 to open the command prompt) |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:openhab openhabpassword /persistent:no |
-
- Optional: Persistent
- map the Raspberry folder to a windows drive (in this case Z) enter in the CMD Prompt (just put CMD in the search of Windows 10 to open the
- command prompt) NOTE: Now every time
- you boot up your PC it will try to connect to the Raspbian samba server. |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:openhab openhabpassword /persistent:yes |
-
- Optional: You can
- also create a simple *.bat file for easy double clicking. Open the editor by
- just putting notepad in the search of Windows 10 Enter the line Save as yourmapping.bat |
-
- net use Z: \\xxx.xxx.xxx.xxx\RaspberryPiDirectories
- /user:openhab openhabpassword /persistent:no |
-
An openHAB2
-setup will often rely on hardware like a modem, transceiver or adapter to
-interface with home automation hardware. Examples are a Z-Wave, Enocean or
-RXFcom USB Stick or a Raspberry Pi add-on board connected to the serial port on
-its GPIOs. In order to allow openHAB2 to communicate with additional
-peripherals, it has to be added to corresponding Linux groups. The following
-example shows how to add Linux user openHAB2 to the often needed groups dialout and tty. Additional
-groups may be needed, depending on your hardware and software setup.
- Open Terminal |
-
- |
-
- Enter command (This is adding the openhab user to the group dialout) |
-
- sudo adduser openhab dialout - |
-
- Enter command (This is adding the openhab user to the group tty) |
-
- sudo adduser openhab tty - |
-
- Optional: Enter
- command (f you are looking
- to enable sound privileges for openHAB2, it will also be necessary to add
- openHAB2 to the “audio” group.) |
-
- sudo adduser openhab audio - |
-
- Open Terminal |
-
- |
-
- Change to directory |
-
- cd /etc/default/ - |
-
- Open openhab2 file
- in nano editor |
-
- sudo nano openhab2 - |
-
- Change the text from
- (nothing between the “”) To (something
- between the “”) |
-
- EXTRA_JAVA_OPTS="" EXTRA_JAVA_OPTS="-Dgnu.io.rxtx.SerialPorts=/dev/ttyUSB0:/dev/ttyS0:/dev/ttyS2:/dev/ttyACM0:/dev/ttyAMA0" |
-
- Exit and save the
- file |
-
- <ctrl+x> -<y> -<Enter> - |
-
- Make sure the
- changes take effect by rebooting the Raspberry |
-
- sudo reboot - |
-
(Optional
-but strongly recommended for easy editing of openHAB2 configuration files;
-incl. syntax highlighting)
The
-complete installation guide can be found on : http://docs.openhab.org/installation/designer.html#setup
- Download the Windows
- 64 bit version |
-
- http://eclipse.org/downloads/download.php?file=/smarthome/releases/0.8.0/eclipsesmarthome-incubation-0.8.0-designer-win64.zip |
-
- Optional: Download
- the 32 bit version since there are reports about the “stable” 64 bit version
- running not stable |
-
- http://eclipse.org/downloads/download.php?file=/smarthome/releases/0.8.0/eclipsesmarthome-incubation-0.8.0-designer-win.zip |
-
- Optional, but not
- recommended for beginner: Download a snapshot version |
-
- https://github.com/eclipse/smarthome/blob/master/docs/documentation/community/downloads.md#designer-builds |
-
- Unzip the downloaded
- file to a destination of your choice |
-
- yourpcdrive:\yourdestionation\eclipsesmarthome - |
-
- Download the offline
- Java Runtime Environment. Go to the java
- homepage download section Select “See all Java
- downloads” Or directly go to: Download the 64bit
- version (something like jre-8u131-windows-x64.exe ) or the 32bit depending on
- your system |
-
-
- (https://java.com/en/download/manual.jsp) |
-
- Install the Java
- Runtime Environment to the Eclipse Smart Home Designer folder Start the Java
- installer Select on the first
- screen “Change destination folder” Change the folder to
- \jre inside your Eclipse Smart Home Designer folder yourpcdrive:\yourdestionation\eclipseSmart Homesince this is the loaction your
- Eclipse Smart Home Designer is expecting the JRE. NOTE: This is now
- delivering you a “portable” version of the Eclipse Smart Home Designer which
- just can be copied/moved to different locations or machines without the need
- of reinstalling. |
-
- <Install> -<Change> yourpcdrive:\yourdestionation\eclipsesmarthome\jre |
-
- Execute the SmartHome-Designer.exe |
-
- yourpcdrive:\yourdestionation\eclipsesmarthome\SmartHome-Designer.exe |
-
- Link the Eclipse
- Smart Home Designer to the configuration folder on your Raspberry NOTE: Make sure that
- you have mapped the samba drive before (see openHAB2 setup for the samba
- server) If you have chosen a
- different drive letter in the mapping, just replace the Z: |
-
- Z:\etc\openhab2 - |
-
- Eclipse Smart Home
- Designer should now recognize the file structure inside the configuration
- folder and augment the different folders with different icons |
-
- |
-
To open the
-openHAB2 you have to access the web GUI with a browser on your PC or directly
-from your Raspberry, depending on your setup.
The URL
-will be http://xxx.xxx.xxx.xxx:8080/start/index filling in the IP of your Raspberry
- First the GUI will
- ask you to select the initial setup configuration. This will install a
- standard set of GUIs in openHAB2 |
-
- |
-
- After a few minutes
- of installation the standard openHAB2 start GUI will come up, showing you the
- icons for the pre-installed GUIs: <BASIC UI> <PAPER UI> <HABPANEL> |
-
- |
-
Now you are
-ready for the configuration of your home automation project in openHAB2!
Make sure
-to double check with the official website of openHAB2 since in the end this is
-where you will find the correct answers if something in this tutorial is not
-working:
As a start
-you should read the beginners tutorial form beginning to end so you understand
-the basic concept of things, items, rules etc. and how they are mend to work
-together;
http://docs.openhab.org/introduction.html
One of the
-most important things I had to learn is that there is also an openHAB (no 2)!
-So here are a few things if found out to be considerable if you are using
-openHAB2:
-
-Always
-make sure, that you are looking at the right version of openHAB when it comes
-down to documentation, since a lot of older online documentation is refereeing
-to the openHAB (no 2). When a few things might be done the same/similar way in
-openHAB2, other things have changed and will not work in openHAB2
-
-You
-will also encounter two different ways of storing configuration in openHAB.
o
-In
-openHAB (no 2).configuration was stored in files only
o
-In
-openHAB2 you can still use the files, but also can use database storage for
-certain typs when you do the configuration with PAPER UI. This now might lead
-to some confusion since you will not be able to change e.g. items in PAPER UI
-which were configured using a text file. Also you would not have the correct syntax
-highlighting in the Eclipse Smart Home Designer is expecting file configuration
-only an items configured in PAPER UI will show up as errors.
o
-But
-be aware that some configuration in openHAB2 still has to be done via text file
-like e.g. rules. You might find already some progress in the snapshot release
-of openHAB2, but I decided to base this tutorial on the stable release with
-limited functionality in PAPER UI database
-
-Regularly
-check the website of openHAB2 for news since a lot of new features are expected
-to be implemented.
-
-Meanwhile
-be not afraid to go and sign up the openHAB community: https://community.openhab.org and ask your questions there. I got
-replies to my problems within days, sometimes even within hrs. There is also a
-designated area for beginners.
Since the
-online documentation is mostly referring to PAPER UI GUI I will try to stick to
-this GUI as long as possible.
-
-HABmin
-GUI will be needed for some Z-Wave
-installation
-
-HABPANEL
-GUI will be used to create the final user frontend for this project
NOTE: Since
-you will be regularly starting and switching the GUIs I highly recommend
-creating quick links in your browser for each GUI
- Start PAPER UI |
-
- http://xxx.xxx.xxx.xxx:8080/paperui/index.html#/inbox/search |
-
- Select -Add-ons --Bindings and install the
- Bindings: <Samsung TV
- Binding> <YahooWeather
- Binding> <YamahaReceiver
- Binding> <Z-Wave Binding> |
-
- |
-
- Result: The icons of the
- bindings should change to blue The install option
- should change to uninstall (sometimes you have
- to reload the page if the update is not coming up for a few minutes) NOTE: Since in my
- project case, the Yamaha Receiver is already connected to the same network
- than my Raspberry, I do already get a message in the inbox which is telling
- me, that a new thing was found |
-
- |
-
- Select -Add-ons --User Interfaces and install the User
- Interface HABmin which we will need
- for some Z-Wave stuff |
-
- |
-
- Result: HABmin GUI is
- installed |
-
- |
-
NOTE: If
-you can add new things to openHAB2 depends on whether they are connected to the
-network (if you use IP), whether they are included in the Z-Wave network of the
-Z-Wave controller or whether your Raspberry is online if you use online sourced
-like YahooWeather
- Since in my project
- case, the Yamaha Receiver is already connected to the same network than my Raspberry,
- I do already get a message in the inbox which is telling me, that a new thing
- was found Now just click on
- the blue icon with the check mark to add this thing |
-
- |
-
- You can now change
- the name of the thing if you want to |
-
- <ADD AS THING> - |
-
- If the thing is not
- found automatically, you have to add it using the blue add icon (+) to manually
- add a thing. |
-
- <(+)> |
-
- This will now show
- you all the installed Bindings which can be used to add more things. NOTE: You should
- find all bindings there which we installed in the step Installing Add-ons. Additionally you
- will find the <WiFi
- LED Binding>, which
- we manually installed in “Chapter 6: Installation of openHAB2 on Raspberry”
- since this is a snapshot Binding which we managed manually |
-
- |
-
NOTE: Make sure that the device is connected to the Raspberry
-network via IP.
- The thing should
- come up automatically in you inbox as soon as you connect it to the network |
-
- |
-
- You can now change
- the name of the thing if you want to You can also change
- the name of the thing if you are planning to run with your own naming
- convention |
-
- <ADD AS THING> - |
-
- Optional: Select in
- your PAPER UI inbox the add blue add icon (+) Search for the thing
- manually using the YamahaReceiver Binding |
-
- <(+)> |
-
- Switch to -Configuration --Things tab and check
- whether the now thing is available. The green icon
- online next to the name is indicating that openHAB2 is connected to the thing
- and information can be exchanged |
-
- |
-
- The thing should
- come up automatically in you inbox as soon as you connect it to the network |
-
- Picture MISSING |
- |
- You can now change
- the name of the thing if you want to and add the thing. |
-
- Picture MISSING <ADD AS THING> - |
- |
- Optional: Select in
- your PAPER UI inbox the add blue add icon (+) Search for the thing
- manually using the Samsung TV Binding |
-
- <(+)> |
- |
- Switch to -Configuration --Things tab and check
- whether the now thing is available. The green icon
- online next to the name is indicating that openHAB2 is connected to the thing
- and information can be exchanged |
-
- Picture MISSING |
-
- The thing should
- come up automatically in you inbox as soon as you connect it to the network |
-
- <(+)> |
-
- You can now change
- the name of the thing if you want to and add the thing. |
-
- <ADD AS THING> - |
-
- Optional: Select in
- your PAPER UI inbox the add blue add icon (+) Search for the thing
- manually using the Samsung TV Binding |
-
- <(+)> |
-
- Switch to -Configuration --Things tab and check
- whether the now thing is available. The green icon
- online next to the name is indicating that openHAB2 is connected to the thing
- and information can be exchanged |
-
- |
-
NOTE: Make sure the Raspbian does have online access
-pages.
- Select in your PAPER
- UI inbox the add blue add icon (+) |
-
- <(+)> |
-
- Select the Binding <YahooWeather Binding> |
-
- |
-
- Select the thing <Weather Information> |
-
- |
-
- Now you have to
- configure the thing In this case you
- have to enter the WOEID which is a 32-bit reference identifier of the
- location you want to see the weather information for. You can look up the
- WOEID on e.g. In this case we
- choose Berlin WOEID: 638242 More information on
- WOEID on: https://en.wikipedia.org/wiki/WOEID |
-
- 638242 |
-
- Then just add the
- thing by clicking on the blue check icon |
-
- <(+)> |
-
- Switch to -Configuration --Things tab and check
- whether the now thing is available. The green icon
- online next to the name is indicating that openHAB2 is connected to the thing
- and information can be exchanged |
-
- |
-
NOTE: first you have to connect the Z-Wave
-controller as a thing. After this you will use HABmin to further include things
-into the Z-Wave network. These things should show up automatically in the inbox
-of PAPER UI.
- Select in your PAPER
- UI inbox the add blue add icon (+) |
-
- |
-
- Select the Binding <Z-Wave Binding> |
-
- |
-
- Select the thing <Z-Wave Serial Controller> |
-
- |
-
- Now you have to
- configure the thing In this case you
- have to enter the serial Port of the Z-Wave controller The standard port
- where the UBS-Z-Wave controller should come up it: /dev/ttyACM0 - |
-
- /dev/ttyACM0 |
-
- Then just add the
- thing by clicking on the blue check icon |
-
- <(+)> |
-
- Switch to -Configuration --Things tab and check
- whether the now thing is available. The green icon
- online next to the name is indicating that openHAB2 is connected to the thing
- and information can be exchanged |
-
- |
-
To include
-further devices into your Z-Wave network and make the available as openHAB2
-things you have to use the HABmin inclusion functionality.
Please also
-consult the online documentation for general information about Z-Wave : https://github.com/openhab/org.openhab.ui.habmin/wiki/ZWave-Device-Installation
- Start HABmin Direct URL: http://xxx.xxx.xxx.xxx:8080/habmin/index.html#/home The select the
- Things tab -Configuration --Things HABmin will show you
- all the things which are available in PAPER UI as well |
-
- |
-
- To start the
- inclusion in HABmin you have to select the add thing icon of HABmin (magnifying
- glass) |
-
- |
-
- Then select the
- Z-Wave binding |
-
- |
-
- This now is
- triggering the inclusion mode of your Z-Wave controller |
-
- |
-
- Now you have to put
- your Z-Wave devices in inclusion mode to be detected for online detection (applicable when
- using UZB Z-Wave PLUS USB stick by Z-Wave.Me as a Z-Wave controller |
-
- Please refer to the Z-Wave
- devices manual how to put them in inclusion mode |
-
- Optional: Using the Aeotec
- by Aeon Labs Z-Stick Gen5 which is allowing for offline inclusion Since this Z-Wave
- controller stick is allowing for offline inclusion, you have to unplug the
- stick before you start the inclusion on HABmin and use the inclusion button
- on the stick to start the inclusion mode inclusion mode of your Z-Wave
- controller The plug in the
- stick again do the HABmin inclusion. You do not have to put your Z-Wave
- devices again in inclusion mode. |
-
- Please refer to the Aeotec by Aeon Labs Z-Stick Gen5
- documentation for further details |
-
- And when a device is
- found it will be listed Just select the
- <Add> button to include this device as a thing for openHAB2 NOTE: some devices
- may come up as “unknown device”.
- You can still add the device and “cure” the information later. The normal reason
- for this is that the device was not able to finish the communication with
- HABmin during the inclusion process This might be very
- likely for battery powered devices since the will go to sleep mode after a
- certain amount of time. To cure this you just have to manually wake up the
- device (see device manual) multiple times (up to 10 times) before the
- communication is completed and the device is recognized as a proper thing in
- HABmin ATTENTION: Using the
- Aeotec by Aeon Labs Z-Stick Gen5
- almost every battery powered item will come up as “unknown device” since in the timespan you include the battery
- device to the stick and you do the HABmin inclusion after you plugged the
- stick back in will be to long an most of the devices will go back to sleep.
- You might prevent this by manually waking up the device again just seconds
- before you start the inclusion on HABmin. The other reason is
- that the device is not supported by the openHAB2 Z-Wave binding. You can
- check the supported devices at: http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list |
-
- |
-
- The newly added
- thing should now be visible in the HABmin GUI things tab Now you can switch
- to the PAPER UI and find the new things in the inbox or check the new things
- in the things tab |
-
- |
-
http://www.cd-jackson.com/index.php/openhab/habmin/10-habmin-zwave-binding-initialisation
Before we
-start please read first the concept of Things, Channels, Items and Links which is
-directly tanken from the openHAB2 User Manual page http://docs.openhab.org/concepts/index.html#things-channels-items-and-links
Things are
-the entities that can be physically added to a system and which can potentially
-provide many functionalities at once. It is important to note that things do
-not have to be devices, but they can also represent a web service or any other
-manageable source of information and functionality. Things provide their
-functionality through a set of Channels. Channels are “passive” and can be
-regarded as a declaration of a Thing, what it can offer. It is up to the
-individual setup, which of the Channels are actively used through Items (see
-below).
Items
-represent (fine-grained) functionality that is used by applications - as user
-interfaces or automation logic. Items have a state and they can receive
-commands.
The glue
-between Things and Items are Links. Links are associations between exactly one
-Thing Channel and one Item. If a Channel is linked to an Item, it is “enabled”,
-which means that the functionality that the Item represents is handled through
-the given Channel. Channels can be linked to multiple Items and Items can be linked
-to multiple Channels.
To
-illustrate these concepts, take a two-channel actuator that controls two
-lights:
The
-actuator is the Thing. This might be installed in the electrical cabinet, it
-has a physical address and needs to be setup and configured in order to be
-used. The user is instead interested in the two lights, which are located at
-different locations in his home. These lights are the desired functionality,
-thus the Items and they are linked to the Channels of the actuator. A Link can
-be regarded like a physical wire in this example.
The basic
-process of in PAPER UI is explained on: http://docs.openhab.org/tutorials/beginner/configuration.html
- Switch to -Configuration --Things and select the
- KeyFob_Gen5 thing |
-
- |
-
- A list of all the
- available channels of the thing will be shown |
-
- |
-
- Now click on the
- blue icon in front of the channel number to link this channel to an item |
-
- |
-
- A link channel window
- will come up Select the pull down
- option for the item |
-
- |
-
- The next window
- coming up will allow you to select already existing items or: In our case <+Create
- new item…> |
-
- |
-
- The next window will
- allow you to configure the item you want to link to the thing channel You can also change
- the name of the item if you are planning to run with your own naming
- convention Then select
- <LINK> to create your new item |
-
- |
-
- Now the blue icon to
- the left of the name will change (white dot in the center) By clicking on this
- icon the channel will expand and show you the linked items to this cannel |
-
- |
-
- You can now find the
- new item in -Configuration --Items |
-
- |
-
- Thing |
-
- Channel |
-
- Item |
-
- KeyFob_Gen5 - |
-
- zwave:device:39e18a8c:node9:scene_number |
-
- KeyFob_Gen5_SceneNumber - |
-
- Weather Information - |
-
- yahooweather:weather:c5d26906:temperature - |
-
- Yahoo_Temperature - |
-
- Weather Information - |
-
- yahooweather:weather:c5d26906:humidity - |
-
- Yahoo_Humidity - |
-
- Yamaha Receiver RX-V581 - |
-
- yamahareceiver:yamahaAV:9ab0c000_f668_11de_9976_00a0dedc57ff:power |
-
- YamahaReceiverRXV581_Power - |
-
- Yamaha Receiver RX-V581 - |
-
- yamahareceiver:yamahaAV:9ab0c000_f668_11de_9976_00a0dedc57ff:volume |
-
- YamahaReceiverRXV581_Volume - |
-
- Yamaha Receiver RX-V581 - |
-
- yamahareceiver:yamahaAV:9ab0c000_f668_11de_9976_00a0dedc57ff:mute |
-
- YamahaReceiverRXV581_Mute - |
-
- Z-Wave Node 2:
- FGS223 Double Switch 2 |
-
- zwave:device:39e18a8c:node2:meter_watts |
-
- DoubbleSwitch01_LeistungGesamt - |
-
- Z-Wave Node 2:
- FGS223 Double Switch 2 |
-
- zwave:device:39e18a8c:node2:switch_binary1 |
-
- DoubbleSwitch01_Relais1 - |
-
- Z-Wave Node 3:
- MSP-3-1-X1 Z-Wave Plus Micro Smart Plug ON/OFF |
-
- zwave:device:39e18a8c:node3:switch_binary |
-
- SchuKo01 - |
-
- Z-Wave Node 3:
- MSP-3-1-X1 Z-Wave Plus Micro Smart Plug ON/OFF |
-
- zwave:device:39e18a8c:node3:meter_watts |
-
- SchuKo01_Leistung - |
-
- Z-Wave Node 6: ZW100 MultiSensor 6 - |
-
- zwave:device:39e18a8c:node6:sensor_relhumidity |
-
- MultiSens_Luftfeuchte |
-
- Z-Wave Node 6: ZW100 MultiSensor 6 - |
-
- zwave:device:39e18a8c:node6:sensor_temperature |
-
- MultiSens_Temperatur |
-
- Z-Wave Node 6: ZW100 MultiSensor 6 - |
-
- zwave:device:39e18a8c:node6:sensor_luminance |
-
- MultiSens_Helligkeit |
-
- HF-LPB100-ZJ200 - |
-
- wifiled:wifiled:F0FE6B314910:power |
-
- HFLPB100ZJ200_Power |
-
- HF-LPB100-ZJ200 - |
-
- wifiled:wifiled:F0FE6B314910:color |
-
- HFLPB100ZJ200_Color |
-
- HF-LPB100-ZJ200 - |
-
- wifiled:wifiled:F0FE6B314910:white |
-
- HFLPB100ZJ200_White |
-
- DUMMYTHING_SamsungTV |
-
- Data missing |
-
- DUMMYITEM_SamsungTV_Power |
-
Every User
-Interface on openHAB2 is providing its own style of dashboards to control your
-home automation project, display current item states and attribute values or
-even include online information like web pages.
In our
-configuration of openHAB2 you will have the choice of 4 different user
-interfaces which can be selected
- Start openHAB2 start
- screen Direct URL: http://xxx.xxx.xxx.xxx:8080/ start/index Here you will now
- find the GUIs: <BASIC UI> (requires setup
- using textual *.sitemap files) <PAPER UI> (which were already
- using to configure openHAB2) <HABPANEL> (this UI is all
- about creating a dashboard) <HABMIN> (which we already
- used for inclusion of Z-Wave devices) |
-
- |
-
- You can also install
- more UIs in PAPER UI Add-ons
- section: http://xxx.xxx.xxx.xxx:8080/paperui/index.html#/extensions -on the tab <USER INTERFACES> |
-
- |
-
Since this
-is a beginner’s tutorial where I am trying to get things done using as less
-textual coding as possible, I will not go into the details of creating a
-dashboard for the BASIC UI since it requires the file based approach.
Tough you
-might find that some specific requirements to a dashboard can only be solved
-creating this textual sitemap configuration and using BASIC UI for displaying
-your dashboard.
You can
-find more information in how to setup and use BASIC UI on:
http://docs.openhab.org/configuration/sitemaps.html
The simplest
-way of creating an interactive user interface is in just clicking on the <CONTROL>
-tab to PAPTER UI. Now you should see all the items grouped by the things they
-belong to.
You can
-also easily create different tabs of things by adding <Location>
-information to the thing in the thing tab:
NOTE: I had
-issues in updating a few things, so it will be good to it while creating the
-things
Now you
-will have Control panel giving you various tabs with items grouped by their
-things
Tab <OUTSIDE>
Standard
-tab <OTHER>
The HABPANEL
-UI is all about creation a dashboard for your home automation project.
-Therefore you can not to do all the configuration work for openHAB2 in this UI.
-The configuration hast to be done in the other UIs
- Start HABPANEL http://xxx.xxx.xxx.xxx:8080/HABPANEL/index.html#/ It will come up a
- complete blank panel asking you to start configuration |
-
- |
- |
- You now can choose
- to <Add new
- dashboard> |
-
- |
- |
- Create switches to control the Z-Wave switches Details MISSING |
-
- Picture MISSING |
-
You can
-find the standard documentation on:
http://docs.openhab.org/addons/uis/HABPANEL/readme.html
And once
-again, since this is a beginner’s tutorial I can’t go into all the
-possibilities of how to create a dashboard in openHAB2. So I will not go into
-creating a dashboard in HABMIN. But be aware the HABMIN is providing a powerful
-graphical way of creating dashboards you might want to have a look at.
You can
-find the standard documentation on:
http://docs.openhab.org/addons/uis/habmin/readme.html
Since rules
-can’t be configured using the PAPER UI (stable version) you now have to go to
-the text files for now. For this part we will now use the Eclipse Smart Home Designer since it
-creates at least some syntax highlighting.
REMARK: You
-might find already some functionality about configuration of rules in the PAPER
-UI snapshot versions so there will be some changes in the way of doing rules
-more easily in the future. Also HABmin is providing some kind of graphical rule
-engine.
- Start Eclipse Smart Home Designer on
- your PC Make sure you have
- mapped the Raspbian samba drive to your PC and Start Eclipse Smart Home Designer is set to the
- right folder in this samba drive (see Chapter 7: Installation of Eclipse
- Smart Home Designer -: part launching first time) You should now the
- augmented icons for the different folders If you check the
- Rules folder you will only find a readme.txt file |
-
- |
-
- You need to create a
- file with the ending .rules to store your rules there. The fastest way of
- doing it is using the basic file management functionality of Eclipse Smart Home Designer Right click on the readme.txt
- file and select copy |
-
- |
-
- Then right click
- again and select Paste |
-
- |
-
- A new window will
- ask you to enter a new file name. |
-
- |
-
- Change the file name
- to myfirstrule.rules an press <OK> |
-
- myfirstrule.rules -<OK> |
-
- A new file will
- appear in the Rules folder showing the rule icon |
-
- |
-
- Now double click on
- the file to open it and delete the old content to have a plain rule rile And save the rule
- file again |
-
- <ctrl+a> -<del> -<ctrlss> - |
-
I will try
-to give some basic rule examples to start with but you have to be aware:
DISCLAIMER:
I am no
-coding expert at all and writing rules is still the most difficult part in my
-home automation project (finding the right commands, the right syntax and so on),
-so you might be better off using to other tutorials.
For the
-standard rules documentation incl. the rule syntax please refer to the online
-documentation:
http://docs.openhab.org/configuration/rules-dsl.html
You can
-also find some rules samples on:
https://github.com/openhab/openhab1-addons/wiki/Samples-Rules
And maybe
-some coding experts in the community will find the time to create a kind of an
-openHAB2 compendium to make it easier the non-experts to do rules.
REMAKR:
-Yes, I know there are plenty of online documentation sites available, but the
-problem for me was the “plenty” part of it since I always had to go through
-plenty different websites to finally get the syntax right and make the rule do,
-what I wanted it to do.
We will use
-the:
KeyFob_Gen5
to control
-some items linked to
Z-Wave Node
-2: FGS223 Double Switch 2
Z-Wave Node
-3: MSP-3-1-X1 Z-Wave Plus Micro Smart Plug ON/OFF
Yamaha
-Receiver RX-V581
DUMMYTHING_SamsungTV
HF-LPB100-ZJ200
-(WiFi LED)
- Just copy the code
- to the right directly into your myfirstrule.rules file |
-
- rule "KeyFob" when Item
- ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber received update then //Scene number 1 - Button 1 (up left) pressed
- short if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 1) { //Swithing ON the items
- DoubbleSwitch01_Relais1 and SchuKo01 sendCommand
- (DoubbleSwitch01_Relais1, ON) sendCommand
- (SchuKo01, ON) } //Scene number 2 - Button 1 (up left) pressed
- long if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 2) { //Swithing OFF the items
- DoubbleSwitch01_Relais1 and SchuKo01 sendCommand
- (DoubbleSwitch01_Relais1, OFF) sendCommand
- (SchuKo01, OFF) } //Scene number 3 - Button 2 (up left) pressed
- short if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 3) { //Switching ON the items
- YamahaReceiverRXV581_Power and DUMMYITEM_SamsungTV_Power sendCommand
- (YamahaReceiverRXV581_Power, ON) sendCommand
- (DUMMYITEM_SamsungTV_Power, ON) } //Scene number 4 - Button 2 (up left) pressed
- long if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 4) { //Switching OFF the items
- YamahaReceiverRXV581_Power and DUMMYITEM_SamsungTV_Power sendCommand
- (YamahaReceiverRXV581_Power, OFF) sendCommand
- (DUMMYITEM_SamsungTV_Power, OFF) } //Scene number 5 - Button 3 (up left) pressed
- short if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 5) { //Switching ON the item HFLPB100ZJ200_Power sendCommand
- (HFLPB100ZJ200_Power, ON) } //Scene number 6 - Button 3 (up left) pressed
- long if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 6) { //Switching OFF the item HFLPB100ZJ200_Power sendCommand
- (HFLPB100ZJ200_Power, OFF) } //Scene number 7 - Button 4 (up left) pressed
- short if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 7) { //NOTE: since setting the color will influence
- the dimming of the WHITE // so
- if you want to set both values at the same time, always // set
- color first and than //
- set the dimming of WHITE //Changing the color of the item
- HFLPB100ZJ200_Color to RED //openHAB2 is requesting the color to be set
- in HSL code (Hue, Saturation, Lightness" or in openHAB terms
- "HSBType" (Hue, Saturation, Brightness) //To convert RGB code to HSL code just go to
- e.g. http://www.rapidtables.com/convert/color/rgb-to-hsl.htm sendCommand
- (HFLPB100ZJ200_Color,(new HSBType("0,100,50"))) //Dimming the item HFLPB100ZJ200_White to 50% sendCommand
- (HFLPB100ZJ200_White, 50) } //Scene number 8 - Button 4 (up left) pressed
- long if (ZWaveNode9ZW0884ButtonKeyfobGen5_SceneNumber.state
- == 8) { //NOTE: since setting the color will influence
- the dimming of the WHITE // so
- if you want to set both values at the same time, always // set
- color first and than //
- set the dimming of WHITE //Changing the color of the item
- HFLPB100ZJ200_Color to GREEN //openHAB2 is requesting the color to be set
- in HSL code (Hue, Saturation, Lightness" or in openHAB terms "HSBType"
- (Hue, Saturation, Brightness) //To convert RGB code to HSL code just go to
- e.g. http://www.rapidtables.com/convert/color/rgb-to-hsl.htm sendCommand
- (HFLPB100ZJ200_Color,(new HSBType("120,100,50"))) //Dimming the item
- HFLPB100ZJ200_White to 100% sendCommand (HFLPB100ZJ200_White, 100) } end - |
-
- Save the rule file. The rule should now
- be available |
-
- <crtl+s> - |
-
Test it by
-clicking through the buttons (pressed long and pressed short)
NOTE: When
-working with rules for the WiFi LED be aware, that the controller is storing
-the setting when you send the OFF command. So if you want you switch on the LED
-with a different color you might be better off in setting the color to black
-before switching off you if you switch on again the LED starts black and not in
-the old color.
The
-standard way of debugging a rule would be to use a logfile.
For simple
-problems you might also be able to visualize the variables online by creation
-item with the same type and posting the value of the variable inside the rule
- If you are using a
- variable in your rule initially set to |
-
- var Number loop_counter = 0 - |
-
- Create the item Counter_Item with the same type: In PAPER UI switch
- to -Configuration --Items And press the blue
- icon (+) Enter Name Counter_Item Select Typ <Number> And confirm the
- creation by clicking again on the blue icon (+) |
-
- Counter_Item -<Number> -<(+)> |
-
- Result: A new item called Counter_Item should be visible in
- the item tab NOTE: Since this
- Item is not linked to a thing it will not show up in the <Control> Tab to PAPER UI. |
-
- |
-
- Now enter a line
- into your rule to post the value of the var to the Counter_Item |
-
- postUpdate(Counter_Item,
- loop_counter) |
-
- To show the value on
- a dashboard you have to use e.g. HABPANEL Start HABPANEL http://xxx.xxx.xxx.xxx:8080/HABPANEL/index.html#/ and select <Edit dashboards> in the upper right corner then <Add new
- dashboard> enter the name Debug and <OK> |
-
- Debug -<OK> |
-
- Now you should have
- the dashboard <Debug> available in your HABPANEL Select the dashboard |
-
- |
-
- If you now hover
- with your mouse right of the dashboard name the <Edit Debug>
- icon will appear. Click on it to enter
- the edit mode. |
-
- <Edit Debug> |
-
- The edit mode is
- indicated by the two icons <Save>
- and <Run> |
-
- |
-
- Now you have to <+ Add Widget> You have to use the <Dummy> widget to display numbers |
-
- <+ Add Widget> -<Dummy> |
-
- The new Widget will
- appear on your dashboard NOTE: you can easily
- change the size of the widget by dragging the lower right corner. I will snap
- to a predefined grid |
-
- |
-
- To edit the widget
- you have to click on the 3 dots in the upper right corner of the widget and
- select <Edit> |
-
- <.> -<Edit> |
-
- In this window you
- can change the name to Counter
- Item Debug You
- have to select the openHAB
- item <Counter_Item> to link it to this widget. Optional
- you can change font size, add a unit and format or add some icons. Now <Save> the widget. |
-
- Counter Item Debug <Counter_Item> <Save> |
-
- Now <Save> the dashboard and <Run> it. |
-
- <Save> -<Run> |
-
- You will now see the
- value of your rule variable displayed dynamically on your HABPANEL dashboard |
-
- |
-
This switch
-might come handy if you are debugging your rule while physically having no
-access to the switch. Standing up and running to the switch might do you some
-good when it comes down to fitness but surely is disturbing while developing
-your rule
- Create the item Dummy_Switch with the same type: In PAPER UI switch
- to -Configuration --Items And press the blue
- icon (+) Enter Name
- Dummy_Switch Select Typ <Switch> And confirm the
- creation by clicking again on the blue icon (+) |
-
- Dummy_Switch -<Switch> -<(+)> |
-
- Result: A new item called Dummy_Switch should be visible in
- the item tab NOTE: Since this
- Item is not linked to a thing it will not show up in the <Control> Tab to PAPER UI. |
-
- |
-
- Now replace the item
- name of the physical_switch with the name of the Dummy_Switch |
-
- physical_switch will become Dummy_Switch |
-
- To use the Dummy_Switch on a dashboard you have to use
- e.g. HABPANEL Start HABPANEL http://xxx.xxx.xxx.xxx:8080/HABPANEL/index.html#/ and select <Edit dashboards> in the upper right corner then <Add new
- dashboard> enter the name Debug and <OK> |
-
- Debug -<OK> |
-
- Now you should have
- the dashboard <Debug> available in your HABPANEL Select the dashboard |
-
- |
-
- If you now hover
- with your mouse right of the dashboard name the <Edit Debug>
- icon will appear. Click on it to enter
- the edit mode. |
-
- <Edit Debug> |
-
- The edit mode is
- indicated by the two icons <Save>
- and <Run> |
-
- |
-
- Now you have to <+ Add Widget> You have to use the <Button> widget to display numbers |
-
- <+ Add Widget> -<Button> |
-
- The new Widget will
- appear on your dashboard NOTE: you can easily
- change the size of the widget by dragging the lower right corner. I will snap
- to a predefined grid |
-
- |
-
- To edit the widget
- you have to click on the 3 dots in the upper right corner of the widget and
- select <Edit> |
-
- <.> -<Edit> |
-
- In this window you
- can change the name to Dummy
- Switch ON/OFF You have to select
- the openHAB item <Dummy_Switch> to link it to this widget. Optional you can select
- display options and icons Now <Save> the widget. |
-
- Dummy Switch ON/OFF <Dummy_Switch> <Save> |
-
- Now <Save> the dashboard and <Run> it. |
-
- <Save> -<Run> |
-
- You will now see the
- Dummy_Switch Item be visualized by the Dummy Switch ON/OFF widget. The initial state
- should be <Inactive> Just click on the
- widget to change the state to <Active> |
-
- |
-
The rule is
-designed to switch on/off the Z-Wave Node 2: FGS223 Double Switch 2 based on
-the illumination measured by the Z-Wave Node 6: ZW100 MultiSensor 6
The trigger
-value is set to 10 LUX
To prevent
-von switching on/off if the illumination is around 10 lumen and e.g. just a
-cloud is casting a temporarily shadow, there is a counter included which is
-measuring multiple times the illumination and only allows to triggering the
-switch if there reading is consistently (10 times) above or below the trigger
-value.
NOTE: Make
-sure you have create the item Counter_Item since it’s used in the rule (see:
-part “Creating an item the see the value of a variable of a rule online” in
-this chapter).
REMARK:
-This was done as some kind of coding and configuring HABPANEL exercise. You
-might get the same result in just checking the reading in a less frequent
-period, forget about the counter and just trigger the switch when the
-illumination reading is above or below the trigger value.
You can
-also use this Counter_Item to display some tendency whether your light is about
-to switch ON/OFF depending on the value of the Counter_Item on your dashboard.
-So if you play a little with the “knob” widget in HABPANEL it might look like
-this:
Then you add some other readings
-of your multissor, the wattage reading and trigger of your switch, a clock
-widget and you have a complete dashboard of your real weather and let it
-trigger your outside ligth.
-
You can
-just add these lines at the bottom of your existing rule file or create a new
-file in the same folder
- var Number loop_counter = 0 rule "check_illumination" // using the loop_counter to ensure that it is // 10 times in a row darker/lighter before
- triggering switch when // every x seconds "0/x" the value
- is checked // 0/30 means every 30 sec the value is
- checked Time cron "0/30 * * ? * * *" then // reset loop_counter if required (counter
- outside -5 +5 range) if (loop_counter >= -5 && loop_counter <= 5){ // <= 10 is defining the LUX trigger value
- when ligth is swiched ON/OFF if (MultiSens_Helligkeit.state
- <= 10) { if (loop_counter > -5) { loop_counter = loop_counter -1 postUpdate(Counter_Item,
- loop_counter) } else { if (DoubbleSwitch01_Relais1.state
- == OFF) sendCommand
- (DoubbleSwitch01_Relais1, ON) } } else if (loop_counter < 5) { loop_counter =loop_counter +1 postUpdate(Counter_Item,
- loop_counter) } else { if (DoubbleSwitch01_Relais1.state
- == ON) sendCommand
- (DoubbleSwitch01_Relais1, OFF) } } else { loop_counter = 0 } end |
-
And save
-the file
Markdown
-for GitHub:
https://guides.github.com/features/mastering-markdown/
https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
https://help.github.com/articles/working-with-advanced-formatting/
https://help.github.com/articles/basic-writing-and-formatting-syntax/