Bali Autowave Shades - Erratic Behavior

Recently purchased Hubitat so I'm a noob... My plan is to migrate from Wink (just lights and a couple of plugs at this point) to Hubitat and start working on a SharpTools dashboard.

We have lots of Bali Autoview (Z-Wave) solar shades in our house and I made an attempt to integrate 7 of them in our living room into Hubitat this weekend. I never added them to Wink for various reasons.

First issue I had was they registered as a Generic Z-Wave Shade but wouldn't respond to set level commands. I installed the device driver that @DeveloperDavidB created (Z-Wave Shade) which allowed me to adjust the levels. Not sure I understand all of the options (Set Position, DoPoll etc.) but I was able to get them to the Set Level command from the device list. I was also able to include a couple of my Somfy Two Button remotes. My initial goal was to configure one of the remotes to open and close all of the blinds in our living room (very close proximity to the hub). I easily defined a button controller to set the level on one blind in a matter of minutes. My trouble began when I added more blinds to the action. Behavior of the shades became very erratic. The issue that occurred the most was a shade moving a couple of inches then slowly grind to a halt and momentarily displaying a red light on the shade header. I would have to manually set the level back to the original level on the affected shades to get them to respond to any further commands. I wasn't able to find any documentation on what the shade was trying to tell me by firing the red light. The shades that had problems was never consistent, different result every time I tested the configuration. Erratic behavior in both up and down directions.

Other things I did to troubleshoot...
Changed from setting level to 0 to turning dimmer off, still erratic.

I changed all the shades from Z-Wave Shade to Generic Z-Wave Dimmer and Generic Z-Wave Smart Dimmer. Still erratic with all device drivers.

Added 7 shades to a group, still erratic. Broke shades into two groups, still erratic. Added delay between groups, still erratic.

At this point I didn't have any other Z-Wave devices added to HE. I moved one interior switch over from Wink to see if the repeater function would clear up some of the problems, no change.

3 shades are on batteries (new) and 4 shades are on dedicated power. All have been working for 4 months prior without issue.

Looking for any suggestions from the experts!

1 Like

When you say "erratic" what do you mean? Are you using the button to set them to a single level or are you trying to use the "Start Lowering" and "Start Raising" commands? You have to be more descriptive about what you mean by "erratic behavior". Are they not going to the correct point? Are then stopping and starting? Are they moving at different times?

I programmed a button controller for a two button Somfy remote. Button 1 directs all shades to 80%. Button 2 directs all shades to 0% or off.

By erratic I mean that when a button is initiated 4 or 5 of the 7 will travel to the prescribed level but the others will move a couple of inches and grind to a halt throwing the red light error I described above. To get the shades that failed to move properly to respond to any other button I have to send the shades back to their previous location manually (selecting the individual device on the devices tab and setting the level). The shades that fail to move to the defined level is not consistent, it's different every time. This is what I mean by erratic.

To answer the rest of your questions...
I'm using the set level parameter for all shades, not "Start Lowering" and "Start Raising".

No, they are not all traveling to the correct point. Some are, some aren't.

No, they are not starting and then stopping. All will move, some will travel to the correct level, others will move a couple of inches and stop (with red light on header).

Yes, they move at different times, similar to how they behaved (in native Somfy group mode) before I added them to HE.

Okay...so there must be something about how Hubitat is commanding them to move that the binds wouldn't normally do on their own. It sounds like the binds are running low on power when you command them all at the same time. Does each blind have it's own battery and solar panel or is it a shared amount of power for all of them? When you control them from the Remote not connected to HE, they work fine and all change levels at the same time?

3 are on battery power, 2 battery packs each w/ new batteries. 4 are on individual power supplies. Never a power issue before. All would respond correctly as a native Somfy group prior to adding to HE. I'm satisfied that it's not a power issue. Simply trying to replicate the group functionality in HE that I had with the Somfy group remote so I can utilize some automation (shades up when someone comes home, shades down when the alarm system is armed).

I'm a Z-Wave noob but I'm leaning towards a communication issue because of the number of devices I'm trying to control without any other Z-Wave devices to act as repeaters. Single button controller, single shade works great! Wheels come off when I start adding multiple shades to the mix.

I'll be interested to see what you discover here, since I have a somewhat similar issue with mine.

In my case, I have all four shades (two on power supplies, two on batteries) set to open and close at certain times. One shade (the same one every time) tends to start before the others, moving for a short time before stopping, then continuing, and the others begin shortly thereafter. I didn't see this behavior when I had them paired with ST, and I even tried unpairing with HE and pairing them to ST again, with no problematic behavior.

What's especially maddening is that it's intermittent, so it's hard to pin down a likely cause.

Anyway, I don't want to confuse the issue at hand with mine; just wanted to let you know you're not alone. :grin: I'll be interested to see how this shakes out.

Misery loves company!

I'm going to call Bali this morning to see if I can get an explanation on what the red light is trying to tell me. Hopefully it will give me some direction on how to correct this.

Weather was terrible here Sunday afternoon so I excluded everything from HE and added them to Wink for the first time. No issues at all getting them to respond consistently. Excluded everything from Wink and added it all back to a native Somfy group controller. No issues at all since then.

Still leaning towards a communication issue...

With regards to your issue, have you tried removing the shade that acts weird every time from schedule to see if the erratic behavior moves to another shade?

Speaking of the red light issue, I'm glad you mentioned that. I haven't noticed if my "problem child" shade is doing that, since that end of it is partially obscured, but I'll see if I can catch it. I wish the manual had some guidance on it, but as you've likely found, there doesn't appear to be any. Hopefully Bali support can provide you with some answers.

Good idea...I haven't tried removing the "problem child" to see if the problem persists, but that may be a next step I'll take. Since my problem is intermittent, my focus so far has been to dig through the logs and compare how they look when the problem happens vs. when it doesn't.

Also, I forgot to mention: I'm also using the Z-Wave Shade driver, and I noticed that there's a parsing error in parse() where it's trying to get the level from the response string. (At least so it seems; I'm a noob at Groovy.)

Anyway, it was choking on the isMulticast part of the response, so I hacked up a little mod to see if that would help. It didn't solve my problem, but at least the error went away in the logs. :laughing: Are you seeing a similar error?

Yep, I saw the same parsing error when I was using the Z-Wave Shade driver as well. I moved to a dimmer driver shortly after that and didn't give the parsing error much thought since I was still getting the erratic behavior.

jdntx? As in JD in Texas?

LOL... Yep, you got it! Since you mentioned the bad weather on Sunday, are you in the area?

@jdntx - Yep, I'm near downtown Fort Worth.

No joy with Bali today. Initially blamed it on a power issue and then switched the "non-certified" jargon when I mention I was working with Hubitat. "We work wonderfully with Smart Things and Wink!"...

I migrated the rest of my switches and plugs from Wink tonight. I think I'll give configuring the shades another try in a day or so and see if the the additional repeaters help my issue.

BTW, how many repeating devices do you have nearby?

Also, could I get a copy of the device driver your using?

Oh, nice...I used to live somewhat near there. That's a cool area.

Sorry to hear that about Bali support. I'm always worried that I'll hit a wall with support when I'm not following their "approved" path. That's part of the reason I haven't gotten in touch with them on my issue. (Plus, to their point, my issue actually didn't happen with SmartThings, but I'm sticking with Hubitat. :grin:)

Good call on migrating more devices, I'd think. It seems like the additional repeaters should help, though I'm no Z-Wave expert...I'm sure others will chime in on that.

As far as repeaters near my "problem child", there's just the other wall-powered shade that's about 6-8 feet away, but ironically, my problem shade is the closest device to my hub (about 15 feet line-of-sight).

Sure, I'm just using the Z-Wave Shade driver that @DeveloperDavidB has posted before, with the modified parse() routine below. (I apologize in advance for the code. This could probably be done better/easier, but I'm still learning Groovy.)

def parse(String description) {
    def result = null
    def hexVal = null
    def movingHex = null
    if (description != "updated") {
        log("parse() >> zwave.parse($description)", "DEBUG")
        if(description.trim().endsWith("payload: 00 00 00")) {
            sendEvent(name: "level", value: 0, unit: "%")
            log("Shade is down, setting level to 0%.", "DEBUG")
        } else if(description.contains("command: 2603")) {
            if(description.contains("isMulticast")) {
                log("Detected isMulticast string", "DEBUG")
                def mcastIdx = description.lastIndexOf(",")
                def dummyStr = description.substring(0,mcastIdx)
                hexVal = dummyStr.trim()[-8..-7]
                movingHex = dummyStr.trim()[-2..-1]
            } else {
                hexVal = description.trim()[-8..-7]
                movingHex = description.trim()[-2..-1]
            }
            log("hexVal = ${hexVal}.", "DEBUG")
            try {
                def intVal = zigbee.convertHexToInt(hexVal)
                def movingInt = zigbee.convertHexToInt(movingHex)
                log("intVal = ${intVal}.", "DEBUG")

                if(movingInt == 0) {
                    log("Shade has stopped.", "INFO")
                } else if(movingInt == 254) {
                    log("Shade is moving.", "INFO")
                } else {
                    log("movingInt = ${movingInt}.", "INFO")
                }

                sendEvent(name: "level", value: intVal, unit: "%")
            } catch(e) {
                log("Exception ${e}", "ERROR")
            }
        } else if(description.contains("command: 8003")) {
            log("Battery Reported.", "DEBUG")
        }

        def cmd = zwave.parse(description, [0x20: 1, 0x26: 1, 0x70: 1])
        if (cmd) {
            result = zwaveEvent(cmd)
        }
    }
    if (result?.name == 'hail' && hubFirmwareLessThan("000.011.00602")) {
        result = [result, response(zwave.basicV1.basicGet())]
        log("Was hailed: requesting state update", "DEBUG")
    } else {
        log("Parse returned ${result?.descriptionText}", "DEBUG")
    }

    return result
}

Thanks @jdntx ! I'll drop it in and try it this weekend.

1 Like

@wms.mcs Did you ever get a resolution to this? I am having the same issue . Here is the thread that I had recently going.

It's funny you pinged me about this! I was never able to resolve my issues and went back to just using the supplied Bali remote. I keep thinking about trying to get them working on Hubitat but just haven't found the time.

The behavior you describe is very similar to what I was experiencing. The blinds acted like they were in an z-wave signal storm. Too many commands flying around and the blinds couldn't process all the requests and just gave up.

Please keep me posted on your progress and if you're finally able to get the results you're looking for!

Will do. If blinds don't work, its sort of deal breaker for me and I may have to suck it up and go back to Wink. I really hope not 'cos I am loving everything else about HE. The house warden has given me till the end of the week to get it resolved or else..... :worried:

I have Graber shades (also Somfy guts). I heard somewhere they are sensitive to the strength of the Z-Wave mesh so I put an Aeotec repeater in the room. I have five shades in the bedroom and they all work fine as far as going to the correct position (and another in my office) I have specified in the rule.

What driver are you using?

Generic Z-Wave Shade (built-in).