Wemo switch and insight smart plug

I'm using the wemo_insight_switch.groovy and the wemo_switch.groovy.
The switch gets discovered but the Insight does not.

@Bobbles,

Those are the correct drivers. That is also the right user app. You may need to remove existing WEMO devices (devices page), then remove WEMO CONNECT from apps. Then re-add it and run discovery. That worked for me when I had an issue earlier..

YF

Watch the logs for the WeMo Connect app while the app is open. You should see messages like Parsed discovery message: urn:Belkin:device:controllee:1. These are messages from WeMo devices. A message from an Insight Switch would have the ID urn:Belkin:device:insight:1.

If you don't see any of those, then the Insights aren't responding when the app is looking for them. If you do see messages like that, then the switches are responding and something else is wrong.

1 Like

Hhmmmmm.
Very strange. Just tried it again and it found the Insight.
I had already found the Switch yesterday and when the Insight didn't appear I gave up.
Both now discovered. Thanks for the assistance.
As a matter of interest when I clicked on the app's settings cog yesterday then the mac addresses for both devices were in there. Just no device was defined.
Never mind, all's well that ends well.

@bobbles
LOL. Glad I could help. :nerd_face:

YF

1 Like

@YapFlapper I looked at some other implementations, and so far as I can determine it looks like my driver is doing what it needs to. I changed one of my WeMo switches to use the dimmer driver and played with it through the Dashboard, and the logs show the behavior I would expect (the driver says it's sending commands, and it receives responses from the switch).

I did push out an updated driver and Connect app that change the case of the brightness property from "Brightness" to "brightness", just in case that was significant in some way. You might try updating to that.

Try changing a dimmer via the dashboard. Do you see output like the following in the log for the device and the Connect app?

@jason0x43,
Here is what I do not understand:
1.) When I use the WEMO app, the dimmer works;
2.) When I give Google voice commands, the dimmers work;
3.) When I use the dashboard, the dimmer does not change and the value on the slider never updates to show value set by WEMO app or Google voice command;
4..) When I use the device page for a dimmer, the dimmer does not change when I add the value, then click [Set} button. It also does not cause a change in the dimmer slider value on the dashboard.

The logs show the following for each test:
Wemo app
dev:1712019-05-15 10:27:34.167 pm traceparse()

Google voice command
dev:1712019-05-15 10:28:39.201 pm traceparse()

Dashboard:
dev:1712019-05-15 10:29:38.211 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-15 10:29:38.170 pm traceparse()

app:1942019-05-15 10:29:38.091 pm traceSetting binary state to [BinaryState:1, Brightness:100]

dev:1712019-05-15 10:29:38.062 pm debugsetLevel(100)

Device Page
pp:1942019-05-15 10:34:53.082 pm tracechildSubscribeIfNecessary(Living Room Fan Light)

dev:1702019-05-15 10:34:53.002 pm tracesubscribeIfNecessary

dev:1702019-05-15 10:34:52.638 pm traceGot SetBinaryStateResponse = 1

dev:1702019-05-15 10:34:52.596 pm traceparse()

app:1942019-05-15 10:34:52.513 pm traceSetting binary state to [BinaryState:1, Brightness:50]

dev:1702019-05-15 10:34:52.487 pm debugsetLevel(50)

The WeMo app and (presumably) Google Home are talking to the dimmer directly, so it’s not surprising that they work. There definitely seems to be a disconnect between Hubitat and the dimmer, though.

The driver only updates the dimmer’s state in Hubitat when it receives a state change message from the dimmer. So, turning the dimmer “on” through the Hubitat UI doesn’t immediately make Hubitat think the dimmer is “on”; it waits for a status update from the dimmer saying it’s “on”. The fact that changing the dimmer state in the WeMo app isn’t reflected in Hubitat suggests that either the driver hasn’t properly subscribed to messages from the dimmer, or that the driver isn’t properly parsing messages from the dimmer (I’m guessing it’s this second one).

If you turn the dimmer fully off and on in the WeMo app, does the off/on state change in Hubitat? Do you see related messages in the Hubitat log for the device?

@jason0x43,

  1. Switch action (on/off) on dashboard is being seen immediately in WEMO app.
  2. Wemo App changes are not being seen in Dashboard. No log entry either. I waited more than 10 minutes in hopes it would change. It never did.
  3. Dashboard slider changes are not being seen in Wemo App.
  4. Wemo App slider changes are not being seen in Dashboard.
  5. No log entry for Wemo app slider actions.

Logs on slider change:
dev:1712019-05-16 10:32:15.197 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:32:15.158 pm traceparse()

dev:1712019-05-16 10:32:15.049 pm debugsetLevel(100)

dev:1712019-05-16 10:32:12.300 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:32:12.256 pm traceparse()

dev:1712019-05-16 10:32:12.150 pm debugsetLevel(90)

dev:1712019-05-16 10:32:00.797 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:32:00.758 pm traceparse()

dev:1712019-05-16 10:32:00.659 pm debugsetLevel(80)

dev:1712019-05-16 10:31:42.377 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:31:42.336 pm traceparse()

dev:1712019-05-16 10:31:42.239 pm debugsetLevel(70)

dev:1712019-05-16 10:31:34.911 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:31:34.863 pm traceparse()

dev:1712019-05-16 10:31:34.746 pm debugsetLevel(60)

dev:1712019-05-16 10:31:24.475 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:31:24.436 pm traceparse()

dev:1712019-05-16 10:31:24.332 pm debugsetLevel(50)

dev:1712019-05-16 10:31:17.107 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:31:17.064 pm traceparse()

dev:1712019-05-16 10:31:16.951 pm debugsetLevel(40)

dev:1712019-05-16 10:31:04.829 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:31:04.788 pm traceparse()

dev:1712019-05-16 10:31:04.683 pm debugsetLevel(1)

dev:1712019-05-16 10:30:56.955 pm traceGot SetBinaryStateResponse = 0

dev:1712019-05-16 10:30:56.912 pm traceparse()

dev:1712019-05-16 10:30:56.803 pm debugsetLevel(0)

dev:1712019-05-16 10:30:37.783 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:30:37.742 pm traceparse()

dev:1712019-05-16 10:30:37.642 pm debugsetLevel(1)

dev:1712019-05-16 10:30:31.672 pm traceGot SetBinaryStateResponse = 0

dev:1712019-05-16 10:30:31.632 pm traceparse()

dev:1712019-05-16 10:30:31.534 pm debugsetLevel(0)

dev:1712019-05-16 10:30:29.320 pm traceGot SetBinaryStateResponse = 1

dev:1712019-05-16 10:30:29.278 pm traceparse()

If you go into one of the dimmer devices and click the 'subscribe' button, do you see something like the following in the log?

@jason0x43

I am seeing a connection refused error for Living Room Spot:

dev:1712019-05-17 01:23:38.600 pm warnConnection refused (Connection refused)

dev:1712019-05-17 01:23:38.452 pm debugresubscribe()

dev:1712019-05-17 01:23:36.229 pm warnConnection refused (Connection refused)

dev:1712019-05-17 01:23:36.118 pm debugsubscribe()

dev:1712019-05-17 01:23:34.422 pm warnConnection refused (Connection refused)

dev:1712019-05-17 01:23:34.327 pm debugsubscribe()

dev:1712019-05-17 01:23:12.250 pm warnConnection refused (Connection refused)

dev:1712019-05-17 01:23:12.186 pm debugsubscribe()

I am seeing a different result on Living Room Fan Light:
dev:1702019-05-17 01:25:32.086 pm traceNotify: BinaryState = 0

dev:1702019-05-17 01:25:32.046 pm traceScheduling resubscription in 270 s

dev:1702019-05-17 01:25:32.042 pm traceUpdating subscriptionId to 27a20db2-1dd2-11b2-9956-87803d56a96f

dev:1702019-05-17 01:25:32.038 pm traceparse()

dev:1702019-05-17 01:25:32.018 pm traceparse()

dev:1702019-05-17 01:25:31.918 pm debugsubscribe()

dev:1702019-05-17 01:25:24.900 pm traceNotify: BinaryState = 0

dev:1702019-05-17 01:25:24.879 pm traceScheduling resubscription in 270 s

dev:1702019-05-17 01:25:24.874 pm traceUpdating subscriptionId to 235934b0-1dd2-11b2-9956-87803d56a96f

dev:1702019-05-17 01:25:24.850 pm traceparse()

dev:1702019-05-17 01:25:24.832 pm traceparse()

dev:1702019-05-17 01:25:24.742 pm debugsubscribe()

Here is the result for the Bedroom Fan Light

dev:1682019-05-17 01:27:59.311 pm traceNotify: BinaryState = 0

dev:1682019-05-17 01:27:59.280 pm traceScheduling resubscription in 270 s

dev:1682019-05-17 01:27:59.274 pm traceUpdating subscriptionId to 7f5f7d1e-1dd2-11b2-b1b6-e1768d1e3302

dev:1682019-05-17 01:27:59.254 pm traceparse()

dev:1682019-05-17 01:27:59.236 pm traceparse()

dev:1682019-05-17 01:27:59.154 pm debugsubscribe()

dev:1682019-05-17 01:27:54.870 pm traceNotify: BinaryState = 0

dev:1682019-05-17 01:27:54.838 pm traceScheduling resubscription in 270 s

dev:1682019-05-17 01:27:54.832 pm traceUpdating subscriptionId to 7cbc3d36-1dd2-11b2-b1b6-e1768d1e3302

dev:1682019-05-17 01:27:54.829 pm traceparse()

dev:1682019-05-17 01:27:54.810 pm traceparse()

dev:1682019-05-17 01:27:54.750 pm debugsubscribe()

Interesting. That would explain why you're not seeing updates for the dimmer, and possibly why commands aren't registering properly. Hmmm...let me think about that one...

Ok, this is nuts, but here it is.
I have a dimmer which of course, the older version couldn't find so I installed the latest app/drivers and let it run for 30 min and it still couldn't find it.
I then followed the advice to delete the Wemo Connect app and reinstall it except i*** instead of deleting it's 6 devices, I just renamed them ***.

*** Don't rename the devices. Delete them (see next post). ***

Much to my surprise and delight the dimmer was the first device found. Shortly, it had found 4 devices but again to my surprise when I clicked on the drop down my dimmer was no longer there. ???

It's still shown in the 'Event Subscriptions' and the 'Application State boxes:
{uuid:Socket-1_0-221747K0102BA6::urn:Belkin:device:controllee:1={ssdpTerm=urn:Belkin:device:controllee:1, hub=1, port=c001, ip=C0A8CAB0, name=Wemo Mini 1, verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Socket-1_0-221747K0102BA6::urn:Belkin:device:controllee:1, mac=24F5A22196CF}, uuid:Socket-1_0-221747K0102EE8::urn:Belkin:device:controllee:1={ssdpTerm=urn:Belkin:device:controllee:1, hub=1, port=c001, ip=C0A8CA7E, name=Bedroom Fan, verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Socket-1_0-221747K0102EE8::urn:Belkin:device:controllee:1, mac=24F5A2219D53}, uuid:Dimmer-1_0-241745K1502078::urn:Belkin:device:dimmer:1={ssdpTerm=urn:Belkin:device:dimmer:1, hub=1, port=c001, ip=C0A8CAB6, name=Bedroom Light, verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Dimmer-1_0-241745K1502078::urn:Belkin:device:dimmer:1, mac=null}, uuid:Socket-1_0-221751K0109ABB::urn:Belkin:device:controllee:1={ssdpTerm=urn:Belkin:device:controllee:1, hub=1, port=c001, ip=C0A8CAEC, name=Bedroom Humidifier , verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Socket-1_0-221751K0109ABB::urn:Belkin:device:controllee:1, mac=null}, uuid:Socket-1_0-221251K010368B::urn:Belkin:device:controllee:1={ssdpTerm=urn:Belkin:device:controllee:1, hub=1, port=c001, ip=C0A8CAA3, name=Mstr Bath Mood, verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Socket-1_0-221251K010368B::urn:Belkin:device:controllee:1, mac=EC1A597747DD}}

but it magically disappeared in the logs:

app:11852019-05-17 15:11:46.959 traceVerifying devices

app:11852019-05-17 15:11:16.968 traceFound devices: [null:Bedroom Humidifier , EC1A597747DD:Mstr Bath Mood]

app:11852019-05-17 15:11:16.964 traceGetting WeMo devices

app:11852019-05-17 15:11:16.961 traceGetting discovered devices

app:11852019-05-17 15:11:16.958 traceGetting WeMo devices

app:11852019-05-17 15:11:16.954 traceVerifying devices

app:11852019-05-17 15:10:47.306 traceGetting WeMo devices

app:11852019-05-17 15:10:47.303 traceHandling friendly name: Bedroom Humidifier

app:11852019-05-17 15:10:47.128 traceGetting WeMo devices

app:11852019-05-17 15:10:47.125 traceHandling friendly name: Mstr Bath Mood

app:11852019-05-17 15:10:46.999 traceFound devices: [null:Bedroom Light]

app:11852019-05-17 15:10:46.996 traceGetting WeMo devices

app:11852019-05-17 15:10:46.993 traceGetting discovered devices

app:11852019-05-17 15:10:46.990 traceGetting friendly name for C0A8CAA3:c001 (192.168.202.163:49153)

app:11852019-05-17 15:10:46.987 traceGetting friendly name for C0A8CAEC:c001 (192.168.202.236:49153)

app:11852019-05-17 15:10:46.984 traceGetting WeMo devices

app:11852019-05-17 15:10:46.981 traceVerifying devices

app:11852019-05-17 15:10:17.197 traceGetting WeMo devices

app:11852019-05-17 15:10:17.194 traceGetting devices for event

app:11852019-05-17 15:10:17.191 traceParsed discovery message: urn:Belkin:device:controllee:1

app:11852019-05-17 15:10:17.188 traceGetting WeMo devices

app:11852019-05-17 15:10:17.185 traceGetting devices for event

app:11852019-05-17 15:10:17.182 traceGetting WeMo devices

app:11852019-05-17 15:10:17.179 traceParsed discovery message: urn:Belkin:device:controllee:1

app:11852019-05-17 15:10:17.175 traceGetting devices for event

app:11852019-05-17 15:10:17.172 traceParsed discovery message: urn:Belkin:device:controllee:1

app:11852019-05-17 15:10:17.169 traceGetting WeMo devices

app:11852019-05-17 15:10:17.166 traceGetting WeMo devices

app:11852019-05-17 15:10:17.163 traceGetting devices for event

app:11852019-05-17 15:10:17.160 traceGetting devices for event

app:11852019-05-17 15:10:17.155 traceParsed discovery message: urn:Belkin:device:controllee:1

app:11852019-05-17 15:10:17.144 traceParsed discovery message: urn:Belkin:device:controllee:1

app:11852019-05-17 15:10:16.955 traceFound devices: [null:Bedroom Light]

app:11852019-05-17 15:10:16.952 traceGetting WeMo devices

app:11852019-05-17 15:10:16.949 traceGetting discovered devices

app:11852019-05-17 15:10:16.945 tracediscoverAllWemoTypes

app:11852019-05-17 15:09:46.952 traceFound devices: [null:Bedroom Light]

app:11852019-05-17 15:09:46.949 traceGetting WeMo devices

app:11852019-05-17 15:09:46.946 traceGetting discovered devices

app:11852019-05-17 15:09:46.943 traceGetting WeMo devices

app:11852019-05-17 15:09:46.940 traceVerifying devices

app:11852019-05-17 15:09:16.942 traceFound devices: [null:Bedroom Light]

app:11852019-05-17 15:09:16.939 traceGetting WeMo devices

app:11852019-05-17 15:09:16.936 traceGetting discovered devices

app:11852019-05-17 15:09:16.931 traceGetting WeMo devices

app:11852019-05-17 15:09:16.928 traceVerifying devices

app:11852019-05-17 15:08:46.959 traceFound devices: [null:Bedroom Light]

app:11852019-05-17 15:08:46.956 traceGetting WeMo devices

app:11852019-05-17 15:08:46.953 traceGetting discovered devices

app:11852019-05-17 15:08:46.950 traceGetting WeMo devices

app:11852019-05-17 15:08:46.946 traceVerifying devices

--- Live Log Started, waiting for events ---

Doesn't make any sense to me but there it is.
Hope it makes sense to you, Jason.
And, thanks for all the hard work you've put into this.

Renaming the app's devices confuses the newly loaded Wemo Connect app.
When the new version of the app tries to add the 'new to it' devices it finds devices with the same serial number already installed and refuses to install the devices it finds. ;-(
When you delete the old version of the devices, Hubitat will warn you and give you a list of rules/apps that they will be removed from. I copied and pasted that list elsewhere so it was easier to to restore those rules/apps after the new version of Wemo Connect re-added the devices.

On the second try, the new app found all my devices including the Dimmer. Everyone seems happy so far.
Thanks again for the update for dimmers.

It's me again. I just noticed a warning on the log about no matching device found:

dev:13132019-05-18 11:46:06.042 traceparse()
dev:13132019-05-18 11:46:05.879 traceScheduling resubscription in 1770 s
dev:13132019-05-18 11:46:05.857 traceUpdating subscriptionId to 6c527b52-1dd2-11b2-918c-ed50382eac20
sys:12019-05-18 11:46:05.769 warnReceived data from 192.168.202.182, no matching device found for 192.168.202.182, C0A8CAB6:C477, 58EF68BBABD1 or C0A8CAB6.
dev:13132019-05-18 11:46:05.718 traceparse()
dev:13132019-05-18 11:46:05.625 traceGetBinaryResponse: brightness = 25
dev:13132019-05-18 11:46:05.622 traceGetBinaryResponse: BinaryState = 0

So I looked in Application State and found:

uuid:Dimmer-1_0-241745K1502078::urn:Belkin:device:dimmer:1={ssdpTerm=urn:Belkin:device:dimmer:1, hub=1, port=c001, ip=C0A8CAB6, name=Bedroom Light, verified=true, ssdpPath=/setup.xml, ssdpUSN=uuid:Dimmer-1_0-241745K1502078::urn:Belkin:device:dimmer:1, mac=null}, uuid:Socket-1_0-

Note the mac is null. This appears to preclude subscribing to this device so Hubitat will not stay in sync with the device when the light is turned on/off at the switch.

Could someone either
A) Tell me how to add the mac to the Application State manually that doesn't involve deleting all my devices and the Wemo Connect then adding all of that back and then adding all the devices back into each of my many rules.
or
B) would it be possible for Wemo Connect to notice the invalid null mac and go get it from the device and fix it?

Thanks again, Jason, for all the work you've put into this. I'm just trying to do my part to help make this a better product.

@jason0x43 see @jim1 post 134. Shouldn't mac be pulled during discovery and cached?

Well, that's kinda my point. Normally it is but sometimes it isn't and when it isn't the only recovery I've found so for is kinda drastic.

I have the same problem of jim1
sys:12019-05-18 11:46:05.769 warnReceived data from 192.168.202.182, no matching device found for 192.168.202.182, C0A8CAB6:C477,

On one of my 2 wemo insight switch
Every time i hit the Refresh, Subscribe, Resubscribe or Unsubscribe button i can see the sys: error message.
I can control the On and Off but the power consomption is not working correctly

I'm working on an update to the connect app that should make working with existing devices a bit easier (so there's less need to remove and re-install things), and that will also improve the logging situation so we can see what's going on a bit more clearly.

2 Likes

Great!! Thanks already.