homebridge-loxone-puppeteer v0.7.2
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
- Download the latest Chromium
sudo apt-get install chromium
- Verify the Chromium installation by running
chromium
, output should be similar to(chromium:30533): Gtk-WARNING **: cannot open display
- Install this plugin using:
sudo npm install -g homebridge-loxone-puppeteer
- 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:
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 ,
Property | Description |
---|---|
name | The name of the device in HomeKit |
type | jalousie , light or ventilation |
room | Room name matching the name in loxone webinterface |
blockIndex | The index of the device to control |
jalousieTilt | Final position of the blinds, closed , tilted or open |
jalousieTiming | What 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
},
]
Property | Description |
---|---|
name | The name of the device in HomeKit |
type | light in this case |
room | Room name matching the name in loxone webinterface |
blockIndex | The index of the device to control |
lightDimmable | Set 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"
},
]
Property | Description |
---|---|
name | The name of the device in HomeKit |
type | ventilation in this case |
room | Room name matching the name in loxone webinterface |
blockIndex | The index of the device to control |
ventilationOnSet | What level to set when turned on, e.g Stufe 1 |
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago