Hunter Douglas Power View Gen 1 & 2 Edge Driver

For anyone interested, I wrote this custom device handler for my Hunter Douglas Power View shades. It should work with shades that communicate with the 1st and 2nd generation PowerView hubs. I only have roller shades and bottom-up Applause & Duette type shades, so that is what I developed the driver for.

Note, the driver requires knowledge of the PowerView hub’s IP address, therefore it is prudent to assign it a fixed IP address on your network. It also requires the shadeID. This can be found by navigating to http://< hubIP >/api/shades on your browser of choice. Create one device for each of the shadeIDs you see at the top of the webpage, you can then use the jog function to identify which shade the shadeID belongs to and rename the device accordingly.

I’d like to thank TAustin whose published drivers I borrowed heavily from in generating this driver, as well as schwark for inspiring me to write my own driver for the PowerView generation of Hunter Douglas shades.

2 Likes

Hi, @maranhao!

A user mentioned he cannot enter to your channel invitation and I think it’s due to the link you shared.
For users to enter the invitation to your channel, you need to share the link generated when you create the invitation.
You should be able to see it using this CLI command:

smartthings edge:channels:invites

These are the headers of the table shown as the result:

Could you update the URL, please?

@nayelyz thanks for informing me of my oversight. I believe I have fixed the issue. Please let me know if the user still has issues accessing my driver.

1 Like

Thank you, @maranhao!
@David2275, could you check if the new link shared in the first post works for you, please?

Yes it did. I also messaged the dev directly for some additional assistance. Thanks for your help!

1 Like

To those individuals who may be interested, the source code for this driver can be found here. GitHub - maranhaoBruno/HD-Powerview-Gen1-2

Ok. So I think I have the edge drivers installed, but how do you actually get the shades added to Smartthings? How do you add/create the device? Do you create a custom device or something then assign the driver?

I figured it out. For those like me who didn’t know, you add the driver, and then in the ST app, you scan for devices. The device you added the driver for should get added. Then you can modify the driver settings as required to add the powerview hub IP and shade IDs.

@snrsuave Some individuals have run into issues getting the driver to control their shades. Can you confirm that you are able to open and close your shades, and what version SmartThings hub and PowerView hubs you have? Thanks!

Firstly, thanks for making this available and for your work. It kind of works. I have silhouette shades and the driver works to open (lift) and close the shades, but does not control the tilting of the vanes. Also, I have parkland wood blinds that are motorized and the driver does not work with these at all. The only thing the blind responds to is the jog command.

I could not control the shades. I have a Powerview Gen 1 hub, a ST Gen 2 hub and Silhouette shades. I know my hub IP is correct because I was able to pull a shade iD list from the hub.

James, I’m sorry the driver is not working for you. By any chance, are you able to jog the shades, but do nothing else? It seems to me that everyone experiencing issues is operating on a gen 1 PV hub, and though it is odd to me, this may be the issue.

Hello,

Thanks for the follow up. Jogging does not work either. Nothing seems to work from the testing I performed.

I have been using the johnvey integration for years without incident, until I accidentally deleted it last month.

I attached the API which I believe is for the Gen 1 hub. I ran some of the commands from a web browser, which I have included below. Maybe this will help.

http://192.168.1.222/api/shades returns:

{“shadeIds”:[1031,29438,24140,9790,23753],“shadeData”:[

{“id”:1031,“name”:“U2xpZGVy”,“roomId”:19103,“groupId”:62497,“order”:0,“type”:23,“batteryStrength”:171,“batteryStatus”:3},

{“id”:29438,“name”:“VHJhbnNvbSBSaWdodA==”,“roomId”:19103,“groupId”:62497,“order”:1,“type”:23,“batteryStrength”:166,“batteryStatus”:3, “positions”:{“position1”:1794,“posKind1”:3}},

{“id”:24140,“name”:“VHJhbnNvbSBMZWZ0”,“roomId”:19103,“groupId”:62497,“order”:2,“type”:23,“batteryStrength”:149,“batteryStatus”:3},

{“id”:9790,“name”:“VHJhbnNvbSBDZW50ZXI=”,“roomId”:19103,“groupId”:62497,“order”:3,“type”:23,“batteryStrength”:166,“batteryStatus”:3, “positions”:{“position1”:1436,“posKind1”:3}},

{“id”:23753,“name”:“U2l0dGluZyBBcmVh”,“roomId”:19103,“groupId”:62497,“order”:4,“type”:23,“batteryStrength”:170,“batteryStatus”:3, “positions”:{“position1”:1794,“posKind1”:3}}]}

http://192.168.1.222/api/scenes returns:

{“sceneIds”:[30096,22248,36455,29301,18247,50628],“sceneData”:[

{“id”:30096,“networkNumber”:3,“name”:“T3BlbiBTaGFkZXM=”,“roomId”:19103,“order”:0,“colorId”:9,“iconId”:96},

{“id”:22248,“networkNumber”:2,“name”:“Q2xvc2UgU2hhZGVz”,“roomId”:19103,“order”:1,“colorId”:10,“iconId”:97},

{“id”:36455,“networkNumber”:5,“name”:“T3BlbiBWYW5lcw==”,“roomId”:19103,“order”:2,“colorId”:5,“iconId”:95},

{“id”:29301,“networkNumber”:1,“name”:“Q2xvc2UgVmFuZXM=”,“roomId”:19103,“order”:3,“colorId”:4,“iconId”:66},

{“id”:18247,“networkNumber”:4,“name”:“V2ludGVyIE5pZ2h0cw==”,“roomId”:19103,“order”:4,“colorId”:15,“iconId”:19},

{“id”:50628,“networkNumber”:6,“name”:“R29vZCBNb3JuaW5nIFN1bnNoaW5l”,“roomId”:19103,“order”:5,“colorId”:12,“iconId”:12}]}

http://192.168.1.222/api/scenes?sceneId=50628 runs the scene and returns:

{"scene":{"shadeIds":[23753,9790,29438,24140,1031]}}

If you need me to do some testing, please let me know.

Thanks again!

James

(Attachment Powerview-Third-Party-API.pdf is missing)

*** First message bounced because of attached. Added link to API below ***

Hello,

Thanks for the follow up. Jogging does not work either. Nothing seems to work from the testing I performed.

I have been using the johnvey integration for years without incident, until I accidentally deleted it last month.

Below is a link to the API which I believe is for the Gen 1 hub. I ran some of the commands from a web browser, which I have included below. Maybe this will help.

https://mynzws.co.nz/wp-content/uploads/2021/05/Powerview-Third-Party-API.pdf

http://192.168.1.222/api/shades returns:

{“shadeIds”:[1031,29438,24140,9790,23753],“shadeData”:[

{“id”:1031,“name”:“U2xpZGVy”,“roomId”:19103,“groupId”:62497,“order”:0,“type”:23,“batteryStrength”:171,“batteryStatus”:3},

{“id”:29438,“name”:“VHJhbnNvbSBSaWdodA==”,“roomId”:19103,“groupId”:62497,“order”:1,“type”:23,“batteryStrength”:166,“batteryStatus”:3, “positions”:{“position1”:1794,“posKind1”:3}},

{“id”:24140,“name”:“VHJhbnNvbSBMZWZ0”,“roomId”:19103,“groupId”:62497,“order”:2,“type”:23,“batteryStrength”:149,“batteryStatus”:3},

{“id”:9790,“name”:“VHJhbnNvbSBDZW50ZXI=”,“roomId”:19103,“groupId”:62497,“order”:3,“type”:23,“batteryStrength”:166,“batteryStatus”:3, “positions”:{“position1”:1436,“posKind1”:3}},

{“id”:23753,“name”:“U2l0dGluZyBBcmVh”,“roomId”:19103,“groupId”:62497,“order”:4,“type”:23,“batteryStrength”:170,“batteryStatus”:3, “positions”:{“position1”:1794,“posKind1”:3}}]}

http://192.168.1.222/api/scenes returns:

{“sceneIds”:[30096,22248,36455,29301,18247,50628],“sceneData”:[

{“id”:30096,“networkNumber”:3,“name”:“T3BlbiBTaGFkZXM=”,“roomId”:19103,“order”:0,“colorId”:9,“iconId”:96},

{“id”:22248,“networkNumber”:2,“name”:“Q2xvc2UgU2hhZGVz”,“roomId”:19103,“order”:1,“colorId”:10,“iconId”:97},

{“id”:36455,“networkNumber”:5,“name”:“T3BlbiBWYW5lcw==”,“roomId”:19103,“order”:2,“colorId”:5,“iconId”:95},

{“id”:29301,“networkNumber”:1,“name”:“Q2xvc2UgVmFuZXM=”,“roomId”:19103,“order”:3,“colorId”:4,“iconId”:66},

{“id”:18247,“networkNumber”:4,“name”:“V2ludGVyIE5pZ2h0cw==”,“roomId”:19103,“order”:4,“colorId”:15,“iconId”:19},

{“id”:50628,“networkNumber”:6,“name”:“R29vZCBNb3JuaW5nIFN1bnNoaW5l”,“roomId”:19103,“order”:5,“colorId”:12,“iconId”:12}]}

http://192.168.1.222/api/scenes?sceneId=50628 runs the scene and returns:

{"scene":{"shadeIds":[23753,9790,29438,24140,1031]}}

If you need me to do some testing, please let me know.

Thanks again!

James