wemo integration is the main integration to integrate various Belkin WeMo devices with Home Assistant.
There is currently support for the following device types within Home Assistant:
- Binary Sensor (Belkin WeMo Motion Sensor)
- Fan (Belkin WeMo (Holmes) Smart Humidifier)
- Light (Belkin WeMo LED lights and Smart Dimmer Switch)
- Switch (Belkin WeMo Switches and includes support for WeMo enabled Mr. Coffee smart coffee makers.)
Supported devices will be automatically discovered if the optional
discovery configuration item is omitted or set to true or if the
discovery integration is enabled. If the
discovery configuration item is set to false, then automatic discovery of WeMo devices is disabled both for the
wemo integration and for the
discovery component. Loading the
wemo integration with the
discovery configuration item omitted or set to true will scan the local network for WeMo devices, even if you are not using the
# Example configuration.yaml entry with automatic discovery enabled (by omitting the discovery configuration item) wemo: # Example configuration.yaml entry with automatic discovery enabled (by explicitly setting the discovery configuration item) wemo: discovery: true
Alternately, WeMo devices that are not discoverable can be statically configured. If you have WeMo devices on subnets other than where Home Assistant is running, or devices in a remote location reachable over a VPN, you will need to configure them manually. Statically configured devices may be used with or without automatic discovery enabled. Example static configuration:
# Example configuration.yaml entry with automatic discovery disabled, and 2 statically configured devices wemo: discovery: false static: - 192.168.1.23 - 192.168.52.172
Note that if you use static device entries, you may want to set up your router (or whatever runs your DHCP server) to force your WeMo devices to use a static IP address. Check the DHCP section of your router configuration for this ability.
If the device doesn’t seem to work and all you see is the state “unavailable” on your dashboard, check that your firewall doesn’t block incoming requests on port 8989, since this is the port to which the WeMo devices send their updates.
Various software that emulate WeMo devices often use alternative ports. Static configuration should include the port value:
# Example configuration.yaml entry with static device entries that include non-standard port numbers wemo: static: - 192.168.1.23:52001 - 192.168.52.172:52002
wemo platform allows you to control your Belkin WeMo humidifiers from within Home Assistant. This includes support for the Holmes Smart Humidifier.
WeMo devices are automatically discovered if the
discovery integration is enabled.
There are several attributes which can be used for automations and templates:
||An integer that indicates the current relative humidity percentage of the room, as determined by the device’s onboard humidity sensor.|
||String that indicates the current fan speed setting, as reported by the WeMo humidifier.|
||A boolean that indicates whether the filter has expired and needs to be replaced.|
||The used life of the filter (as a percentage).|
||An integer that indicates the desired relative humidity percentage (this is constrained to the humidity settings of the device, which are 45, 50, 55, 60, and 100).|
||String that indicates whether the water level is Good, Low, or Empty.|
There are several services which can be used for automations and control of the humidifier:
||Calling this service sets the fan speed (entity_id and speed are required parameters, and speed must be one of the following: off, low, medium, or high). When selecting low for the speed, this will map to the WeMo humidifier speed of minimum. When selecting high for the speed, this will map to the WeMo humidifier speed of maximum. The WeMo humidifier speeds of low and high are unused due to constraints on which fan speeds Home Assistant supports.|
||Calling this service will toggle the humidifier between on and off states.|
||Calling this service will turn the humidifier off (entity_id is required).|
||Calling this service will turn the humidifier on and set the speed to the last used speed (defaults to medium, entity_id is required).|
||Calling this service will set the desired relative humidity setting on the device (entity_id is a required list of 1 or more entities to set humidity on, and target_humidity is a required float value between 0 and 100 (this value will be rounded down and mapped to one of the valid desired humidity settings of 45, 50, 55, 60, or 100 that are supported by the WeMo humidifier)).|
||Calling this service will reset the humdifier’s filter life back to 100% (entity_id is a required list of 1 or more entities to reset the filter life on). Call this service when you change the filter on your humidifier.|
Long Press Events and Triggers
For WeMo Light Switches and Dimmers, pressing the button on the device for two seconds will activate a long press event. The long-press can trigger an automation
either by using an
event trigger or a
device trigger. For an
event trigger the
event_type will be
wemo_subscription_event. The event data will have a
set to the value
LongPress and a
name parameter indicating the dimmer or light switch that was triggered.
The following is an example implementation of an automation:
# Example automation - id: long_press_living_room alias: "Toggle amplifier power" trigger: - platform: event event_type: wemo_subscription_event event_data: type: LongPress name: Living Room action: - service: media_player.toggle target: entity_id: media_player.amplifier
device automation can also be used through the automation editor. Look for the
Wemo button was pressed for 2 seconds trigger for the dimmer or light switch device.
Note: Due to the way that long press events are received by Home Assistant, modifying any of the Rules through the WeMo app can cause long press events to stop working until Home Assistant is restarted. Home Assistant modifies the local device’s rules database to enable long press event support. This local modification is not synchronized with the cloud service. Any rule changes from the cloud service (via the app) will likely overwrite the local changes made by Home Assistant.