Configuration - homebridge-plugins/homebridge-ewelink GitHub Wiki
⚠️ It is recommended (and easier) to use the Homebridge UI plugin settings screen to configure the plugin. The settings screen is generated from the same source as this page, and always reflects the full, current set of options.
This page is for reference and for users who edit their configuration JSON manually.
Required Settings
Add the following to your configuration file inside the platforms array.
{
"name": "eWeLink",
"username": "your-ewelink-username",
"password": "your-ewelink-password",
"platform": "eWeLink"
}
- ⚠️ The
"platform": "eWeLink"line must not be changed - Use your main eWeLink account credentials (email or phone number including country code). In certain LAN-only setups the credentials can later be removed - see the Connection Methods page.
Optional Settings
| Setting | Type | Default | Explanation |
|---|---|---|---|
mode |
string |
auto |
This setting defines how the plugin communicates with your devices. For further guidance, please refer to this wiki article. |
language |
string |
en |
Language to use for logging. |
disableDeviceLogging |
boolean |
- | Global logging setting for accessory status changes. If true then accessory status changes will not be logged. This can also be set per accessory later in the config. |
disableNoResponse |
boolean |
- | If true, devices marked as cloud-offline will not be shown as 'No Response' in HomeKit. |
ignoredHomes |
string |
- | A list of comma-separated eWeLink home ids to ignore. |
countryCode |
string |
- | Override the default country code, may help with login issues for users in other regions. |
appId |
string |
- | Available if you want to override the eWeLink App ID. |
appSecret |
string |
- | Available if you want to override the eWeLink App Secret. |
httpHost |
string |
- | Available if you want to override the API host. |
apiPort |
number |
- | Port to use for the internal HTTP API. Set to 0 to disable. Set to 1 to choose a randomly available port. |
Device Settings
These sections are arrays: each entry is an object defining custom options for one device (or one group of settings). In the Homebridge UI these appear as their own sections in the plugin settings.
Single Channel Devices (singleDevices)
Optional settings for single-channel switch, outlet and light switch devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
showAs |
string |
- | Expose this device as a different HomeKit accessory type. |
showAsMotor |
string |
- | Select the accessory type to show in HomeKit. |
showAsEachen |
string |
- | Select the accessory type to show in HomeKit. |
inUsePowerThreshold |
number |
- | HomeKit will set the 'In Use' status of outlet devices to true when the wattage is above this number. Must be 0 or more. |
disableTimer |
boolean |
- | If true, the timer for the valve will be removed. |
temperatureSource |
string |
- | Enter a eWeLink, Govee or Meross device ID which provides a current temperature reading. |
isInched |
boolean |
- | If true, the plugin will show the on/off status based on inching mode. |
sensorType |
string |
- | The type of sensor to use. |
operationTime |
number |
- | Garage doors: the time to open/close the device. Locks: the time to show as unlocked. This setting is in deciseconds - count the time in seconds and multiply by 10, for example 75 for 7.5 seconds. Must be 20 or more. |
operationTimeDown |
number |
- | If your garage door has a different operation time for up and down, use this setting to specify the operation time DOWN (in deciseconds) and the other setting to specify the operation time UP. Otherwise leave blank. Must be 20 or more. |
invertGarageState |
boolean |
- | Swap the reported open and closed states for this garage door. Useful if HomeKit shows the door as open when it is physically closed (and vice versa). This applies to garage doors without a defined contact sensor. |
sensorId |
string |
- | A DW2 or Zigbee contact sensor can be used for a single garage door or lock to determine the current state. Enter the 10 digit eWeLink Device ID (normally in the format 1000ab23cd). Otherwise leave blank. |
hideSensor |
boolean |
- | Hide this contact sensor accessory from HomeKit. |
obstructId |
string |
- | An optional switch that will trigger the Obstruction Detected feature depending on its value. Otherwise leave blank. |
ipAddress |
string |
- | You can manually set the IP address for this device if it cannot be discovered by the plugin. |
Multi Channel Devices (multiDevices)
Optional settings for multi-channel switch, outlet and light switch devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
showAs |
string |
- | Expose this device as a different HomeKit accessory type. |
showAsMotor |
string |
- | Select the accessory type to show in HomeKit. |
hideChannels |
string |
- | A comma separated list of channels to hide for this device. For example '0' or '0,1,2'. |
inUsePowerThreshold |
number |
- | HomeKit will set the 'In Use' status of outlet devices to true when the wattage is above this number. Must be 0 or more. |
disableTimer |
boolean |
- | If true, the timer for the valve will be removed. |
inchChannels |
string |
- | A comma separated list of channels to show the on/off status based on inching mode. For example '1,2'. |
sensorType |
string |
- | The type of sensor to use. |
operationTime |
number |
- | Blinds/garage doors: the time to open/close the device. Locks: the time to show as unlocked. This setting is in deciseconds - count the time in seconds and multiply by 10, for example 75 for 7.5 seconds. Must be 20 or more. |
operationTimeDown |
number |
- | If your garage door or blind has a different operation time for up and down, use this setting to specify the operation time DOWN (in deciseconds) and the other setting to specify the operation time UP. Otherwise leave blank. Must be 20 or more. |
sensorId |
string |
- | A DW2 or Zigbee contact sensor can be used for a single garage door or lock to determine the current state. Enter the 10 digit eWeLink Device ID (normally in the format 1000ab23cd). Otherwise leave blank. |
hideSensor |
boolean |
- | Hide this contact sensor accessory from HomeKit. |
obstructId |
string |
- | An optional switch that will trigger the Obstruction Detected feature depending on its value. Otherwise leave blank. |
ipAddress |
string |
- | You can manually set the IP address for this device if it cannot be discovered by the plugin. |
Light Devices (lightDevices)
Optional settings for dimmer, bulb and LED strip devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
showAs |
string |
- | Expose this device as a different HomeKit accessory type. |
brightnessStep |
number |
- | A minimum step for the brightness slider in the Home app. Must be 1 or more. |
adaptiveLightingShift |
number |
- | The mired for each Adaptive Lighting update will be increased by this value, making the light appear warmer. Set to -1 to remove Adaptive Lighting feature. Must be -1 or more. |
offlineAsOff |
boolean |
- | If true, this accessory will show as off if reported offline. |
ipAddress |
string |
- | You can manually set the IP address for this device if it cannot be discovered by the plugin. |
Thermostat Devices (thDevices)
Optional settings for thermostat devices, NSPanel, TH10/16 and THR316/320.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
showAs |
string |
- | Expose this device as a different HomeKit accessory type. |
showHeatCool |
boolean |
- | If true, the 'Heat' and 'Cool' modes will be shown in HomeKit. |
hideSwitch |
boolean |
- | If true, this accessory will hide the TH10/16 switch from HomeKit. |
offset |
number |
- | You can offset the temperature that the sensor reads. An offset of 2 means 2 degrees will be added to the recorded temperature. Can be positive or negative and can include a decimal point '.'. |
offsetFactor |
boolean |
- | If true then the above value will be used as a factor, i.e. the recorded temperature will be multipled by this number instead. |
humidityOffset |
number |
- | You can offset the humidity that the sensor reads. An offset of 2 means 2% will be added to the recorded relative humidity. Can be positive or negative. |
humidityOffsetFactor |
boolean |
- | If true then the above value will be used as a factor, i.e. the recorded humidity will be multipled by this number instead. |
targetTempThreshold |
number |
- | You can add a threshold so the device only switches on when the current temperature is at least the threshold away from the target temperature. This can be useful for devices that don't require an exact temperature and you want to reduce the on-off cycles. Must be positive and can include a decimal point. |
minTarget |
number |
- | Minimum target temperature for TH10/16 thermostat/heater/cooler simulation to show in HomeKit apps. Must be 0 or more. |
maxTarget |
number |
- | Maximum target temperature for TH10/16 thermostat/heater/cooler simulation to show in HomeKit apps. Must be 1 or more, and greater than the minimum value set above. |
ipAddress |
string |
- | You can manually set the IP address for this Sonoff TH10/16 if it cannot be discovered by the plugin. |
Fan Devices (fanDevices)
Optional settings for iFan devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
hideLight |
boolean |
- | If true, the light switch will be hidden from HomeKit. |
ipAddress |
string |
- | You can manually set the IP address for this device if it cannot be discovered by the plugin. |
Sensor Devices (sensorDevices)
Optional settings for the DW2 and Zigbee sensor devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
deviceModel |
string |
- | This setting has no effect except showing the relevant options for this model below. |
showAs |
string |
- | Expose this device as a different HomeKit accessory type. |
lowBattThreshold |
number |
- | HomeKit will set the low battery status for this device when the battery (if it has one) reaches this percentage level. Must be 5 or more. |
offset |
number |
- | You can offset the temperature that the SNZB-02 sensor reads. An offset of 2 means 2 degrees will be added to the recorded temperature. Can be positive or negative and can include a decimal point '.'. |
offsetFactor |
boolean |
- | If true then the above value will be used as a factor, i.e. the recorded temperature will be multipled by this number instead. |
humidityOffset |
number |
- | You can offset the humidity that the SNZB-02 sensor reads. An offset of 2 means 2% will be added to the recorded relative humidity. Can be positive or negative. |
humidityOffsetFactor |
boolean |
- | If true then the above value will be used as a factor, i.e. the recorded humidity will be multipled by this number instead. |
hideLongDouble |
boolean |
- | If true, double and long press options will be hidden for this Zigbee Button. |
scaleBattery |
boolean |
- | If true, the battery reading for this Zigbee Contact Sensor will be multiplied by 10. |
sensorTimeDifference |
number |
- | An offset in seconds to ignore notifications if the delay between this Zigbee Motion/Leak activating or Zigbee Button press and the plugin receiving the notification is greater than this number. Must be 5 or more. |
RF Devices (rfDevices)
Optional settings for RF Bridge devices.
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
deviceId |
string |
- | Enter the 10 digit eWeLink Device ID to begin. |
ignoreDevice |
boolean |
- | If true, this accessory will be removed and ignored from HomeKit. |
resetOnStartup |
boolean |
- | If true, the plugin will remove and re-add all subdevices when the plugin initialises. Useful if adding or removing subdevices via the eWeLink app. |
ipAddress |
string |
- | You can manually set the IP address for this device if it cannot be discovered by the plugin. |
RF Sensor Devices (bridgeSensors)
Optional settings for RF Bridge subdevices to expose different sensor types (more info).
| Setting | Type | Default | Explanation |
|---|---|---|---|
label |
string |
- | This setting has no effect except to help identify this device. |
fullDeviceId |
string |
- | Enter the Device ID of the sensor to begin (13 digits normally in the format 1000ab23cdSW2). |
deviceType |
string |
- | Select the type of RF device this is. |
curtainType |
string |
- | Select the type of accessory you would like to expose this as. |
operationTime |
number |
- | The time to open/close the device. This setting is in deciseconds - count the time in seconds and multiply by 10, for example 75 for 7.5 seconds. Must be 20 or more. |
operationTimeDown |
number |
- | If your device has a different operation time for up and down, use this setting to specify the operation time DOWN (in deciseconds) and the other setting to specify the operation time UP. Otherwise leave blank. Must be 20 or more. |
type |
string |
- | Select the type of sensor you would like to expose this as. |
sensorTimeLength |
number |
- | The number of seconds which the sensor tile in the Home app will light up for if this sensor is activated. Must be 1 or more. |
sensorTimeDifference |
number |
- | An offset in seconds to ignore notifications if the delay between this sensor activating and the plugin receiving the notification is greater than this number. Must be 5 or more. |
sensorWebHook |
string |
- | A URL for the plugin to ping when the sensor is activated. |