homebridge-nefit-easy v2.3.1
Homebridge Nefit Easy™ plugin
This is a plugin for Homebridge to allow controlling your Nefit Easy™ (aka Worcester Wave™, Junkers Control™) thermostat through iOS' HomeKit.
Uses the nefit-easy-commands module under the hood to communicate with the Nefit/Bosch backend.
Installation
This library requires Node.js 6.0.0 or later!
$ npm i homebridge-nefit-easy -gHomebridge plugins need to be installed globally, so the -g is mandatory.
Problems on recent Linux distributions
If you're having problems getting any data from the HTTP server, and you're using a recent Linux distribution (for instance, Raspbian Buster), take a look at this comment.
In short: OpenSSL defaults have changed to require a minimum TLS version and cipher implementation. These defaults cause the Nefit client code to not be able to connect to the Nefit/Bosch backend.
The solution is mentioned here: edit the file /etc/ssl/openssl.cnf and change the following keys to these values:
MinProtocol = None
CipherString = DEFAULTConfiguration
Thermostat
First, you need a working Homebridge installation.
Once you have that working, edit ~/.homebridge/config.json and add a new accessory:
"accessories": [
...
{
"accessory" : "NefitEasy",
"name" : "thermostaat",
"options" : {
"serialNumber" : "NEFIT_SERIAL_NUMBER",
"accessKey" : "NEFIT_ACCESS_KEY",
"password" : "NEFIT_PASSWORD"
}
}
]- The
namewill be the identifier that you can use, for example, in Siri commands; - Replace
NEFIT_*with the correct values; - Any additional options get passed to the
nefit-easy-coreconstructor.
Outdoor temperature
To also use the outdoor temperature measured by the Nefit Easy device, add a NefitEasyOutdoorTemp accessory to ~/.homebridge/config.json:
"accessories": [
...
{
"accessory" : "NefitEasyOutdoorTemp",
"name" : "buitentemperatuur",
"options" : {
"serialNumber" : "NEFIT_SERIAL_NUMBER",
"accessKey" : "NEFIT_ACCESS_KEY",
"password" : "NEFIT_PASSWORD"
}
}
]All credentials options should be set for both the NefitEasy and the NefitEasyOutdoorTemp device.
Supported actions
- Getting the current temperature
- Getting the target temperature
- Setting the target temperature
- Getting the outside temperature (optional)