Skip to content
Ben edited this page Dec 9, 2021 · 5 revisions

⚠️ It is recommended (and easier) to use the Homebridge/HOOBS UI plugin settings screen to configure the plugin

Required Settings

Add the following to your configuration file in the appropriate place. The following are the basic required fields.

{
   "name": "Wemo",
   "platform": "Wemo"
}
  • ⚠️ The "platform": "Wemo" line must not be changed

Optional Settings

Entry Type Default Explanation
mode str "auto"

This setting defines how the plugin finds your devices.

  • "auto" - the plugin will discover all devices and manual devices
  • "semi" - the plugin will discover configured devices and manual devices
  • "manual" - the plugin will discover manual devices
discoveryInterval int 30 An interval (in seconds) in which the plugin will broadcast on your network to initally find devices and repair connection errors. Must be 15 or more.
pollingInterval int 30 An interval (in seconds) in which the plugin will request status updates for devices that don't support UPnP or have it manually disabled. Must be 15 or more.
disableUPNP bool false Global disable option for UPnP. HTTP polling will be used instead. This can also be overridden per accessory later in the config.
wemoClient object {}

Example below gives default values.

"wemoClient": {
   "listen_interface": "",
   "port": 0,
   "discover_opts": {
      "interfaces": "",
      "explicitSocketBind": true
   }
}

Where:

  • listen_interface
    • the network interface to listen on
  • port
    • a port to bind to for listening to UPnP events (if 0 then a random port is used)
  • discover_opts.interfaces
    • a list of interfaces to explicitly bind (if empty then bind to all)
  • discover_opts.explicitSocketBind
    • if true then bind sockets to each discovered interface explicitly instead of relying on the system
disableDeviceLogging bool false If true, updates for all devices will not be added to the log when they are controlled.
debug bool false If true, more information will be added to the log.
debugFakegato bool false If true, the included Fakegato library will debug to the log.
debugNodeSSDP bool false If true, the included node-ssdp library will debug to the log.
removeByName str "" Define an accessory by Homebridge name to remove from the cache. For example "My Lights". This can be useful for removing orphan accessories that you no longer have access to.
disablePlugin bool false If true, the plugin will remove all accessories and not load the plugin on restart.
makerTypes array []

An array of objects to define custom options for your Wemo Maker devices.

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of your device
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • makerType - How to expose in HomeKit, can be switch or garageDoor
  • makerTimer - The number of seconds it takes to open/close this garage (only used if makerType:garageDoor)
  • reversePolarity - If true, the plugin will reverse the 'Open' and 'Closed' HomeKit states (only used if makerType:switch)
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"makerTypes": [
   {
      "serialNumber": "22************",
      "label": "Front Garage",
      "makerType": "garageDoor",
      "makerTimer": 20,
      "overrideLogging": "default"
   }
]
wemoInsights array []

An array of objects to define custom options for your Wemo Insight devices.

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of your device
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • showTodayTC - If true, today's consumption will show in the Eve app's Total Consumption field instead of the cumulative value
  • wattDiff - The plugin will not log device wattage if the difference from the previous value is less than this number (must be 1 or more)
  • timeDiff - The plugin will not log device wattage if the time difference (in seconds) from the previous value is less than this number. Must be 1 or more
  • showAs - Expose this device as an 'Outlet' (default), 'Switch' (switch) or 'Air Purifier' (purifier)
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"wemoInsights": [
   {
      "serialNumber": "22************",
      "label": "Washing Machine Outlet",
      "showTodayTC": false,
      "wattDiff": 3,
      "showAs": "default",
      "overrideLogging": "debug"
   }
]
wemoLights array []

An array of objects to define custom options for your Wemo Light Switch, Dimmer and Bulb devices.

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of your device, in the case of a Wemo Bulb (via Link) then use the device ID of the bulb, not the serial number of the Link
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • brightnessStep - A minimum step for the brightness slider in the Home app. Must be 1 or more.
  • adaptiveLightingShift - 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
  • transitionTime - Transition time (in seconds?) for brightness and colour temperature changes. Applies to Wemo Bulb (not Dimmer). Must be 0 or more
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"wemoLights": [
   {
      "serialNumber": "22************",
      "label": "Bedroom Lamp",
      "brightnessStep": 10,
      "adaptiveLightingShift": 15,
      "transitionTime": 0,
      "overrideLogging": "standard"
   }
]
wemoLinks array []

An array of objects to define custom options for your Wemo Link hubs.

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of the link
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml

Example:

"wemoLinks": [
   {
      "label": "Wemo Link",
      "serialNumber": "22************",
      "manualIP": "192.168.1.18"
   }
]
wemoMotions array []

An array of objects to define custom options for your Wemo Motion devices (Motion Sensor/NetCam).

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of your device
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • noMotionTimer - A timer (in seconds) for how long after motion is not detected that the state is changed
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"wemoMotions": [
   {
      "serialNumber": "22************",
      "label": "Kitchen Sensor",
      "noMotionTimer": 60,
      "overrideLogging": "disable"
   }
]
wemoOthers array []

An array of objects to define custom options for your Wemo Heater, Dehumidifier, Air Purifier and Crockpot devices.

  • label - This setting has no effect except to help identify this device
  • serialNumber - serial number of your device
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"wemoOthers": [
   {
      "serialNumber": "22************",
      "label": "Bathroom Heater",
      "overrideLogging": "default"
   }
]
wemoOutlets array []

An array of objects to define custom options for your Wemo Outlet devices.

  • label - This setting has no effect except to help identify this device
  • serialNumber - Serial number of your device
  • ignoreDevice - If true, this accessory will be removed and ignored from HomeKit
  • showAs - Expose this device as an 'Outlet' (default), 'Switch' (switch) or 'Air Purifier' (purifier)
  • manualIP - If the plugin cannot discover this device you can specify its IP and the plugin will try to determine the correct port. You can also specify a full address to specify both the IP and the port, e.g. http://192.168.1.1:49153/setup.xml
  • overrideLogging - Override global logging setting for this device. Can be default (follows global setting), standard for standard logging, debug for debug logging or disable to disable accessory logging

Example:

"wemoOutlets": [
   {
      "serialNumber": "22************",
      "label": "Hall Light",
      "showAsType": "outlet",
      "overrideLogging": "debug"
   }
]
Clone this wiki locally