Where did you get the driver? From official Innovelli github repo for Hubitat?
You don't have the Switch Level Child device driver installed yet. You have to install the correct driver.
It appears to me that @ericm may not have fully tested this code on Hubitat? It appears to me, from a very quick glance at the Parent Driver code, that it is still using the SmartThings version of the addChildDevice() call, not the simpler Hubitat version. This is probably why you are receiving the
Child device creation failed. Make sure the device handler for "Switch Level Child Device" is installed
log messages.
I would recommend you reach out directly to @ericm to see if he can test this Parent/Child pair of drivers on Hubitat to make sure all of the necessary changes have been made.
I do have the child level device driver installed.
The drivers linked above are what I am using, yes they are supposed to be for hubitat even tho there is some residual smartthings language in them.
I have reached out to @ericm, I noticed the device handler laguage too but just chalked it up to wording in the error message comring from the driver
One thing I have noticed is that your link to the Child Driver might not be the one you want. The official Inovelli GitHub repo has a version as well, which is the same repo you're getting getting your Parent Driver from...
Whoops! That's not right either! You need the Switch Level version... Definitely @ericm needs to update the Inovelli Hubitat Github repo with the correct code, so it is all in one place and fully tested together as a matched set. Hopefully he'll be along shortly to help get this sorted out!
Yes I noticed that too, however I need the dimmer version which has "level" in the name. It seems to be missing.
But I did open that official one up and it seems identical other than adding a device to change level
I vaguely remember he had portions in his personal repo and portions in the Inovelli repo. My recall is that he fixed that but it's certainly worth a look in his.
yes the only place i could find the switch level child device driver was in his repo under hubitat drivers and thats what i have installed.
it must be down to wording in the code that is calling the child driver to start
Just noticed this in the inovelli dimmer driver, it references the child device driver in Eric's repo which is what i have installed. I tried deleting the child driver and re-installing and rebooting but still no go
2018-03-08: Added support for local protection to disable local control. Requires firmware 1.03+.
-
Also merging handler from NZW31T as they are identical other than the LED indicator.
-
Child device creation option added for local control setting. Child device must be installed:
-
https://github.com/erocm123/SmartThingsPublic/blob/master/devicetypes/erocm123/switch-level-child-device.src
If you want to try to fix this yourself, you're going to probably need to change the following section of code in every place you find it in the Parent Driver code.
try {
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep9",
[completedSetup: true, label: "${device.displayName} (Default Z-Wave Level)",
isComponent: true, componentName: "ep9", componentLabel: "Default Z-Wave Level"])
} catch (e) {
runIn(3, "sendAlert", [data: [message: "Child device creation failed. Make sure the device handler for \"Switch Level Child Device\" is installed"]])
}
and
try {
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep9",
[completedSetup: true, label: "${device.displayName} (Default Z-Wave Level)",
isComponent: true, componentName: "ep9", componentLabel: "Default Z-Wave Level"])
} catch (e) {
runIn(3, "sendAlert", [data: [message: "Child device creation failed. Make sure the device handler for \"Switch Level Child Device\" is installed"]])
}
and
try {
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep101",
[completedSetup: true, label: "${device.displayName} (Disable Local Control)",
isComponent: true, componentName: "ep101", componentLabel: "Disable Local Control"])
} catch (e) {
runIn(3, "sendAlert", [data: [message: "Child device creation failed. Make sure the device handler for \"Switch Level Child Device\" is installed"]])
}
These will all need to be changed to match Hubitat's Composite Device Driver add ChildDevice() command which is documented here:
As you can see, Hubitat requires FEWER arguments to be passed in the parameters section.
I was looking at that thread to compare, ill have another look thanks.
I probably should wait for @ericm , LOL
Just playing around, would this work?
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep9", [ Name: "$(ep9)",label: "${device.displayName} (Default Z-Wave Level)", isComponent: true])
For one of them, I realize i'd have to change all 3
Minor edit... I believe things are case sensitive, so this might work better:
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep9", [name: "$(ep9)", label: "${device.displayName} (Default Z-Wave Level)", isComponent: true])
Another edit i dont think i need the $ in front of (ep9) in the map properties
addChildDevice("Switch Level Child Device", "${device.deviceNetworkId}-ep9", [name: "(ep9)", label: "${device.displayName} (Default Z-Wave Level)", isComponent: true])
Just go for it. You’re not going to break anything with these minor tweaks.
I believe the problem is just the namespace in the child driver. The namespace of the child needs to match the parent unless you specify it when creating the child device. Try the handler that I just uploaded:
Thanks @ericm ! that worked , im glad it was a simple fix, cheers.
These child devices will be very useful
Great, glad you got it working!
@ericm I have one more question, i was toying around with the zwave association tool on the weekend and added a virtual device and associated it to the inovelli dimmer. Then i realized this isnt what i was after so i deleted the association in the app and then deleted the virtual device.
the problem is that the dimmer driver is still looking for the association, it shows in the device page and the logs show an error when the driver looks for it. Is there a way to get rid of it? I am trying to remove/exclude the dimmer so i can start fresh with it but it will not exclude for me.
State Variables
- defaultLocal : 99
- actualAssociation3 : []
- bin : -1
- oldLabel : Master Bath
- disableLocal : 0
- desiredAssociation3 : [Master Bath Dimmer Level]
- associationGroups : 3
- needfwUpdate : false
- defaultZWave : 99
- lastRan : 1547924737701
- defaultG3 : []
- actualAssociation2 : []
- defaultG2 : []
- actualAssociation1 : [01]
- defaultG1 : [01]
you can see it here its called "master bath dimmer level"
EDIT: Thanks to @ericm i was able to get rid of that parameter, so no need to exclude.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.