Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

homebridge-edomoticz

patchworkboy596GPL-3.02.1.49

homebridge-plugin for Domoticz https://github.com/nfarina/homebridge

homebridge-plugin, eDomoticz, Domoticz

readme

homebridge-eDomoticz

A fully-fledged up-to-date Homebridge-Plugin for use with Homebridge v0.2.1+ and Domoticz

Supports:

Standard HomeKit Types:

  • Sockets (on/off) - Domoticz SwitchTypeVal: 0
  • Lamps (on/off) - Domoticz SwitchTypeVal: 0
  • Contact Sensors - Domoticz SwitchTypeVal: 2
  • Blinds - Domoticz SwitchTypeVal: 3
  • Smoke Detectors - Domoticz SwitchTypeVal: 5
  • Blinds (inverted) - Domoticz SwitchTypeVal: 6
  • Lamps (dimmer) - Domoticz SwitchTypeVal: 7
  • Motion Sensors - Domoticz SwitchTypeVal: 8
  • Push Switches - Domoticz SwitchTypeVal: 9
  • Lock Mechanisms - Domoticz SwitchTypeVal: 11
  • Blinds (%) - Domoticz SwitchTypeVal: 13
  • Blinds (& inverted) - Domoticz SwitchTypeVal: 16

Provides:

Custom HomeKit Types:

  • General kWh power meters - Types: General, Current; SubType: kWh, mapped to Eve chars where possible
  • CurrentCost USB power meter - Type: Usage, SubType: Electric, mapped to Eve chars where possible
  • P1 Smart Meter (Electric & Gas), mapped to Eve chars where possible
  • EvoHome** / OpenTherm Thermostat support - Types: Heating, Thermostat; SubTypes: Zone, SetPoint
  • YouLess Meter (Current, Total and Today Total Consumption) - Type: YouLess Meter; SubType: YouLess counter, mapped to Eve chars where possible
  • General Usage % meters (eg: Motherboard Sensors Hardware Device - CPU %, Mem %, HDD % etc) - Type: General; SubType: Percentage
  • Temperature, Temp + Humidity, Temp + Humidity + Baro (Current Temperature, Current Humidity, Current Pressure in hPA) - Type: Temp, Temp + Humidty, Temp + Humidity + Baro [id'd as Eve Weather]
  • DarkSkies Virtual Weather Station Sensors (Wind, Solar Radiation, Rainfall, Visibility, Barometer [id'd as Eve Weather])

** assumes the EvoHome has been setup according to this script method.

Todo:

  • <input disabled="" type="checkbox"> homebridge plugin 2.0 support
  • <input checked="" disabled="" type="checkbox"> MQTT-based realtime updates
  • <input checked="" disabled="" type="checkbox"> Hue/RGB
  • <input checked="" disabled="" type="checkbox"> Blinds
  • <input checked="" disabled="" type="checkbox"> m3 (gas usage)
  • <input checked="" disabled="" type="checkbox"> Motion sensors
  • <input checked="" disabled="" type="checkbox"> Smoke Detectors
  • <input checked="" disabled="" type="checkbox"> Brightness/Dimming
  • <input checked="" disabled="" type="checkbox"> kWh (electricity usage)
  • <input checked="" disabled="" type="checkbox"> General % usage
  • <input checked="" disabled="" type="checkbox"> Humidity
  • <input checked="" disabled="" type="checkbox"> Pressure
  • <input checked="" disabled="" type="checkbox"> YouLess Meter
  • <input checked="" disabled="" type="checkbox"> Open/Closed contact sensors
  • <input disabled="" type="checkbox"> ...more sensors (ongoing)!

Installation

sudo npm install -g homebridge-edomoticz

Update

sudo npm update -g homebridge-edomoticz

Configuration

~/.homebridge/config.json example:

{
    "bridge": {
        "name": "Homebridge",
        "username": "CC:21:3E:E4:DE:33",
        "port": 51826,
        "pin": "031-45-154"
    },
    "description": "Configuration file for (e)xtended Domoticz platform.",
    "platforms": [
        {
            "platform": "eDomoticz",
            "name": "eDomoticz",
            "server": "127.0.0.1",
            "port": "8080",
            "ssl": 0,
            "roomid": 0,
            "mqttenable": 1,
            "mqttserver": "127.0.0.1",
            "mqttport": "1883",
            "mqttauth": 0,
            "mqttuser": "",
            "mqttpass": ""
        }
    ],
    "accessories": []
}

Tips

Authentication

If Domoticz is set up to use basic or form login authentication, set "server":"user:pass@ip" within config.json. The plugin will internally extract the username and password, base64 encode it and send it as a http authorization header whenever it talks to your Domoticz server.

SSL

Set "ssl":1 in config.json to turn on SSL (ie: server connects with https:// rather than http://). You will need to specify your SSL port - usually "port":"443" by default.

Issues pairing to Homebridge when you have a lot of Domoticz sensors...

If you have more than 100 devices in Domoticz, you need to limit the number of devices exposed to HomeKit (HomeKit only supports 100 Accessories on a single bridge - whilst we could combine multiple sensors into a single homekit accessory within the plugin, the possible combinations out there are endless, so we won't).

Therefore, to reduce the number of devices exposed from Domoticz, create a roomplan within Domoticz via Setup > More Options > Plans > roomplan. Add only the devices you wish to be exposed to HomeKit to this new roomplan within Domoticz, and then get it's roomidx number. Set "roomid" in your config.json file to this room number.

Is my <<some accessory>> supported??

See Domoticz API Reference - query your device as per the instructions there, and if your device’s SwitchTypeVal isn't in the 'Supports:' list or Type/SubType aren’t in the ’Provides:' list above then it'll just appear as an On/Off switch. Open a new issue including the output from the json api and I’ll get look into supporting that particular device more fully!

What does the Override slider represent on the EvoHome Thermostat?

Override-Until time in minutes from the current time. Allows setting an override-until time upto 8 hours in the future. Setting this slider to 0 will set the heating mode to Auto. Setting it to 481 will set the override as a PermanentOverride.

Logging

Complies with Homebridge's native logging & debugging methodology - see https://github.com/nfarina/homebridge/wiki/Basic-Trouble-Shooting

changelog

     ____                        _   _
 ___|  _ \  ___  _ __ ___   ___ | |_(_) ________
/ _ | | | |/ _ \| '_ ` _ \ / _ \| __| |/ __|_  /

| | || | () | | | | | | () | || | ( / / _|__/ _/|| || ||\/ _||_/___| www.npmjs.com/package/homebridge-edomoticz

A Platform Plugin for HomeBridge by Marci & TheRamon [http://twitter.com/marcisshadow] [http://domoticz.com/forum/memberlist.php?mode=viewprofile&u=10884]

V1.0.1 - see https://github.com/PatchworkBoy/homebridge-edomoticz/commits/master V1.0.0 - MQTT Merge V0.2.3 - 2016/10/26

- MQTT Integration
- Switch and dimmer values caching
- Support for Domoticz Security panel
- Dedicated waterflow handling
- Improved response times
- Improved handling of characteristics (iOS 10)

V0.2.2 - 2016/08/19

- Release Candidate for MQTT Integration

V0.2.1 - 2016/06/21

- Added handling for sensors of type 'Lux' - cheers @100hz
- Hue/RGB support - cheers @xTheRamon
- Improved BlindSupport (iOS10 compatible) - cheers @xTheRamon

V0.1.32 - 2016/04/04

- Add Occupancy Sensor support - power switches in Domotics
  featuring the word "Occupied" (case sensitive) in the Name
  will be created in HomeKit as an Occupancy Sensor

V0.1.31 - 2016/04/01

- Revert blind support

V0.1.28 - 2016/04/01

- Tweak to EvoHome support
- Add Blind (switchType 3) support

V0.1.27 - 2016/03/12

- Tweak to EvoHome support

V0.1.26 - 2016/03/02

- Added CurrentCost USB support (introduced to stable in v3.4834)
- Type: Usage, SubType: Electric

V0.1.25 - 2016/02/26

- Revision history moved to CHANGELOG

V0.1.24 - 2016/02/26

- fixed batterysensor for Motion Detectors (was: get before it was added = err thrown)
- merge @gerard33/patch-1 pull request: Add smoke detector status Normal

V0.1.23 - 2016/02/20

- merge in bugfixes by @EddyK69 - commit/1ae1020146b5761f1aaa9bd69b6675210a777290
- consistent that/this
- removed some fluff
- globally switched roundToHalf to OneDP

V0.1.21 & 22 - 2016/02/20

- More work on Thermostat / SetPoint support

V0.1.20 - 2016/02/19

- Dimmers reflect power state

V0.1.19 - 2016/02/19

- Corrected UV Type checking (@EddyK69)

V0.1.16 - 18 - 2016/02/19

- added P1 Smart Meter Energy subtype support
- more work on Evohome

V0.1.14 & 15 - 2016/02/19

- added P1 Smart Meter kWh & Gas type / subtype support
- added UVN800 support (@EddyK69)
- added preliminary EvoHom / OpenTherm Gateway Thermostat / SetPoint support

V0.1.11 & 12 - 2016/02/10

- rewritten switch detection to use SwitchTypeVal=0>17
- de-verbosed object selectors & jshint'd end-to-end
- added: smoke detector, motion detector
- fixed: dimmmer allocation, contact sensors

V0.1.10 - 2016/02/08

- more work relating to dimmers and contact sensors

V0.1.9 - 2016/02/07

- hopefully fixes an oopsie related to brightness on EVERY switch.

V0.1.8 - 2016/02/07

- add support for SwitchType: Contact (basic open / closed)

V0.1.6 - 2016/02/07

- add another identifier for Current

V0.1.5 - 2016/02/07

- add another identifier for a dimming light

V0.1.4 - 2016/02/06

- removed extraneous cruft from Base64
- enable dimming

V0.1.2 - 2016/02/05

- Added SSL Protocol support
- authorization header rather than within URL

V0.0.7 - 2016/02/05

- Fixed Today counter and WindChill characteristic

V0.0.6 - 2016/02/03

- Full DarkSkies Virtual Sensor support (Rain, Wind, Barometer, Solar Radiation, Visibility

V0.0.5 - 2016/02/03

- Added YouLess counter support (Type: YouLess Meter, SubType: YouLess counter)
- Expanded Temp sensor to include humidity & pressure (if present)
- fixed UUID generation

V0.0.4 - 2016/01/31

  - Fixed 'Siri Name' disappearance

V0.0.3 - 2016/01/31

  - Added General Usage Sensors (Type: General, SubType: Percentage)

V0.0.2 - 2016/01/31

  - Added Electric Consumption sensors (Type: General, SubType: kWh)

V0.0.1 - 2016/01/31

  - Initial version
  - I make no claims to the quality of this shim. Function over form!