UncleSamSwiss / ioBroker.loxone

ioBroker adapter for Loxone Miniserver
Apache License 2.0
27 stars 25 forks source link
iobroker-adapter loxone-miniserver

Logo

ioBroker.loxone

NPM version Downloads Number of Installations (latest) Number of Installations (stable) Dependency Status Translation status

NPM

Tests: Test and Release

loxone adapter for ioBroker

This adapter requires at least nodejs 18.x!

Fetches all information available in Loxone Miniserver (and Loxone Miniserver Go) and provides changes in realtime.

This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers. For more details and for information how to disable the error reporting see Sentry-Plugin Documentation! Sentry reporting is used starting with js-controller 3.0.

Install

Install this adapter via ioBroker Admin:

  1. Open instance config dialog
  2. Enter the IP address or host name and HTTP port (80 by default) of your Loxone Miniserver
  3. Create a new user in the Loxone Miniserver (using the Loxone Config application) to which you only give read and write rights to all required variables.
  4. Enter this user's name and its password in the config dialog
  5. Save the configuration
  6. Start the adapter

Configuration

Miniserver Hostname / IP

This is the IP address or host name of your Loxone Miniserver or Miniserver Go.

Miniserver Port

This is the HTTP port of your Loxone Miniserver.

By default the Miniserver is configured to listen on port 80, but you might have changed it.

Miniserver Username

Provide a valid username to access the Loxone Miniserver.

It is strongly suggested to use a user different from "admin" for security reasons.

The user only needs read access to the variables you want to use from ioBroker.

Miniserver Password

Provide the password for the given username (see above).

Synchronize Names

This will update names in ioBroker whenever they change in the Loxone configuration. If this is disabled, names will only be synchronized the first time a control is detected.

Synchronize Rooms

This will populate the enum.rooms enumeration with all rooms provided by the Loxone Miniserver and will link all controls.

Synchronize Functions

This will populate the enum.functions enumeration with all categories provided by the Loxone Miniserver and will link all controls.

Weather Server

Choose what weather data you wish to synchronize:

States

The adapter automatically connects to the configured Loxone Miniserver and creates states for each control state it finds.

The IDs of the states are formatted like this: loxone.<instance>.<control>.<state>

The name provided when configuring a control in Loxone Config will only be used as its display name in ioBroker. This is because a user may choose the same name for multiple controls.

For more information about controls and their states, please also have a look at the Loxone API (especially the Structure File): https://www.loxone.com/enen/kb/api/

Control Visibility

By default Loxone Miniserver hides many controls (and thus their states) from the Web interface.

That means, they are also hidden from this ioBroker adapter.

Use in User Interface

To ensure, all your states are properly reported to ioBroker, please verify that they have "Use" in the "User Interface" section checked:

Use in User Interface settings

Display diagnostic inputs

To see diagnostic inputs (e.g. battery status of Air devices), please verify that the device has "Display diagnostic inputs" checked:

Display diagnostic inputs settings

Global States

The following global states are currently provided by this adapter:

Supported Control Types

The following control types are currently supported by this adapter.

Behind the name of the state, you can see the type of the state:

AalSmartAlarm

Provided by AAL Smart Alarm control.

AalEmergency

Provided by AAL Smart Emergency Button control.

Alarm

Provided by burgler alarm control.

Central Alarm

Provided by central burgler alarm control.

AlarmClock

Provided by alarm clock control.

AudioZone

Provided by Music Server Zone.

Central Audio

Provided by central Music Server.

Colorpicker

This device only appears inside a LightController.

Setting one or more of the above states from ioBroker will only send a command to the Miniserver after about 100 ms. This is to prevent the color from changing multiple times for a single user input.

Colorpicker V2

This device only appears inside a Light Controller V2 in Loxone software version 9 and above.

Setting one or more of the above states from ioBroker will only send a command to the Miniserver after about 100 ms. This is to prevent the color from changing multiple times for a single user input.

Daytimer / IRCDaytimer

Provided by timer/schedule.

Dimmer

Provided by dimmers.

EIBDimmer

Provided by EIB/KNX dimmers.

Fronius

Provided by energy monitor.

Gate

Provided by gate controls.

Central Gate

Provided by central gate control.

Hourcounter

Provided by

InfoOnlyAnalog

Provided by virtual states as well as the Loxone Touch switch.

InfoOnlyDigital

Provided by virtual states as well as the Loxone Touch switch.

InfoOnlyDigital settings

InfoOnlyText

Provided by virtual text states.

Intercom

Provided by door controllers.

This type of channel might contain other devices. See the respective chapter for more information.

Intelligent Room Controller V2

Provided by the intelligent room controller V2 since Miniserver 10.0.

TODO: Documentation currently missing

Jalousie

Provided by different kinds of blinds (automatic and manual).

Central Jalousie

Provided by the central blinds control.

Light Controller

Provided by (hotel) lighting controllers. Scenes can only be modified in the Loxone applications, but can be selected in ioBroker.

This type of channel might contain other devices. See the respective chapter for more information.

Light Controller V2

Provided by (hotel) lighting controllers in Loxone software version 9 and above. Moods can only be modified in the Loxone applications, but can be selected and combined in ioBroker.

This type of channel might contain other devices. See the respective chapter for more information.

Central Light Controller

Provided by central lighting controller.

Mailbox

Provided by Paketsafe Air / Tree.

Meter

Provided by utility meters.

Presence Detector

Provided by presence detector.

Pushbutton

Provided by virtual push-button inputs.

Radio

Provided by radio buttons (8x and 16x).

Remote

Provided by media controller. Basic read only functionality only.

Slider

Provided by analog virtual inputs.

SmokeAlarm

Provided by utility meters.

Switch

Provided by virtual input switches.

Text State

Provided by "state".

TimedSwitch

Provided by stairwell and multifunction switches.

Tracker

Provided by stairwell and multifunction switches.

UpDownAnalog

Provided by Virtual Input (Up-Down buttons).

ValueSelector

Value selection.

WindowMonitor

Provided by utility meters.

The sum of the values from all these states is equal to the number of windows & doors monitored.? The windows/doors with two states will always be counted to the "worst" state.

For each monitored window / door there will be a device with an index as its ID and the given name. They have the following states:

Weather Server

The weather server information is provided as a device with multiple channels. The device is called WeatherServer. It contains:

Every channel contains the following states:

Unsupported Control Types

When Loxone adds new control types, they are most often not immediately supported by this adapter.

In this case, the control will have "Unknown:" in front of its name. E.g. Unknown: Wallbox

Those controls will contain all states reported by the Miniserver, but they will all be read-only strings.

If you need better support for a new control type, please follow the steps in the next section to requeset a new feature.

Sentry: unsupported control types will be reported to the developers using Sentry. This way you might get new controls in the next release without having to request it yourself.

Bug Reports and Feature Requests

Please use the GitHub repository to report any bugs or request new features.

If you require an unsupported control type, please provide the name as it is reported in the error log of ioBroker as well as the entire raw contents of the device in the ioBroker object tree:

Log file example for "LightController":

Log of missing LightController control

Native value from ioBroker > Objects

Details of missing LightController control

Changelog

WORK IN PROGRESS

3.0.1 (2023-03-30)

3.0.0 (2021-12-29)

2.2.3 (2021-07-06)

2.2.2 (2021-06-23)

2.2.1 (2021-05-18)

2.2.0 (2021-05-17)

2.1.0 (2020-12-21)

2.0.2 (2020-10-26)

2.0.1 (2020-09-24)

2.0.0

1.1.0

1.0.0

0.4.0

0.3.0

0.2.1

0.2.0

0.1.1

0.1.0

0.0.3

0.0.2

0.0.1

License

Copyright 2023 UncleSamSwiss

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Legal

This project is not affiliated directly or indirectly with the company Loxone Electronics GmbH.

Loxone and Miniserver are registered trademarks of Loxone Electronics GmbH.