- Revert: Send service names to Homekit - causes issues by replacing user name changes
- Send service names to Homekit now uses nameOverride configuration option
- Added support for Carbon Monoxide Sensors (thanks, Nick Lange)
- Added support for Fan version 2 (thanks, Ewan Dank)
- Fixed configuration for Irrigation System (thanks, Christian Brandlehner)
- Corrected temperature display units documentation (thanks, Nicholas Humfrey)
- Send service names to Homekit (thanks, Ralph Zazula)
- Mark as compatible with Node.js 20
- Fixed Swing Mode default
- Enabled use with Node.js 18.12
- Added speaker service to implement Homekit set for volume buttons (thanks, tukaloff)
- Added characteristic_Active to thermostat (thanks, nicknicknickos)
- Added dehumidifier (thanks, rcaceiro)
- Added extendedTopic info to codec calls (thanks, Flavio De Stefano)
- Added configurable minimum and maximum voltage for outlet (minVolts, maxVolts)
- Fix RGB light validation errors (issue #510)
- Fix to use valid initial value for airPressure (0 invalid)
- Update to MQTT 4.3.2
- Fixed characteristic_TemperatureDisplayUnits for airQualitySensor
- Miscellaneous fixes to pull requests merged in version 1.1.33
- Added support for MQTTTHING_ environment variables providing default MQTT settings (thanks, Robert Redgwell)
- Added Door
- Add minimum and maximum position for window, door and windowCovering
- Revert change in 1.1.32. MQTT-Thing now requires Node.js 14 or later.
- Engines updated to require Homebridge 1.3.5 and Node.js 14 (thanks, Donavan Becker)
- Fixed typo in documentation (thanks, Brian White)
- Fixed duration characteristic validation error message (thanks, Thomas Vandahl)
- Moved codec loading earlier to allow codecs to manipulate the configuration (thanks, Martin)
- Added water level characteristic to leak sensor (thanks, Moritz)
- Added max wind and dewpoint characteristics to weather station (thanks, 2610)
- Added jsonpath support (thanks, Antonio Yip)
- Added Eve Room 2 support for air quality sensor (thanks, D4rk)
- Don't set MQTT retain in example config (thanks, iGod42)
- Added AltSensorState to alarm system (thanks, Ferme de Pommerieux)
- Added codec for Bosch AMAX with Shelly switches (thanks, Ferme de Pommerieux)
- Improve compatibility with older Node.js versions
- Improve null handling (multicharacteristic) (thanks, Jakub Samek)
- Added optimizePublishing option
- Fixed out of range default voltage
- Validation tweaks
- Update Node.js dependencies - homebridge-lib now requires Node.js 14
- Validation fixes
- Allow validation to be disabled
- Added support for adaptive lighting
- Weather Station: added ambient light level (thanks, Matt Kirman)
- Validate characteristics when setting to avoid Homebridge 1.3 warnings
- Lock/unlock fix with Siri and Homebridge 1.3.x (thanks, @tasict)
- Fan: When setRotationSpeed is configured but not setOn, turn fan off with zero rotation speed (#358 and #310)
- Lightbulb: Change
whiteMix
tonoWhiteMix
for configuration schema as items defaulting to true are populated when irrelevant - Fan: Tested minRotationSpeed/maxRotationSpeed - Homekit apparently doesn't like this changed
- Added debounceRecvms setting
- Lightbulb: Allow lightbulb-Dimmable to use setBrightness only (0 brightness for off) when no setOn topic configured
- Thermostat: Fixed target relative humidity
- Changed incorrect 'http' protocol in MQTT server configuration to 'mqtt' (thanks, Nicholas Humfrey)
- Light: Added redThreshold, greenThreshold, blueThreshold for when whiteMix is false in an RGBWW light
- Light: Added minColorTemperature and maxColorTemperature configuration settings
- Light: Added switchWhites setting for RGBWW light
- Updated fakegato-history dependency version
- Added whiteMix option to configuration schema
- Fixed publishing confirmation with Boolean values (#363)
- Added insecure option for TLS, disabling checking of certificate and server identity
- Allowed TLS certificate, key and ca pem files to be loaded
- Added whiteMix option for RGBWW lights. Set whiteMix to false to disable extraction of white components from colours - i.e. powering only RGB channels or WW,CW channels. (#300)
- Added support for grouped (custom) accessories (#201)
- Changed order of Codec and apply() used together so that on publishing values pass through apply function before codec, and on subscription values pass through codec before apply function. This allows manipulation of values like the red,green,blue string from the RGB light before codec encoding and after codec decoding. This makes the JSON codec more flexible.
- Fixed weather station with homebridge-lib 4.7.7
- Added air purifier (implemented by @tobekas)
- Added irrigation system (implemented by @tobekas)
- JSON codec: added per-topic fixed values and retain option
- When using missing confirmation to set offline state, any message received after timeout sets state back to online
- Added internal codec concept: specifying a codec with no .js suffix will load it from the mqttthing 'codecs' directory
- Added experimental JSON codec (json)
- RGB and HSV lights: wait for multiple property changes before publishing
- Extended codecs to support ad hoc property changes and MQTT publishing
- Codec defaults changed to apply per-function
- Fixed publishing of empty messages configured through config-ui-x in startPub (#253)
- Fixed crash (introduced in version 1.1.9) with confirmed publisher on/off acknowledgement (#252)
- Added persistencePath to historyOptions
- Added support for codecs
- Added state to apply functions
- Garage door add getDoorMoving option as simpler alternative to getCurrentDoorState
- Changed default garage door state (after restart) to closed
- Allow temperature sensor current temperature range to be overriden (using minTemperature and maxTemperature)
- Added confirmationIndicateOffline option
- Moved history options from history to historyOptions object
- Added config-ui-x support for historyOptions
- Added history support for switch (implemented by @tobekas)
- Fixed #223 and #207 - history not working if getTotalConsumption used (implemented by @tobekas)
- Fixed history last activation in motion and contact sensor (implemented by @tobekas)
- Allowed config.url string without protocol, now defaulting to mqtt:// (implemented by @tobekas)
- Don't throw an exception at start-up if the configuration is invalid (as this stops Homebridge unnecessarily)
- Fixed excessive MQTT logging (introduced in 1.1.2). Thanks, @nzbullet.
- Added lightbulb sub-types to configuration schema, allowing easier configuration of different lightbulb types.
- Added missing otherValueOff to configuration schema.
- Added configuration schema, supporting configuration of most settings through config-ui-x (thanks, @oznu). Note that 'apply' functions are not supported.
- Added new 'startPub' format, allowing configuration through config-ui-x.
- Changed Boolean value handling to support bare JavaScript Booleans returned from incoming MQTT apply() functions (
"true" != true
but both are now accepted). - Boolean property values passed to outgoing MQTT apply() functions are no-longer converted to strings first (for consistency with the change above). This allows easier publishing of JSON containing correctly typed values, but may change outgoing message format with existing configurations in some situations.
- Added option to configure garage door target values independently of current values - thanks, Charles Powell
- Stateless Programmable Switch: allow multiple buttons under a single switch - thanks, Jacob Nite
- Stateless Programmable Switch: added option to restrict available switch values - thanks, Jacob Nite
- Upgrade to latest homebridge-lib (4.4.10 or later)
- Fix: latest homebridge-lib (introduced in last build) appears incompatible with our references to Eve.Characteristic (e.g. Eve.Characteristic.CurrentConsumption)
- Suppress logging of MQTT password (issue #150)
- Allow changing of default run time (duration) range for valve
- Added HeaterCooler
- Added option to treat unrecognized received on/off values as off when an explicit off value is configured
- Security System: Allow target states to be restricted
- Added publishing confirmation (
setOn
message must be echoed togetOn
topic to confirm that it has been processed by the accessory), with automatic republishing - Added Television (implemented by tobekas)
- Fix to characteristics with multiple states (thanks, tobekas)
- Light: Add option to control dimmable white light through integer in range 0-255, so that one channel of an RGB or RGBW controller can be used more easily for a white light
- Thermostat: Allow target heating/cooling states to be restricted
- Valve: Added duration timer (implemented by tobekas)
- Thermostat: Allow minimum and maximum target temperature to be configured
- Added Thermostat
- Fix to Valve remaining duration
- Added experimental support for RGBWWCW lights (red, green, blue, warm_white and cold_white channels)
- Added Valve (for Sprinkler, Shower and Faucet) - implemented by tobekas
- Added Air Pressure Sensor (implemented by tobekas)
- Added Weather Station with custom Eve characteristics (implemented by tobekas)
- Fakegato-History fix
- Added optional air quality sensor characteristics
- Added resetStateAfterms option for contact sensor, leak sensor and smoke sensor
- Added Eve history support for outlet power consumption (implemented by tobekas)
- Wrap exception handling around 'apply' functions (used for encoding/decoding MQTT messages), so that errors don't crash Homebridge and messages that can't be decoded are skipped
- Added Elgato history support for AirQuality (thanks, sieren)
- Extended Eve history support (implemented by tobekas)
- Added history support for Eve App (only) using fakegato-history (implemented by tobekas)
- Improve behaviour of RGB, RGBW and HSV lightbulbs when not using a separate on/off topic
- Added ColorTemperature to Light bulb
- Added Window
- Added Air Quality Sensor
- Added Carbon Dioxide Sensor
- Added Lock Mechanism
- Added Speaker and Microphone
- Added Window Covering (blind)
- Add MQTT publishing options configuration setting (
mqttPubOptions
), to allow retain flag and QoS level to be set - If no offValue is specified, don't publish anything when a Boolean characteristic turns off
- When receiving a Boolean value, require configured off value to turn it off
- Added
startPub
configuration setting, allowing MQTT messages to be published on start-up
- Added InformationService to populate manufacturer and other characteristics (thanks, NorthernMan54)
- Added Leak Sensor
- Added
onlineValue
configuration setting, allowing the use of a custom value to represent an online state (withgetOnline
) without the use of a custom payload decoding function. - Added
turnOffAfterms
support for motion sensor, allowing motion triggered by MQTT message to be self-resetting.
- Changed minimum temperature for temperatureSensor to -100 degrees celsius
- Added BatteryService supporting
getBatteryLevel
,getChargingState
andgetStatusLowBattery
for all accessories.
- Added
getOnline
topic to control whether an accessory should appear responsive or unresponsive
- Added ability to encode/decode MQTT payload using custom JavaScript functions (implemented by Michael Stürmer)
- Allow MQTT options to be passed directly, so that any options required can be set (not just those specifically supported by mqttthing)
- Allowed Garage Door and Security System target states to be modified outside of HomeKit (thanks, brefra)
- Added
turnOffAfterms
to items with an On characteristic like Switch, causing them to turn off automatically after a specified timeout (in milliseconds)
- Remove non-ASCII characters from MQTT client ID (thanks, twinkelm)
- Added Fan
- Added Light bulb option to publish RGB and RGBW values as hex
- Added Light bulb option to publish RGB white level separately
- Allowed separate on/off topic when using combined "hue,saturation,value" topic with Light bulb
- Added Light bulb combined "red,green,blue" topic support
- Added Light bulb RGBW support through combined "red,green,blue,white" topic
- Added option to combine Light bulb hue (0-360), saturation (0-100) and value/brightness (0-100) into a single topic containing "hue,saturation,value"
- Added Stateless Programmable Switch
- Added Garage Door Opener
- Fixed Smoke Sensor
- Added Temperature Sensor
- Added Humidity Sensor
- Added Security System
- Added Smoke Sensor
- Fixed Occupancy Sensor values
- Added Doorbell
- Added Contact Sensor
- Added Light Sensor
- Default sensors to 'active' state
- Initial public version with Light bulb, Switch, Outlet, Motion Sensor, Occupancy Sensor