0.7.2 • Published 4 months ago

homebridge-loxone-puppeteer v0.7.2

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
4 months ago

Homebridge Loxone Puppeteer

This is a homebridge plugin to control a loxone system trough the loxone web-interface with puppeteer. Especially useful if you have zero access to your Loxone Miniserver and your loxone user don't have rights to activate the HomeKit integration.

Setup

  1. Download the latest Chromium sudo apt-get install chromium
  2. Verify the Chromium installation by running chromium, output should be similar to (chromium:30533): Gtk-WARNING **: cannot open display
  3. Install this plugin using: sudo npm install -g homebridge-loxone-puppeteer
  4. Update your Homebridge config.json using the sample below (append in the block 'platforms' not 'accessories')

Configuration

Update your config similar to this:

 "platforms": [
      {
        "platform": "LoxonePuppeteer",
        "loxoneMiniServerId": "504F84A26XXX",
        "loxoneUser": "User",
        "loxonePassword": "password",
        "chromiumPath": "/usr/bin/chromium",
        "devices": [
            {
                "name": "Office Blinds",
                "type": "jalousie",
                "room": "Wohnzimmer",
                "blockIndex": "2",
                "jalousieTilt": "tilted"
            },
            {
                "name": "Kitchen Spot",
                "type": "light",
                "room": "Küche",
                "blockIndex": "2",
                "lightDimmable": true
            }
        ]
      }
   ]

Get the Miniserver ID

After you logged in succesful into the loxone web interface, you can simply check your URL - all digits after the last / are representing your mini server ID.

Tenants at "Jägerstrasse 59, Winterthur"

Check your mails, you certainly received emails from "Living Services" portal - just search for one of those mails and open the "Living Services" App in a browser on your desktop computer. In there, you have this "Loxone" link, open that and login with the credentials you received by Wincasa (if you don't know the credentials, ask Wincasa in a Support Ticket).

How it works

The plugin starts a pool of different puppeteer instances for various categories like "jalousie", "light" and "ventilation". Every instance will login with the configured credentials and wait for commands to execute. So whenever you want to change a state of an accessory trough HomeKit, there will always be a loxone web interface ready to click the action with puppeteer.

To find out your specific configuration values, you just need to open the loxone webinterface yourself at:

https://dns.loxonecloud.com/your-mini-server-id

If you want to control one of the jalousie in your living room, open up the web interface, go to categories in the main navigation and then open Beschattung.

Now search for the room that matches for living room (in my case it was Wohnzimmer). Underneath the title Wohnzimmer, you see the available jalousie devices you can control:

How to block index

Always open the web interface in a mobile viewport (width=500px) to have all devices underneath each other!

The very first device would have an index of 1 the seoncd device 2 and so on.

Jalousie

Now you after we know the room name and the block index, we can add a jalousie device like this:

"devices": [
    {
        "name": "Livingroom Blinds",
        "type": "jalousie",
        "room": "Wohnzimmer",
        "blockIndex": "2",
        "jalousieTilt": "tilted"
    },
]

Awning

An awning is a little bit different, it has a different jalousieTiming and doesn't support jalousieTilt:

"devices": [
    {
        "name": "Loggia Awning",
        "type": "jalousie",
        "room": "Loggia",
        "blockIndex": "1,2",
        "jalousieTiming": "awning"
    },
]

It is also possible to control more than two devices at once, you can set more than one value for blockIndex by separating them with ,

PropertyDescription
nameThe name of the device in HomeKit
typejalousie, light or ventilation
roomRoom name matching the name in loxone webinterface
blockIndexThe index of the device to control
jalousieTiltFinal position of the blinds, closed, tilted or open
jalousieTimingWhat kind of jalousie you want to control: window, window-big or awning

Light

"devices": [
    {
        "name": "Kitchen Spot",
        "type": "light",
        "room": "Küche",
        "blockIndex": "1",
        "lightDimmable": true
    },
]
PropertyDescription
nameThe name of the device in HomeKit
typelight in this case
roomRoom name matching the name in loxone webinterface
blockIndexThe index of the device to control
lightDimmableSet to true if the light is dimmable in loxone webinterface

Ventilation

"devices": [
    {
        "name": "Bedroom Fan",
        "type": "ventilation",
        "room": "Zimmer 1",
        "blockIndex": "1",
        "ventilationOnSet": "Stufe 1"
    },
]
PropertyDescription
nameThe name of the device in HomeKit
typeventilation in this case
roomRoom name matching the name in loxone webinterface
blockIndexThe index of the device to control
ventilationOnSetWhat level to set when turned on, e.g Stufe 1
0.7.3

4 months ago

0.7.2

4 months ago

0.7.1

4 months ago

0.7.0

4 months ago

0.6.7

4 months ago

0.6.5

4 months ago

0.6.4

4 months ago

0.6.3

4 months ago

0.5.10

4 months ago

0.5.11-beta.0

4 months ago

0.5.8

4 months ago

0.5.7

4 months ago

0.5.9

4 months ago

0.5.12-beta.0

4 months ago

0.6.2

4 months ago

0.5.3

4 months ago

0.5.6

4 months ago

0.5.5

4 months ago

0.6.1

4 months ago

0.5.2

4 months ago

0.6.0

4 months ago

0.5.1

4 months ago

0.5.0

4 months ago