Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
homebridge-sensibo-ac
Advanced tools
Homebridge plugin for Sensibo - Smart AC Controller and Air Purifier
Check with: node -v
& homebridge -V
and update if needed
This plugin is Homebridge verified (and previously HOOBS certified) and can be easily installed and configured through their UI.
If you don't use Homebridge UI or HOOBS, or if you want to know more about the plugin features and options, keep reading...
sudo npm install -g homebridge --unsafe-perm
sudo npm install -g homebridge-sensibo-ac
config-sample.json
in this repository for a sample.* Install directly from GIT: sudo npm install -g git+https://github.com/nitaybz/homebridge-sensibo-ac.git
"platforms": [
{
"platform": "SensiboAC",
"username": "******@*******.***",
"password": "******"
}
]
"platforms": [
{
"platform": "SensiboAC",
"apiKey": "***************",
"allowRepeatedCommands": false,
"carbonDioxideAlertThreshold": 1500,
"climateReactSwitchInAccessory": false,
"disableAirQuality": false,
"disableCarbonDioxide": false,
"disableDry": false,
"disableFan": false,
"disableHorizontalSwing": false,
"disableHumidity": false,
"disableLightSwitch": false,
"disableVerticalSwing": false,
"enableClimateReactAutoSetup": false,
"enableClimateReactSwitch": true,
"enableHistoryStorage": true,
"enableOccupancySensor": true,
"enableSyncButton": true,
"externalHumiditySensor": false,
"ignoreHomeKitDevices": false,
"syncButtonInAccessory": false,
"devicesToExclude": [],
"locationsToInclude": [],
"modesToExclude": [],
"debug": false
}
]
See below the table for additional details on these settings.
Parameter | Description | Required | Default | type |
---|---|---|---|---|
platform | Always "SensiboAC" | ✓ | SensiboAC | String |
apiKey | Your Sensibo account API key (can be used instead of username/password) | ✓* | - | String |
username | Your Sensibo account username/email | ✓* | - | String |
password | Your Sensibo account password | ✓* | - | String |
allowRepeatedCommands | Allow the plugin to send the same state command again | false | Boolean | |
carbonDioxideAlertThreshold | Value, in PPM, over which the Home app will alert you to high CO2 readings. Requires the Carbon Dioxide Sensor be enabled | 1500 | Integer | |
disableAirQuality | When set to true , will remove Air Quality and TVOC readings | false | Boolean | |
disableCarbonDioxide | When set to true , will remove Carbon Dioxide readings and warnings | false | Boolean | |
disableDry | Deprecated - use modesToExclude When set to true , will remove the DRY accessory | false | Boolean | |
disableFan | Deprecated - use modesToExclude When set to true , will remove the FAN accessory | false | Boolean | |
disableHumidity | When set to true , will remove Current Relative Humidity readings from the (AC) accessory. Humidity will still be shown if you have Dry mode enabled for the accessory | false | Boolean | |
externalHumiditySensor | Creates a separate Humidity sensor accessory, ignores the disableHumidity setting | false | Boolean | |
disableLightSwitch | When set to true , will remove the light switch | false | Boolean | |
disableHorizontalSwing | When set to true , will remove the horizontal swing switch | false | Boolean | |
disableVerticalSwing | When set to true , will remove the vertical swing control (Oscillate) from the accessory | false | Boolean | |
enableClimateReactSwitch | Adds a switch to enable/disable Climate React (Smart mode) | false | Boolean | |
climateReactSwitchInAccessory | When set to true , adds a Climate React switch (like enableClimateReactSwitch above) but within the AC accessory. It will also remove the standalone AC Climate React switch (if one exists). Works only when enableClimateReactSwitch is also set to true | false | Boolean | |
enableClimateReactAutoSetup | When set to true , will auto-update the Climate React (Smart mode) settings to match whenever the AC state is set or changed | false | Boolean | |
enableHistoryStorage | When set to true , temperature & humidity measurements will be stored over time, viewable as History in the Eve app | false | Boolean | |
enableOccupancySensor | Adds an occupancy sensor to represent the state of someone at home | false | Boolean | |
enableSyncButton | When set to true , adds an AC Sync switch to toggle the state of the accessory in the Home app, without sending a command to the unit | false | Boolean | |
syncButtonInAccessory | When set to true , adds an AC Sync switch (like enableSyncButton above) but within the acessory. It will also remove the standalone Sync Switch (if one exists) | false | Boolean | |
ignoreHomeKitDevices | Automatically ignore, skip or remove HomeKit supported devices | false | Boolean | |
devicesToExclude | Add device identifiers (Name, ID from logs or serial from the Home app) to exclude them from Homebridge | - | String[] | |
locationsToInclude | Add device location IDs or names to include when discovering Sensibo devices (leave empty for all locations) | - | String[] | |
modesToExclude | Add modes to exclude from the accessory in the Home app (leave empty to keep all available modes). Valid values: AUTO, COOL, DRY, FAN, HEAT | - | String[] | |
debug | When set to true , the plugin will write extra logs for debugging purposes | false | Boolean |
* only apiKey OR username / password are required, not both
The plugin will scan for all your devices and retrieve each device capabilities separately. Therefore in the Home app you will see only the things that the Sensibo app allows you to control, based on your AC units remote capabilities.
In practice:
"ignoreHomeKitDevices": true
to automatically ignore, skip or remove HomeKit supported devices like Sensibo Air and Sensibo Pure.The accessory state will be updated in the background every 90 seconds, this is hard coded and requested specifically by Sensibo company. The state will also refresh every time you open the Home app, or any related HomeKit app.
If desired, you can choose to hide AC modes from the Home app, preventing you from changing the unit to that mode.
To disable a mode, add "modesToExclude": ["MODE_TO_HIDE","ANOTHER_MODE_TO_HIDE"]
to your config. Valid values are: AUTO, COOL, DRY, FAN & HEAT
.
Note: Including DRY
or FAN
in modesToExclude
will ignore/overwrite the disableDry
and disableFan
settings.
If your unit has DRY mode in the Sensibo app, the plugin will create a dehumidifier accessory in the Home app to control the DRY mode of your device. It will also include all the fan speeds and swing possibilities available from Sensibo.
To remove the separate Dry (dehumidifier) accessory, add "disableDry": true
to your config. modesToExclude
will overwrite this setting.
This setting is deprecated, please use modesToExclude
instead
If your unit FAN mode in the Sensibo app, this plugin will create a fan accessory in the Home app to control the FAN mode of your device. It will include all the fan speeds and swing possibilities available from Sensibo.
To remove the separate Fan accessory, add "disableFan": true
to your config. modesToExclude
will overwrite this setting.
This setting is deprecated, please use modesToExclude
instead
Fan speed steps are determined by the steps you have available in the Sensibo app. Since the Home app control over fan speed is with a slider between 0-100, the plugin converts the steps you have in the Sensibo app to values between 1 to 100, when 100 is highest and 1 is lowest. If "Auto" speed is available in your setup, setting the fan speed to 0, will set the unit to "Auto" speed.
Note: There is a known issue where setting your fan to Auto (0) may result in a subsequent Off command being ignored. Triggering the Off command a second time should update the unit correctly.
If your Sensibo app has Horizontal Swing control, a standalone switch will be added in the Home app to control it.
To remove the Horizontal Swing switch, add "disableHorizontalSwing": true
to your config.
If your Sensibo app has Vertical Swing control, an "Oscillate" toggle will be added to the existing AC accessory in the Home app to control it.
To disable the Vertical Swing (oscillate) toggle, add "disableVerticalSwing": true
to your config.
Note: Due to Homebridge and Apple (Home app) caching you may need to manually remove the AC accessory to see the change. See Issue #90 for details. For details on how to remove an accessory take a look at the steps in Troubleshooting and Debug below.
If you have ever found yourself struggling with the above, this feature is exactly for you! It allows you to toggle the state in the Home app (and update Sensibo) without changing the real state of your device, this will help you to sync between them.
When enabled, a switch will be added. The switch is stateless, which means that when clicked, it turns back OFF after 1 second. Behind the scenes, the plugin toggles the state of the device from ON to OFF (or the other way around, depending on the current state of the device), without sending actual commands to the AC.
This maybe be required if your AC has the same command for ON and OFF because it can go out of sync easily.
To add the AC Sync switch, add "enableSyncButton": true
to your config.
To show the AC Sync switch within the AC accessory, instead of a separate switch, add "syncButtonInAccessory": true
to your config.
Note: Setting "syncButtonInAccessory": true
by itself will create the switch, regardless of enableSyncButton
value.
The current relative humidity, as reported by the Sensibo device, are shown within the Home app under Climate.
To remove AC accessory Humidity readings from the Home app, add "disableHumidity": true
to your config.
Note: If you have Dry mode (dehumidifier) enabled, Humidity will always be shown. Additionally, currently room sensors always add Humidity readings.
To show the Humidity reading as a separate sensor, add "externalHumiditySensor": true
to your config.
Note: Setting "externalHumiditySensor": true
by itself will create the sensor accessory, regardless of disableHumidity
value.
The current Air Quality, Total Volatile Organic Compounds (TVOCs), in µg/㎥ (micrograms per metre cubed), and Carbon Dioxide (CO2), in Parts Per Million (PPM), as reported by the Sensibo device, are shown within the Home app as an Air Quality and Carbon Dioxide sensor respectively.
The Home app can alert you to high CO2 readings. The default for this plugin is 1500 (PPM). You can change the threshold, by adding "carbonDioxideAlertThreshold": 1500
to your config, the value must be a whole number. Requires the Carbon Dioxide Sensor be enabled.
To remove CO2 readings and warnings from the Home app, add "disableAirQuality": true
to your config.
To remove Air Qualitya d TVOC readings from the Home app, add "disableAirQuality": true
to your config.
Enabling this feature will add Occupancy Sensor to the Home app, representing the Home/Away state of the geofence feature in Sensibo app.
Note: Geofencing must be enabled in Sensibo app for it to work
To add the Occupancy Sensor, add "enableOccupancySensor": true
to your config.
Climate React (Smart mode) works similarly to Auto mode on ACs. It aims to keep the temperature between given thresholds.
Use in conjunction with the occupancy sensor and you'll be able to get the "Sensibo Plus" feature that allows turning units on/off according to your geolocation.
Note: To get full options, setup "Climate React" in the Sensibo app first.
When enabled, a switch will be added to the Home app to enable or disable the Climate React mode you've set up in the Sensibo app.
To add the Climate React switch, add "enableClimateReactSwitch": true
to your config.
To show the Climate React switch within the AC accessory, instead of a separate switch, also add "climateReactSwitchInAccessory": true
to your config.
When enabled, every time an AC's state is set or changed, the Climate React configuration will be updated so that the desired temperature is maintained.
For example, if setting an AC to Cool and 25°C, Climate React will be set up such that when the temperature rises above 25°C the AC starts to cool and when the temperature drops below 24° (the target temperature minus 1 degree C, or the equivalent F delta), the AC will be turned off.
When setting an AC to Heat with a target temprature, Climate React will be set to plus 1 degree C, or equivalent F delta.
To enable Climate React Auto Setup, add "enableClimateReactAutoSetup": true
to your config.
If you have the Filter Cleaning notifications feature in Sensibo (from Sensibo "Plus" subscription or via old account) it will appear in the AC settings in the Home app in this form:
Enabling this feature will store measurements of temperature and humidity. This historic data can be viewable in the Eve app under the accessory in a graph.
To enable the history storage feature, add "enableHistoryStorage": true
to your config.
Start by turning on debug logs, this is done by adding "debug": true
to your config, saving and restarting Homebridge. This will print additional info in the Homebridge Console Logs, which will give more details on what's happening and may help isolate the issue.
Note: Remember to remove any personal information, including tokens and ids, before sharing payloads or logs.
If you are having issues with a particular Sensibo acessory, you could try removing just that accessory from the Homebridge cache (rather than having to reset all of Homebridge which will remove all accessories).
To do this, if you are using Homebridge UI (homebridge-config-ui-x) on top of your Homebridge install, try:
http://<your_homebridge_instance>/settings
in your browser (Homebridge Settings
)Remove Single Cached Accessory
Note: The accessory may need to be moved back to the correct room in the Home app once re-added.
If you experience any issues with the plugins please refer to the Issues tab or Sensibo-AC Discord channel and check if your issue is already described there. If it isn't, please create a new issue with as much detailed information as you can, and please include debug logs (this is crucial).
Great thanks to Sensibo company and especially Omer Enbar, their CEO & CO-Founder, who helped tremendously understanding the Sensibo best practices, limitations, needs and extra undocumented features.
homebridge-sensibo-ac is a free plugin under the GNU license. It was originally developed as a contribution to the Homebridge/HOOBS community with lots of love and thoughts by nitaybz. Now maintained by others.
Creating and maintaining Homebridge plugins takes time and effort, if you would like to share your appreciation, feel free to "Star" or donate.
FAQs
Homebridge plugin for Sensibo - Smart AC Control
We found that homebridge-sensibo-ac demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.