Wemo switch and insight smart plug

Did anyone ever get this ported?

Sorry, I haven’t had any time to devote to this lately, but I’ll try to get something out in the next couple of days.

1 Like

Thank you Jason. I truly appreciate what you have done and are doing.

I posted a dimmer driver and an updated Connect app. If anyone would like to give those a try, install both, then add a dimmer in the Connect app and let me know if that works. (These have only been lightly tested since I don't have a dimmer.)

Jason @jason0x43 ,

I removed all devices, application, and drivers. Rebooted the hub. I then added the drivers, the user app, pulled it into Apps, and ran discover. It found the plugs and switches, but so far has not found the three dimmers. No issues identified in logs.

YF

What do the logs look like for the Wemo Connect app while it's looking for devices? In particular, do you see messages with the following format?

Parsed discovery message: urn:Belkin:device:controllee:1

The name after "device:" denotes what kind of device is replying ("controller" is a classic switch, "lightswitch" is a newer switch, etc.). From looking at some other WeMo dimmer implementations I had assumed a dimmer would be "dimmer", but it might not be. Or there might be something else going on.

logs:
app:1312019-05-14 07:45:17.009 pm traceFound devices: [24F5A2602E55:Entry, 58EF68F434F9:Living Room Table Lamp, 302303085A61:Porch, 30230307C89D:Bedroom Fan, 24F5A24B61E1:My Bedside Lamp, 302303085AF1:Living Room Fan, 24F5A24B6325:Bedside Lamp]

app:1312019-05-14 07:45:16.996 pm traceGetting WeMo devices

app:1312019-05-14 07:45:16.992 pm traceGetting discovered devices

app:1312019-05-14 07:45:16.989 pm traceGetting WeMo devices

app:1312019-05-14 07:45:16.985 pm traceVerifying devices

app:1312019-05-14 07:44:46.985 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.981 pm traceGetting devices for event

app:1312019-05-14 07:44:46.978 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.974 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.971 pm traceGetting devices for event

app:1312019-05-14 07:44:46.967 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.963 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.960 pm traceGetting devices for event

app:1312019-05-14 07:44:46.957 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.953 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.950 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.946 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.943 pm traceGetting devices for event

app:1312019-05-14 07:44:46.939 pm traceGetting devices for event

app:1312019-05-14 07:44:46.936 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.932 pm traceParsed discovery message: urn:Belkin:device:controllee:1

app:1312019-05-14 07:44:46.928 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.925 pm traceGetting devices for event

app:1312019-05-14 07:44:46.921 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.908 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.893 pm traceGetting devices for event

app:1312019-05-14 07:44:46.889 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.885 pm traceGetting devices for event

app:1312019-05-14 07:44:46.882 pm traceParsed discovery message: urn:Belkin:device:lightswitch:1

app:1312019-05-14 07:44:46.859 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.854 pm traceGetting devices for event

app:1312019-05-14 07:44:46.848 pm traceParsed discovery message: urn:Belkin:device:controllee:1

app:1312019-05-14 07:44:46.778 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.773 pm traceGetting devices for event

app:1312019-05-14 07:44:46.767 pm traceParsed discovery message: urn:Belkin:device:controllee:1

app:1312019-05-14 07:44:46.614 pm traceFound devices: [24F5A2602E55:Entry, 58EF68F434F9:Living Room Table Lamp, 302303085A61:Porch, 30230307C89D:Bedroom Fan, 24F5A24B61E1:My Bedside Lamp, 302303085AF1:Living Room Fan, 24F5A24B6325:Bedside Lamp]

app:1312019-05-14 07:44:46.604 pm traceGetting WeMo devices

app:1312019-05-14 07:44:46.600 pm traceGetting discovered devices

app:1312019-05-14 07:44:46.597 pm tracediscoverAllWemoTypes

dev:1122019-05-14 07:44:42.604 pm traceparse()

dev:1122019-05-14 07:44:42.556 pm traceNotify: BinaryState = 0

dev:1122019-05-14 07:44:42.529 pm traceScheduling resubscription in 270 s

dev:1122019-05-14 07:44:42.524 pm traceUpdating subscriptionId to a0bc876e-1dd1-11b2-af64-8c70876a2939

dev:1122019-05-14 07:44:42.513 pm traceparse()

dev:1122019-05-14 07:44:42.501 pm traceparse()

dev:1122019-05-14 07:44:42.460 pm traceGetBinaryResponse: BinaryState = 0

dev:1122019-05-14 07:44:42.393 pm traceparse()

dev:1122019-05-14 07:44:42.308 pm debugpoll()

app:1312019-05-14 07:44:42.286 pm debugchildTimeSyncResponse(Bedside Lamp)

app:1312019-05-14 07:44:42.271 pm traceClearing existing sid

app:1312019-05-14 07:44:42.267 pm debugchildSubscribe(Bedside Lamp)

app:1312019-05-14 07:44:42.263 pm debugchildRefresh(Bedside Lamp)

dev:1122019-05-14 07:44:42.241 pm debugrefresh()

app:1312019-05-14 07:44:42.224 pm traceSetting up device subscription...

app:1312019-05-14 07:44:42.221 pm traceDevice Bedside Lamp with id 24F5A24B6325 already exists

dev:1112019-05-14 07:44:42.171 pm traceNotify: BinaryState = 1

dev:1112019-05-14 07:44:42.109 pm traceScheduling resubscription in 270 s

dev:1112019-05-14 07:44:42.104 pm traceUpdating subscriptionId to a07cbe18-1dd1-11b2-ba92-9cd8e3e723bb

dev:1112019-05-14 07:44:42.095 pm traceparse()

dev:1112019-05-14 07:44:42.069 pm traceparse()

dev:1112019-05-14 07:44:42.006 pm traceGetBinaryResponse: BinaryState = 1

dev:1112019-05-14 07:44:41.943 pm traceparse()

dev:1112019-05-14 07:44:41.833 pm debugpoll()

app:1312019-05-14 07:44:41.812 pm debugchildTimeSyncResponse(Living Room Fan)

app:1312019-05-14 07:44:41.800 pm traceClearing existing sid

app:1312019-05-14 07:44:41.797 pm debugchildSubscribe(Living Room Fan)

app:1312019-05-14 07:44:41.793 pm debugchildRefresh(Living Room Fan)

dev:1112019-05-14 07:44:41.771 pm debugrefresh()

app:1312019-05-14 07:44:41.765 pm traceSetting up device subscription...

app:1312019-05-14 07:44:41.762 pm traceDevice Living Room Fan with id 302303085AF1 already exists

dev:1142019-05-14 07:44:41.699 pm traceparse()

dev:1142019-05-14 07:44:41.650 pm traceNotify: BinaryState = 0

dev:1142019-05-14 07:44:41.626 pm traceScheduling resubscription in 270 s

dev:1142019-05-14 07:44:41.615 pm traceUpdating subscriptionId to a04b9db0-1dd1-11b2-8cbb-a336df66b7f3

dev:1142019-05-14 07:44:41.602 pm traceparse()

dev:1142019-05-14 07:44:41.589 pm traceparse()

dev:1142019-05-14 07:44:41.551 pm traceGetBinaryResponse: BinaryState = 0

dev:1142019-05-14 07:44:41.492 pm traceparse()

dev:1142019-05-14 07:44:41.407 pm debugpoll()

app:1312019-05-14 07:44:41.379 pm debugchildTimeSyncResponse(My Bedside Lamp)

app:1312019-05-14 07:44:41.367 pm traceClearing existing sid

app:1312019-05-14 07:44:41.363 pm debugchildSubscribe(My Bedside Lamp)

app:1312019-05-14 07:44:41.360 pm debugchildRefresh(My Bedside Lamp)

dev:1142019-05-14 07:44:41.339 pm debugrefresh()

app:1312019-05-14 07:44:41.333 pm traceSetting up device subscription...

app:1312019-05-14 07:44:41.330 pm traceDevice My Bedside Lamp with id 24F5A24B61E1 already exists

dev:1132019-05-14 07:44:41.243 pm traceNotify: BinaryState = 0

dev:1132019-05-14 07:44:41.205 pm traceScheduling resubscription in 270 s

dev:1132019-05-14 07:44:41.201 pm traceUpdating subscriptionId to 9ff9706c-1dd1-11b2-85c6-8e18e869f55d

dev:1132019-05-14 07:44:41.197 pm traceparse()

dev:1132019-05-14 07:44:41.177 pm traceparse()

dev:1132019-05-14 07:44:41.140 pm traceGetBinaryResponse: BinaryState = 0

dev:1132019-05-14 07:44:41.074 pm traceparse()

dev:1132019-05-14 07:44:40.994 pm debugpoll()

app:1312019-05-14 07:44:40.972 pm debugchildTimeSyncResponse(Bedroom Fan)

app:1312019-05-14 07:44:40.959 pm traceClearing existing sid

app:1312019-05-14 07:44:40.956 pm debugchildSubscribe(Bedroom Fan)

app:1312019-05-14 07:44:40.952 pm debugchildRefresh(Bedroom Fan)

dev:1132019-05-14 07:44:40.931 pm debugrefresh()

app:1312019-05-14 07:44:40.919 pm traceSetting up device subscription...

app:1312019-05-14 07:44:40.915 pm traceDevice Bedroom Fan with id 30230307C89D already exists

dev:1102019-05-14 07:44:40.837 pm traceNotify: BinaryState = 0

dev:1102019-05-14 07:44:40.794 pm traceScheduling resubscription in 270 s

dev:1102019-05-14 07:44:40.786 pm traceUpdating subscriptionId to 9fb29cf0-1dd1-11b2-9834-f3e89cafb3e3

dev:1102019-05-14 07:44:40.781 pm traceparse()

dev:1102019-05-14 07:44:40.758 pm traceparse()

dev:1102019-05-14 07:44:40.713 pm traceGetBinaryResponse: BinaryState = 0

dev:1102019-05-14 07:44:40.653 pm traceparse()

dev:1102019-05-14 07:44:40.559 pm debugpoll()

app:1312019-05-14 07:44:40.536 pm debugchildTimeSyncResponse(Porch)

app:1312019-05-14 07:44:40.521 pm traceClearing existing sid

app:1312019-05-14 07:44:40.517 pm debugchildSubscribe(Porch)

app:1312019-05-14 07:44:40.513 pm debugchildRefresh(Porch)

dev:1102019-05-14 07:44:40.490 pm debugrefresh()

app:1312019-05-14 07:44:40.469 pm traceSetting up device subscription...

app:1312019-05-14 07:44:40.465 pm traceDevice Porch with id 302303085A61 already exists

dev:1092019-05-14 07:44:40.391 pm traceparse()

dev:1092019-05-14 07:44:40.328 pm traceNotify: BinaryState = 0

dev:1092019-05-14 07:44:40.268 pm traceScheduling resubscription in 270 s

dev:1092019-05-14 07:44:40.263 pm traceUpdating subscriptionId to 9f63b0c2-1dd1-11b2-ae84-a1cf04d7165d

dev:1092019-05-14 07:44:40.255 pm traceparse()

dev:1092019-05-14 07:44:40.235 pm traceparse()

dev:1092019-05-14 07:44:40.193 pm traceGetBinaryResponse: BinaryState = 0

dev:1092019-05-14 07:44:40.127 pm traceparse()

dev:1092019-05-14 07:44:40.035 pm debugpoll()

app:1312019-05-14 07:44:40.010 pm debugchildTimeSyncResponse(Living Room Table Lamp)

app:1312019-05-14 07:44:39.997 pm traceClearing existing sid

app:1312019-05-14 07:44:39.993 pm debugchildSubscribe(Living Room Table Lamp)

app:1312019-05-14 07:44:39.989 pm debugchildRefresh(Living Room Table Lamp)

dev:1092019-05-14 07:44:39.966 pm debugrefresh()

app:1312019-05-14 07:44:39.952 pm traceSetting up device subscription...

app:1312019-05-14 07:44:39.946 pm traceDevice Living Room Table Lamp with id 58EF68F434F9 already exists

dev:1082019-05-14 07:44:39.885 pm traceNotify: BinaryState = 0

dev:1082019-05-14 07:44:39.811 pm traceScheduling resubscription in 270 s

dev:1082019-05-14 07:44:39.806 pm traceUpdating subscriptionId to 9f22b950-1dd1-11b2-b99a-8ffdd5597fa3

dev:1082019-05-14 07:44:39.801 pm traceparse()

dev:1082019-05-14 07:44:39.770 pm traceparse()

dev:1082019-05-14 07:44:39.710 pm traceGetBinaryResponse: BinaryState = 0

dev:1082019-05-14 07:44:39.636 pm traceparse()

dev:1082019-05-14 07:44:39.495 pm debugpoll()

app:1312019-05-14 07:44:39.469 pm debugchildTimeSyncResponse(Entry)

app:1312019-05-14 07:44:39.445 pm traceClearing existing sid

app:1312019-05-14 07:44:39.441 pm debugchildSubscribe(Entry)

app:1312019-05-14 07:44:39.438 pm debugchildRefresh(Entry)

dev:1082019-05-14 07:44:39.413 pm debugrefresh()

app:1312019-05-14 07:44:39.393 pm traceSetting up device subscription...

app:1312019-05-14 07:44:39.389 pm traceDevice Entry with id 24F5A2602E55 already exists

app:1312019-05-14 07:44:39.358 pm traceGetting WeMo devices

app:1312019-05-14 07:44:39.354 pm traceInitializing devices

app:1312019-05-14 07:44:39.344 pm debugInitializing

app:1312019-05-14 07:44:39.340 pm debugUpdated

app:332019-05-14 07:44:39.085 pm debugDiscovering Konnected devices on the network via SSDP

app:1312019-05-14 07:44:36.080 pm traceFound devices: [24F5A2602E55:Entry, 58EF68F434F9:Living Room Table Lamp, 302303085A61:Porch, 30230307C89D:Bedroom Fan, 24F5A24B61E1:My Bedside Lamp, 302303085AF1:Living Room Fan, 24F5A24B6325:Bedside Lamp]

app:1312019-05-14 07:44:36.068 pm traceGetting WeMo devices

app:1312019-05-14 07:44:36.063 pm traceGetting discovered devices

app:1312019-05-14 07:44:36.060 pm traceGetting WeMo devices

app:1312019-05-14 07:44:36.056 pm traceVerifying devices

Jason, I thought to check to see what my FING BOX had to provide re. dimmers. It identifies them as "urn:Belkin:device:dimmer:1"

UPnP

Name: Living Room Spot
Model: Dimmer
Vendor: Belkin
Devices: * urn:Belkin:device:dimmer:1*
Services:
WiFiSetup(1)
basicevent(1)
deviceinfo(1)
firmwareupdate(1)
manufacture(1)
metainfo(1)
remoteaccess(1)
rules(1)
smartsetup(1)
timesync(1)

I hope that helps.

Ohhh, I think I see what’s happening. You’re not getting any discovery messages from dimmers because I didn’t update the connect app to query dimmers. I’ll have an update out for that tomorrow.

I posted an updated version of the Connect app (Last updated: 2019-05-15, 08:37:21-0400) that more specifically pays attention to dimmer devices. Update that, let it search for devices, and let's see if it does a bit better.

:cowboy_hat_face: Well done, Jason.
Discovery found the three dimmers and brought them into Devices. I tested each device individually in Devices. I have built a dashboard and also tested with Google Home via Google mini voice command. Voice command works perfectly, but dashboard and device page dimmer control is not working correctly

The dimmer function within Dashboard does not cause the dimmer to dim or brighten unless you change the state. If I have a dimmer at 100 percent and lower brightness to 50 percent with slider, nothing happens. If I turn it off, the slider shows the value I set the dimmer to. If I turn it on, it decreases or increases to the value indicated on the slider. Looks like it is not generating the set command (or equivalent) to commit the slider change.

I see similar behavior with the controls on the individual device page.

Here is the log sequence from the dashboard test:

dev:1702019-05-15 12:10:35.492 pm traceNotify: BinaryState = 1

dev:1702019-05-15 12:10:35.452 pm traceparse()

dev:1702019-05-15 12:10:34.771 pm traceGot SetBinaryStateResponse = 1

dev:1702019-05-15 12:10:34.732 pm traceparse()

app:1942019-05-15 12:10:34.656 pm traceSetting binary state to [BinaryState:1]

dev:1702019-05-15 12:10:34.634 pm debugon()

dev:1702019-05-15 12:10:34.519 pm traceNotify: BinaryState = 0

dev:1702019-05-15 12:10:34.466 pm traceparse()

dev:1702019-05-15 12:10:33.197 pm traceGot SetBinaryStateResponse = 0

dev:1702019-05-15 12:10:33.158 pm traceparse()

app:1942019-05-15 12:10:33.081 pm traceSetting binary state to [BinaryState:0]

dev:1702019-05-15 12:10:33.059 pm debugoff()

dev:1702019-05-15 12:10:25.279 pm traceGot SetBinaryStateResponse = 1

dev:1702019-05-15 12:10:25.236 pm traceparse()

app:1942019-05-15 12:10:25.160 pm traceSetting binary state to [BinaryState:1, Brightness:16]

dev:1702019-05-15 12:10:25.136 pm debugsetLevel(16)

dev:1702019-05-15 12:09:56.214 pm traceGot SetBinaryStateResponse = 1

dev:1702019-05-15 12:09:56.175 pm traceparse()

app:1942019-05-15 12:09:56.099 pm traceSetting binary state to [BinaryState:1, Brightness:76]

dev:1702019-05-15 12:09:56.077 pm debugsetLevel(76)

dev:1702019-05-15 12:09:48.511 pm traceNotify: BinaryState = 1

dev:1702019-05-15 12:09:48.470 pm traceparse()

dev:1702019-05-15 12:09:47.458 pm traceGot SetBinaryStateResponse = 1

dev:1702019-05-15 12:09:47.417 pm traceparse()

app:1942019-05-15 12:09:47.335 pm traceSetting binary state to [BinaryState:1]

dev:1702019-05-15 12:09:47.313 pm debugon()

Has anyone got a WeMo insight to be discovered.
I'm not that bothered as I use it to power my HE hub and use the WEMO app to turn it on and off if I need the hub rebooted remotely.
Was just wondering though.

@bobbles Yes. I use Jason's drivers and Wemo Connect app. So far, with the newly update dimmer driver, I have it discovering all of my WEMO products. Make sure you load the latest drivers and the latest user app over on Github. If you need help, let me know.

Fellow newbie, YF.

Great!

Ah, so brightness doesn't immediately change when you move the slider, but if you turn light off and on again it ends up set to the expected brightness?

Jason,

Yes, The slider retains the value, but apparently the set command to the dimmer is not being sent or handled immediately. Same behavior in the Device page, except there you can turn on/off and nothing happens. Same with the set switch.

Driver date is Last updated: 2018-09-21
App date is Last updated: 2019-05-15
These are the latest in Github.
Just doesn't find the Insight. Finds my Switch OK.

Odd. From your log it looks like it's working. At least, the dimmer acknowledges the commands that set the brightness. The fact that the brightness does eventually change implies that the driver is at least getting the new brightness value over to the bulb. Hmmm...I'll have to look into that more tonight.

@bobbles
Are you using both the Wemo Switch and Insight Switch updates and Fix power calculation for Wemo Insight switch drivers?

Jason,

That is what I observed too. Not sure where else or how to find anything that might help. Let me know if you have any ideas on getting deeper insight into the communications or behavior besides events and logs.

YF

@bobbles I noted that it can take a considerable amount of time to discover all devices. I just left the discovery going, then manually or through Google Home turned on/off all devices. They eventually all showed up. Open the logs in a separate window from your Hubitat discover session. You can see the log entries as it attempts to discover the devices. Look for any errors.

YF