WEMO Binding - Could not call WeMo

One of my two insight devices stopped working in the early hours of the morning and can’t be controlled from OpenHAB 2, although it can be controlled from the Wemo App, my other Wemo insight is working normally. In the log I get “could not call wemo” error messages every 2 minutes, and I get an error message every time I try to turn it on or off.
@hmerk is there a way of troubleshooting this, or do I need a later version of the binding? Should I just reboot OpenHAB?

2017-04-03 08:48:22.054 [ERROR] [ome.binding.wemo.handler.WemoHandler] - Failed to get actual state for device 'wemo:insight:Insight-1_0-221524K1200060': Could not call WeMo
2017-04-03 08:48:52.761 [ERROR] [ome.binding.wemo.handler.WemoHandler] - Failed to send command 'ON' for device 'wemo:insight:Insight-1_0-221524K1200060': Could not call WeMo
2017-04-03 08:48:57.334 [ERROR] [ome.binding.wemo.handler.WemoHandler] - Failed to send command 'OFF' for device 'wemo:insight:Insight-1_0-221524K1200060': Could not call WeMo
2017-04-03 08:50:22.053 [ERROR] [ome.binding.wemo.handler.WemoHandler] - Failed to get actual state for device 'wemo:insight:Insight-1_0-221524K1200060': Could not call WeMo

UPDATE: Whilst looking for something else I found possibly a duplicate instance of this item in org.eclipse.smarthome.core.items.item.json. It was the only entry in there, so I’ve deleted it followed by a reboot and that insight switch still works. I will keep an eye out for more log errors and see if the error returns. Looking in the backup folder, the only backup of org.eclipse.smarthome.core.items.item.json was created 2 days ago after a scheduled reboot at 3:50am, and the error started around 48 hours later at around 3:50am

As there are no relevant changes to the binding, you don’t need to upgrade. This error can happen from time to time, only solution is to restart openHAB.

I’ve created a bounty to have the WeMo binding updated to dynamically follow port changes on it’s next version.

Best, Jay

Sorry, will not be able to provide an update in short time. In the meantime, you could try the following:
When WeMo devices become unresponsive, trigger a scan for new WeMo devices in PaperUI.
This should update existing devices.
Please post here if this works, we then can create a workaround.
Best
Hans-Jörg

I have confirmed this does NOT work; only way to get a WeMo device back online with OH is either

  1. unplug/plugin the device so it resets the port back to the original port it boots up on
  2. restart OH so it re-discovers the new port the WeMo device changed to

Best, Jay

Thanks, thats strange. a restart of openHAB does start a scan for WeMo devices in the same way.
Anyway, could you please check if restarting the WeMo Binding in Karaf console would solve this issue.

If this solves the issue, we could create a rule to restart the binding.
If not, I am out of ideas, as the only thing I could do within the bindings code is to trigger a new scan when the device becomes unresponsive.

Hi Hans,

It did NOT work; here’s the results. I tried 3 times.

openhab> list -s | grep wemo
232 │ Active    │  80 │ 0.11.0.oh250M1          │ org.eclipse.smarthome.binding.wemo
openhab> bundle:restart 232
openhab> bundle:restart 232
openhab> bundle:restart 232
openhab>

OH says it turned it ON but it actually did NOT.

2019-04-24 19:35:13.213 [INFO ] [g.eclipse.smarthome.model.script.HUE] - HUE Jays Office Motion Occurred, turning ON Wallplug_Jays_Office_Light with a 15 minute timer.
2019-04-24 19:35:18.222 [INFO ] [.eclipse.smarthome.model.script.WeMo] - Wallplug_Jays_Office_Light setting a CATCH ALL 20 minute timer to turn OFF light.
2019-04-24 19:36:03.251 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'hue:bridge:E6B0D4405E3B' to inbox.

The hue:bridge discovery was from doing the Karaf WeMo recycle from above.

Who can you recommend in modifying the binding to look for the different port the WeMo device starts to crawl upward on when the device is unresponsive?

Best, Jay

Sorry, but I can not recommend anybody. Development is nothing we could delegate to anyone. Its complete up to the developers/contributers to step up and add things. I will try to find some time to see why a restart of the binding does not update the discovery result, as this is what it should do.

The strange thing I see, I have only one Insight Switch running at the moment, which does not show this behaviour. My openHAB instance is running since more than a week since the last restart (rebootet the server due to OS updates) and the Insight switch is running since a couple of month without a restart. No “could not call WeMo” messages in the log.

I also have 2 insight switches and they do NOT have this behavior; it’s the basic WeMo plugs that have the issues. Here’s a list of my WeMo devices. I also have WeMo light switches and they don’t seem to have the issue either.

Switch		Switch_Backdoor_Light					"Backdoor Light [MAP(On_Off.map):%s]"				<wallswitch>		(WeMo)	{ channel="wemo:lightswitch:Lightswitch-1_0-221736K1300F26:state" }
Switch		Switch_Frontdoor_Light					"Frontdoor Light [MAP(On_Off.map):%s]"				<wallswitch>		(WeMo)	{ channel="wemo:lightswitch:Lightswitch-1_0-221622K130115C:state" }
Switch		Switch_Basement_Light					"Basement Light [MAP(On_Off.map):%s]"				<wallswitch>		(WeMo)	{ channel="wemo:lightswitch:Lightswitch-1_0-221736K1300F5B:state" }
Switch		Switch_Hallway_Light					"Hallway Light [MAP(On_Off.map):%s]"				<wallswitch>		(WeMo)	{ channel="wemo:lightswitch:Lightswitch-1_0-221838K1302422:state" }
Switch		Switch_LaundryRoom_Light				"Laundry Room Light [MAP(On_Off.map):%s]"			<wallswitch>		(WeMo)	{ channel="wemo:lightswitch:Lightswitch-1_0-221602K1301B7A:state" }

**Switch	Wallplug_Jays_Office_Light		        "Jays Lamp [MAP(On_Off.map):%s]" 					<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221742K0118E30:state" }**
Switch	    Wallplug_Living_Room_Light				"Livingroom Lamp [MAP(On_Off.map):%s]" 				<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221620K01013B1:state" }
**Switch	Wallplug_Loft_Light					    "Loft Lamp [MAP(On_Off.map):%s]"					<poweroutlet_us>	(WeMo)	{ channel="wemo:socket:Socket-1_0-221739K0103039:state" }**
Switch		Wallplug_Master_Bedroom_Left_Light		"MB Left Light [MAP(On_Off.map):%s]" 				<poweroutlet_us>	(WeMo)	{ channel="wemo:socket:Socket-1_0-221612K0102B49:state" }
Switch		Wallplug_Master_Bedroom_Right_Light		"MB Right Light [MAP(On_Off.map):%s]"				<poweroutlet_us>	(WeMo)	{ channel="wemo:socket:Socket-1_0-221710K010228E:state" }
Switch		Wallplug_String_Lights					"String Lights [MAP(On_Off.map):%s]" 				<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221609K0100F65:state" }
Switch		Wallplug_xMas_Tree						"xMas / Salt Lamp [MAP(On_Off.map):%s]" 			<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221749K0102A74:state" }
Switch		Wallplug_Loft_Dehumidifier				"Loft Dehumidifier [MAP(On_Off.map):%s]" 			<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221749K0102FCD:state" }
Switch		Wallplug_Basement_Dehumidifier			"Basement Dehumidifier [MAP(On_Off.map):%s]"		<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221749K0102E6D:state" }
Switch		Wallplug_MyLamp							"Tricias Lamp [MAP(On_Off.map):%s]"					<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-22B8B1K01028F4:state" }
**Switch	Wallplug_TreeLights					    "Tree Lights [MAP(On_Off.map):%s]"					<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-221749K01027A4:state" }**
**Switch	Wallplug_GrandFather				    "Grand Father Clock MAP(On_Off.map):%s]"			<poweroutlet_us> 	(WeMo)	{ channel="wemo:socket:Socket-1_0-22C8B1K0108E93:state" }**

The ones with ** by them seem to have the biggest issues.

When OH does’t turn them on; I ask Alexa to and it works.

Best, Jay

Hi Jay,
thanks for this very important information. Out of all “complains” I understood that all WeMo devices have this issue. This really explains why I don’t see it in my installation and could not reproduce it.
So I will get an old WeMo Switsch out of my cellar and start some testing.

Best
Hans-Jörg

Just to add to this, I have the same problem with Wemo dimmers.

2019-06-12 08:13:47.261 [ERROR] [nding.wemo.handler.WemoDimmerHandler] - Failed to get actual state for device 'wemo:dimmer:Dimmer-1_0-241741K1505461': Could not call WeMo

I am happy to help test if needed.

WeMo Dimmer support is experimental, not finished yet. It was hard to get one delivered to Germany at a reasonable price.
Still working on the issues, but not having much time atm.