Removed the never completed advanced tutorial
Signed-off-by: Rich Koshak <rlkoshak@gmail.com>pull/1300/head
|
@ -1,56 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Adding a new Thing
|
||||
|
||||
## Inserting the device in the z-wave network
|
||||
The first action is to insert the new device in the z-wave netowrk. This is to be done using the controller.
|
||||
|
||||
openHAB has nothing to do at this stage. All the operations are managed from the controller itself.
|
||||
|
||||
## Adding the new Thing
|
||||
|
||||
A few seconds after your device has been inserted inside the network using the controller, a new Thing appears in the inbox.
|
||||
|
||||
As you can see in the following picture, a small green label with the number of new things appears at the top right of the HABmin 2 screen.
|
||||
|
||||

|
||||
|
||||
If you click on it, the inbox pops up with the list of the newly detected Things.
|
||||
|
||||

|
||||
|
||||
As you can see in the previous screenshot, HABmin is able to find out the model of the device that the Things represents. This allows HABmin to automatically setup the corresponding Items.
|
||||
|
||||
The "Z-Wave Node 2" mention gives the openHAB internal number of the ZWave node, in our case 2.
|
||||
|
||||
|
||||
> HABmin is using an internal database to fetch configuration data corresponding to the device.
|
||||
>
|
||||
> If this device is not in the database, then no device model will be displayed but a code identifying the device.
|
||||
>
|
||||
> 
|
||||
>
|
||||
> In this example, the Thing "Z-wave Node 3" has not been found in the ZWave database and the Thing "Z-wave Node 4" has been successfully identified.
|
||||
>
|
||||
> The section *The ZWave Database* details more the database and how you can send information about a new device.
|
||||
>
|
||||
> If there is no device model nor code displayed, this means that HABmin is still waiting for information about the device. This occurs with battery powered devices, as HABmin has to wait for the next wakeup time of the device to obtain the needed information.
|
||||
|
||||
|
||||
To be able to finalize configuration of the *Thing* and the linked *Items*, you have to click on "add" just below the name of the *Thing*.
|
||||
|
||||
You can then find the Thing in the list of Things, by clicking on *Configuration*, *Thing Configuration* in the right menu.
|
||||
|
||||

|
||||
|
||||
|
||||
## Configuring the Thing
|
||||
|
||||
Configuring a newly imported Thing or changing the configuration of an older one is made through the *Configuration, Thing Configuration* menu.
|
||||
|
||||
This is described in the next chapter.
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Configuring a Thing
|
||||
|
||||
You can access to the Thing configuration by clicking on *Configuration*, *Thing Configuration* in the right menu.
|
||||
|
||||
The Thing configuration display has 6 panels.
|
||||
|
||||
## Configuration panel overview
|
||||
|
||||

|
||||
|
||||
This panel contains the following information:
|
||||
* The label giving you the model name of the *Thing*, read-only,
|
||||
* The overview, giving a description of the *Thing*, coming from the ZWave database, read-only,
|
||||
* A set of controls, one per actionable *item* that has been created. You can play with the control in order to check that your device is correctly working. The name and the identifier of the *item* are read-only.
|
||||
|
||||
>
|
||||
The name of the item can be modified in the channels panel.
|
||||
|
||||
## The properties panel
|
||||
|
||||

|
||||
|
||||
The properties panel presents the Label of the Thing.
|
||||
|
||||
You can change the label making it more informative.
|
||||
|
||||
The change is saved as soon as you select the *Save* button at the top of the windows.
|
||||
|
||||
## Configuration parameters panel
|
||||
|
||||
This panel presents the configuration parameters of the device
|
||||
|
||||
The content of this panel depends on the device model.
|
||||
|
||||
The use of these parameters are described in the user's manual of the device itself.
|
||||
|
||||

|
||||
|
||||
When a parameter value is changed, HABmin send it to the device. A *pending* message is displayed at this time.
|
||||
|
||||

|
||||
|
||||
|
||||
## Association group panel
|
||||
|
||||
<<<< TO BE COMPLETED >>>>
|
||||
|
||||
## Device configuration panel
|
||||
|
||||
<<<< TO BE COMPLETED >>>>
|
||||
|
||||
|
||||
## Channels panel
|
||||
|
||||
This panel is the key panel to configure the *Items*, as the channels are the link between *Things* and *Items*.
|
||||
|
||||

|
||||
|
||||
Basically, HABmin will create one *Item* per channel.
|
||||
|
||||
Each channel follows the same following structure:
|
||||
|
||||

|
||||
|
||||
Five buttons allow different actions:
|
||||
|
||||

|
||||
|
||||
HABmin 2 creates and link automatically the needed *items* when a *thing* is created, so creating, deleting and linking action are not often used.
|
||||
|
||||
To personalise item information, the *edit linked data* button opens the following window:
|
||||
|
||||

|
||||
|
||||
This window allows to:
|
||||
|
||||
* change the label, making it more informative,
|
||||
* modify the item type if needed,
|
||||
* modify the category if needed.
|
||||
|
||||
The modification are saved as soon as you select the *Save* button.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,126 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Connecting to the Z-Wave controller
|
||||
|
||||
## What is the controller ?
|
||||
|
||||
The Z-wave controller is the masterpiece of the Z-Wave network.
|
||||
|
||||
The Z-Wave bindings relies on it to dialog with the Z-Wave devices. Adding it is made from the __HABmin__.
|
||||
|
||||
Working with the Z-Wave devices will be done in __HABmin__.
|
||||
|
||||
|
||||
## Adding the Thing
|
||||
|
||||
* From openHAB welcome screen, choose the __HABmin__ tile.
|
||||
* On the left menu, click on __Configuration__ and __Things configuration__.
|
||||
* The controller must be added manually. Click on the __+__ sign, at the top of the screen.
|
||||
|
||||

|
||||
|
||||
* In the following screen, choose __Z-Wave Binding__ :
|
||||
|
||||

|
||||
|
||||
* You can then select: __Z-Wave Serial Controller__ :
|
||||
|
||||

|
||||
|
||||
* In the following screen, you can change the __label__ value to the name you want to give to the controller.
|
||||
|
||||

|
||||
|
||||
* Click on save, and you are ready to configure it.
|
||||
|
||||
> When click on __Save__, nothing changes on the screen, but the log file confirms that a next thing has been defined.
|
||||
> The log file looks like:
|
||||
|
||||
```
|
||||
2016-05-09 18:53:33.987 [INFO ] [smarthome.event.ThingAddedEvent ] - Thing 'zwave:serial_zstick:154966faddf' has been added.
|
||||
2016-05-09 18:53:33.990 [ERROR] [ing.zwave.handler.ZWaveSerialHandler] - ZWave port is not set.
|
||||
2016-05-09 18:53:33.990 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from UNINITIALIZED to INITIALIZING
|
||||
```
|
||||
|
||||
## Configuring it
|
||||
|
||||
* On the left menu, click again on __Things configuration__, the controller is now in the list :
|
||||
|
||||

|
||||
|
||||
* Click on the Controller
|
||||
* The following screen allows you to configure the Thing.
|
||||
|
||||

|
||||
|
||||
## Configuring the port
|
||||
---
|
||||
*This section is so far centred on macOS. It must be modified in order to cover Linux and Windows.*
|
||||
---
|
||||
|
||||
### Finding the port name
|
||||
|
||||
* Open the terminal window
|
||||
* Type the following command `ls \dev\tty*`
|
||||
* Depending on your USB device, the name can look like `/dev/tty.SLAB_USBtoUART` or `/dev/tty.usbmodem14111`
|
||||
|
||||
The port name that is displayed is the parameter needed
|
||||
|
||||
### Setting the port name
|
||||
|
||||
* Click on Port configuration
|
||||
* Fill the serial port with the port name
|
||||
|
||||

|
||||
|
||||
* Click on save
|
||||
* After a few seconds, the thing icon becomes greens
|
||||
|
||||

|
||||
|
||||
> If you made any kind of mistake in the port configuration, the icon will become red.
|
||||
> The log file will contain this kind of lines:
|
||||
>
|
||||
```
|
||||
2016-05-09 19:14:27.162 [INFO ] [ing.zwave.handler.ZWaveSerialHandler] - Stopped ZWave serial handler
|
||||
2016-05-09 19:14:27.163 [INFO ] [ing.zwave.handler.ZWaveSerialHandler] - Connecting to serial port 'usbmodem14111'
|
||||
2016-05-09 19:14:27.163 [INFO ] [smarthome.event.ThingUpdatedEvent ] - Thing 'zwave:serial_zstick:154966faddf' has been updated.
|
||||
2016-05-09 19:14:27.165 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from OFFLINE (COMMUNICATION_ERROR): Serial Error: Port tty.usbmodem14111 does not exist to OFFLINE
|
||||
2016-05-09 19:14:27.166 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from OFFLINE to OFFLINE (COMMUNICATION_ERROR): Serial Error: Port usbmodem14111 does not exist
|
||||
```
|
||||
|
||||
### Looking to the logs
|
||||
|
||||
The console will display messages related to the binding initialisation.`
|
||||
|
||||
> A "clean" startup looks this way in the log file:
|
||||
>
|
||||
```
|
||||
2016-05-09 21:29:33.195 [INFO ] [arthome.ui.paper.internal.PaperUIApp] - Started Paper UI at /ui
|
||||
2016-05-09 21:29:33.252 [INFO ] [.dashboard.internal.DashboardService] - Started dashboard at /start
|
||||
2016-05-09 21:29:33.567 [INFO ] [ing.zwave.handler.ZWaveSerialHandler] - Serial port is initialized
|
||||
2016-05-09 21:29:33.626 [INFO ] [ui.habmin.internal.servlet.HABminApp] - Started HABmin servlet at /habmin
|
||||
2016-05-09 21:29:33.478 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from UNINITIALIZED to INITIALIZING
|
||||
2016-05-09 21:29:33.479 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from INITIALIZING to OFFLINE
|
||||
2016-05-09 21:29:33.490 [INFO ] [ing.zwave.handler.ZWaveSerialHandler] - Connecting to serial port '/dev/tty.usbmodem14111'
|
||||
2016-05-09 21:29:33.682 [INFO ] [ve.internal.protocol.ZWaveController] - Starting ZWave controller
|
||||
2016-05-09 21:29:33.683 [INFO ] [ve.internal.protocol.ZWaveController] - ZWave timeout is set to 5000ms. Soft reset is false.
|
||||
2016-05-09 21:29:33.802 [INFO ] [basic.internal.servlet.WebAppServlet] - Started Basic UI at /basicui/app
|
||||
2016-05-09 21:29:31.896 [INFO ] [smarthome.event.ThingAddedEvent ] - Thing 'zwave:serial_zstick:154966faddf' has been added.
|
||||
2016-05-09 21:29:33.823 [INFO ] [assic.internal.servlet.WebAppServlet] - Started Classic UI at /classicui/app
|
||||
2016-05-09 21:29:36.875 [INFO ] [age.SerialApiGetInitDataMessageClass] - NODE 1: Node found
|
||||
2016-05-09 21:29:36.876 [INFO ] [age.SerialApiGetInitDataMessageClass] - ZWave Controller using Controller API
|
||||
2016-05-09 21:29:36.876 [INFO ] [age.SerialApiGetInitDataMessageClass] - ZWave Controller is Primary Controller
|
||||
2016-05-09 21:29:36.876 [INFO ] [age.SerialApiGetInitDataMessageClass] - ------------Number of Nodes Found Registered to ZWave Controller------------
|
||||
2016-05-09 21:29:36.876 [INFO ] [age.SerialApiGetInitDataMessageClass] - # Nodes = 1
|
||||
2016-05-09 21:29:36.877 [INFO ] [age.SerialApiGetInitDataMessageClass] - ----------------------------------------------------------------------------
|
||||
2016-05-09 21:29:36.881 [INFO ] [me.event.ThingStatusInfoChangedEvent] - 'zwave:serial_zstick:154966faddf' changed from OFFLINE to ONLINE
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 103 KiB |
Before Width: | Height: | Size: 111 KiB |
Before Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 108 KiB |
Before Width: | Height: | Size: 117 KiB |
Before Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 81 KiB |
Before Width: | Height: | Size: 74 KiB |
Before Width: | Height: | Size: 82 KiB |
Before Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 60 KiB |
Before Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 56 KiB |
|
@ -1,30 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Overview
|
||||
|
||||
The goal of this part is to present a second level of use of openHAB 2 with a more complex binding: the z-wave binding.
|
||||
|
||||
This binding manages z-wave devices network. This network is a set of hardware devices that provides functionalities such as appliances, window shades, thermostats, and home lighting. This will allow us to learn how automatic discovery of things work.
|
||||
|
||||
This binding can be used with a different UI than the Paper UI, called HABmin 2.
|
||||
|
||||
The goal of HABmin 2 is to provide a modern, professional and portable user interface for openHAB, providing user functions, administrative functions and configuration utilities to aid setup.
|
||||
|
||||
HABmin is intended as a complete GUI for the openHAB Home Automation system but it is also built with Z-Wave specific functionalities. It is the reason why we will introduce HABmin there.
|
||||
|
||||
.
|
||||
|
||||
.
|
||||
|
||||
.
|
||||
|
||||
.
|
||||
|
||||
.
|
||||
|
||||
.
|
||||
|
|
@ -1,159 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Installing the extensions
|
||||
|
||||
Introduction
|
||||
==============
|
||||
|
||||
Setting up the Z-Wave protocol inside openHAB 2 requires two steps:
|
||||
- Z-Wave binding install
|
||||
- HABmin install
|
||||
|
||||
In this chapter:
|
||||
- I have chosen to download the latest night build, as HABmin 2 is in a beta phase,
|
||||
|
||||
|
||||
Z-Wave binding install
|
||||
======================
|
||||
|
||||
We install Z-Wave binding _before_ HABmin as HABmin relies on the first one.
|
||||
|
||||
Installing this binding is quite straightforward. It is to be done through the Paper UI of openHAB.
|
||||
|
||||
* Open your browser web at `http://localhost:8011`, you should see the following screen:
|
||||
|
||||

|
||||
|
||||
* Click on __Paper UI__ tile, you should see the following screen:
|
||||
|
||||

|
||||
|
||||
* In the left column, select __Extensions__. The list of the bindings appears.
|
||||
|
||||

|
||||
|
||||
* Scroll down to Z-Wave binding, click on __install__ (at the right).
|
||||
|
||||

|
||||
|
||||
* After some times, the Z-Wave binding is installed and the display has changed. The logo of the binding is now blue, and "uninstall" has replaced "install".
|
||||
|
||||

|
||||
|
||||
> After a reasonable wait, if the progress bar is still on the screen and nothing else has changed on the display, try to refresh the page.
|
||||
|
||||
|
||||
HABmin install
|
||||
======================
|
||||
|
||||
---
|
||||
|
||||
* This section is so far centred on macOS. It must be modified in order to cover Linux and Windows.*
|
||||
|
||||
|
||||
---
|
||||
|
||||
We install HABmin _after_ the Z-Wave binding as HABmin relies on the last one.
|
||||
|
||||
HABmin is not yet integrated to the Karaf architecture. So, we have to install it manually.
|
||||
|
||||
* Search for the latest build of HABmin 2 at the address [https://github.com/cdjackson/HABmin2/tree/master/output](https://github.com/cdjackson/HABmin2/tree/master/output)
|
||||
|
||||
* Click on the org.openhab.ui.habmin_2.0.0.SNAPSHOT-0.1.4.jar link, this screen appears:
|
||||
|
||||

|
||||
|
||||
* At the left on the screen __click on the RAW__ button. Other way of downloading HABmin2 will corrupt the software.
|
||||
|
||||

|
||||
|
||||
* The download finished, back to the terminal, at the openHAB> prompt:
|
||||
|
||||
```
|
||||
cal:openHAB admin$ ./start.sh
|
||||
Launching the openHAB runtime...
|
||||
|
||||
__ _____ ____
|
||||
____ ____ ___ ____ / / / / | / __ )
|
||||
/ __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __ |
|
||||
/ /_/ / /_/ / __/ / / / __ / ___ |/ /_/ /
|
||||
\____/ .___/\___/_/ /_/_/ /_/_/ |_/_____/
|
||||
/_/ 2.0.0-SNAPSHOT
|
||||
|
||||
Hit '<tab>' for a list of available commands
|
||||
and '[cmd] --help' for help on a specific command.
|
||||
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.
|
||||
|
||||
openhab>
|
||||
```
|
||||
|
||||
* stop openHAB by keyboarding logout and enter :
|
||||
```
|
||||
openhab> logout
|
||||
```
|
||||
|
||||
* A few seconds after, the terminal prompt is displayed :
|
||||
```
|
||||
openhab> logout
|
||||
cal:openHAB callas$
|
||||
```
|
||||
|
||||
* Move the HABmin software from the _download_ folder to the _addon_ folder
|
||||
```
|
||||
cal:openHAB callas$ mv ../Downloads/org.openhab.ui.habmin_2.0.0.SNAPSHOT-0.1.4.jar addons
|
||||
```
|
||||
|
||||
|
||||
> Time for a trick
|
||||
>
|
||||
> _org.openhab.ui.habmin 2.0.0.SNAPSHOT-0.1.4.jar_ can be a little difficult to type. Terminal allows us to use auto completion to avoid that :
|
||||
> just type the beginning, i.e.: `mv ../Downloads/org.op` and press the tab key. Terminal will complete the name for you.
|
||||
|
||||
Launching openHAB for the second time
|
||||
====================================
|
||||
|
||||
We are going to launch openHAB for the second time, in order to check that our install is successful.
|
||||
|
||||
* In the terminal window, type ./start.sh
|
||||
```
|
||||
cal:openHAB callas$ ./start.sh
|
||||
```
|
||||
|
||||
* Messages are displayed, wait until the "openhab>" prompt appears.
|
||||
|
||||
```
|
||||
cal:openHAB admin$ ./start.sh
|
||||
Launching the openHAB runtime...
|
||||
|
||||
__ _____ ____
|
||||
____ ____ ___ ____ / / / / | / __ )
|
||||
/ __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __ |
|
||||
/ /_/ / /_/ / __/ / / / __ / ___ |/ /_/ /
|
||||
\____/ .___/\___/_/ /_/_/ /_/_/ |_/_____/
|
||||
/_/ 2.0.0-SNAPSHOT
|
||||
|
||||
Hit '<tab>' for a list of available commands
|
||||
and '[cmd] --help' for help on a specific command.
|
||||
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.
|
||||
|
||||
openhab>
|
||||
```
|
||||
|
||||
* Without closing the terminal, open your favorite web browser and type the following url: `http://localhost:8011`, you should see the openHAB welcome screen, __with a new UI__ : __HABMIN__.
|
||||
|
||||

|
||||
|
||||
|
||||
> Which browser should I use ?
|
||||
|
||||
> Safari is supported by openHAB, but the fact is the browser used by the openHAB developer community - and by the owner of the ZWave plugin - is Google Chrome.
|
||||
> I recommend then Google Chrome, as openHAB 2 is in a beta phase.
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
---
|
||||
layout: tutorial-advanced
|
||||
---
|
||||
|
||||
{% include base.html %}
|
||||
|
||||
# Other tools of HABmin
|
||||
|
||||
## The Sitemap viewer
|
||||
|
||||
<<< WAITING FOR BEING FUNCTIONNAL IN HABMIN >>>
|
||||
|
||||
## The Z-Wave network viewer
|
||||
|
||||
In the left menu, click on *Tools*, *Z-Wave network viewer*.
|
||||
|
||||
The viewer displays a graph of the network. You can have information about the node by clicking on it.
|
||||
|
||||

|
||||
|
||||
When a node has any kind of error, it is displayed in red.
|
||||
|
||||

|
||||
|
||||
# The ZWave Database
|
||||
|
||||
HABmin is using an internal database to fetch configuration data corresponding to the device.
|
||||
|
||||
|
||||
If this device is not in the database, then no device name nor model will be displayed but a code identifying the device.
|
||||
|
||||

|
||||
|
||||
In this example, the Thing "Z-wave Node 3" has not been found in the ZWave database and the Thing "Z-wave Node 4" has been successfully identified.
|
||||
|
||||
<<< TO BE COMPLETED >>>
|
||||
|
||||
|
||||
|