[RELEASE] Greenwave PowerNode 6

Hey jeremybondsf, I’m stuck on what you’ve done to solve this. I don’t exactly understand what you mean by “commented them out.” is there a way you could please send me (or post) the entire source code to do the device handler just as you did it? I’ve failed to get this working and would love some help. Thanks!

nsurg, forgive me for that unclear turn of phrase. As is my occasional bad habit, I was thinking like a hacker rather than a well-adjusted citizen. Yes I will attempt to post the complete source of the device handler that is working for me here. I trust I am neither infringing on anyone’s copyright nor violating forum etiquette by doing so; if I have I hope to be corrected. LMK whether this works for you. 2 days on and its still working fine for me. :wink:

UPDATE: OOPS, the board won’t let me enter a post of this length (the DTH source) besides a glance at the TOS leads me to think I might be infringing if I re-post the complete source.

So, let me try to make a better explanation so you can modify it yourself.

If you can open the DTH for editing in the Smartthings IDEyou’re most of the way there.

ctrl-f will open a “Search:” dialog at the top of the editor window.

type or paste in the expression “componentLabel” (without the quote marks).

The first instance of this expression, appears on line 346 on my system

Put your cursor on the leftmost column on the line containing “componentLabel” and type two slash characters ("//"). Just the slashes, no quotes or parens.

Move your cursor down one line to the line containing the expression “componentName”.

In the leftmost column, again type two slash characters.

Finally, move your cursor back up two lines, to the line reading:

label: "${device.displayName}-CH${endPoint}",

and delete only the comma at the very end of the line.

Lines 345 - 347 on my system now read as follows:

			label: "${device.displayName}-CH${endPoint}"
//			componentLabel: "CH ${endPoint}",
//			componentName: "CH${endPoint}"

Every other part of the source is untouched.

If your code looks like mine then you have successfully “commented out” the two lines in question.

Click “Save” and then “Publsh” and then “For Me”.

Finally, you’ll need to get your Greenwaves modeled according to the new DTH… couple ways of doing that, I’m guessing if you’re here you are already familiar with that process. For my part, I went into my Smart Things app, opened the previous GreenWave master device for editing, hit “Delete”, followed the on-screen process for device exclusion, watched the 7 devices (1 parent and 6 children) vanish, then "Add"ed a new Generic Z-Wave device, hit the network button on the GreenWave when prompted, and, eventually (took a few tries I recall) 7 devices re-appeared, but modeled under the new DTH.

I hope this explanation is useful, I’m happy to help where I can.

1 Like

@jeremybondsf thanks that worked, the child devices show up in Alexa now. Samsung need to hire you, they could do with some bright sparks to fix what they’re doing to their app. :+1:

excellent, that works, THANKS!
I got this device just yesterday, I’m lucky that you fixed this so recently! I really appreciate your expanded explanation.

Can you put your DTH in Github?

1 Like

i can’t find componentLabel at line 346 (only line 150).

Appreciate if someone can share an updated DH


The parent dth code is too big to post, but @jeremybondsf’s post above is very clear in what you need to do, couldn’t of written it any simpler, you just have to comment out 2 lines of the code // and // before them.// edit- of the parent dth.

so if i understand correctly, i have to use the ZooZ Parent DH ? Do i use the Zooz Child DH as well?

Looks like the new ZooZ DH already have the lines commented out…

I have a danish Greenwave PowerNode 6, and have installed Zooz Power Strip VER 2.0 both the parent and child DTH, but I only get one device named switch.

If I try and used that switch, I get a Network or Server error.

No, the DTH you want to use is the one modified specifically for use with the GreenWave Powernode 6 posted in this thread on 6/2/2020 by Smartphi, not the one meant for the actual Zooz product. I believe this link will take you to the relevant post:


And you’ll also need the child DTH, found in this post:


So first, install both of Smartphi’s DTHs and then you can apply my suggested edits to the parent…

Note: Although you must install both the Child and the Parent from Smartphi’s posts, only the parent needs to be edited, the child DTH works as-is.

I hope this guidance helps you get your GreenWave working.

P.S. I’ve never posted anything to GitHub but I will look into how to go about it. It would make a lot more sense than having untold future generations of GreenWave owners hand-editing code.

1 Like

Thanks @jeremybondsf, I found the correct groovy files, I think, and followed your instructions.

After installing and adding the powernode, it showed up as a stanard z-wave switch. I changed that on the website to “GreenWave PowerNode 6 Zooz Frankenstein VER 2.0” and then all the child nodes showed up as “GreenWave PowerNode 6 Zooz Frankenstein VER 2.0 Child”.

The problem is that I cannot switch them off. When I try, after a while I get a network error :frowning:

My 4 PowerNodes are mostly working for me now. It sounds like you did everything right. The only thing I can think of to suggest is to try the usual exclude/include cycle again and see if that helps at all. I wish I had something better to suggest @madsen but regret I do not.

All things considered, I think the GreenWave PowerNode, providing six switchable, power-metering sockets at US$20 was an incredible bargain. However it’s not been super reliable for me even after all the hacking. This may be attributable in part to PowerNode not having protocol support for Z-Wave Plus. I’m willing to live with the less-than-stellar reliability for certain applications due to the low cost but wouldn’t really recommend these for most people.

i installed the DH manually and re-paired my Powernode-6, its still flaky and am unable to control the child devices…

Guess i will have to live with it for now…


It looks like the handler on GitHub doesn’t have the bug fix that I made to all my Zooz handlers.

Lines 341 - 343 should be replaced with the single line below:

label: "${device.displayName}-CH${endPoint}"

hi Kevin,

thanks for the help

replaced the code below with the one you suggested in the parent DH

label: “{device.displayName}-CH{endPoint}”,
componentLabel: “CH {endPoint}", componentName: "CH{endPoint}”

I still cant control any of the child devices through the app or the parent device

The problem was caused by the way the child devices were created so they need to be re-created after making that change to the handler.

You can either remove the device and join it again or delete the child outlets and change a setting in the parent which will make it recreate them without having to remove the parent.

1 Like

Thanks for the work, @jeremybondsf!
I have control over each plug in new app, but power consumption seems not to update so often. There is a way to increase refresh rate?

My DH looks like this (line 338 - 344) is that correct?
completedSetup: true,
isComponent: false,
label: “{device.displayName}-CH{endPoint}”
//componentLabel: “CH {endPoint}", //componentName: "CH{endPoint}”

It looks like it.

Thanks for all the great resources! Using the Zooz code and this thread, I was able to tweak it to do the following:

  • remove the Daemon USB ports that don’t exist with the Greenwave Powernode 6
  • Adds the 6th outlet

Here’s a link to my modified code