- 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 (thanks, @tobekas)
- Fixed #223 and #207 - history not working if getTotalConsumption used (thanks, @tobekas)
- Fixed history last activation in motion and contact sensor (thanks, @tobekas)
- Allowed config.url string without protocol, now defaulting to mqtt:// (thanks, @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 (thanks, 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 (thanks, 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) - thanks, tobekas
- Added Air Pressure Sensor (thanks, tobekas)
- Added Weather Station with custom Eve characteristics (thanks, 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 (thanks, 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 (thanks, tobekas)
- Added history support for Eve App (only) using fakegato-history. (Thanks, 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