Zwave Tweeker

Anyone gotten Zwave Tweeker ported?

@mike.maxwell is the getZwaveInfo class available? It seems to return only null.

as @Chris stated when he tried, months ago, it's used to find the current device the driver is attached to.

// Parse fingerprint for supported command classes:
def ccIds = []
if (getZwaveInfo()?.cc) {
    logger("Device has new-style fingerprint: ${device.rawDescription}","info")
    ccIds = getZwaveInfo()?.cc + getZwaveInfo()?.sec
}
else {
    logger("Device has legacy fingerprint: ${device.rawDescription}","info")
    // Look for hexadecimal numbers (0x##) but remove the first one, which will be deviceID.
    ccIds = device.rawDescription.findAll(/0x\p{XDigit}+/)
    if (ccIds.size() > 0) { ccIds.remove(0) }
}
ccIds.removeAll([null])
state.zwtGeneralMd.commandClassIds = ccIds.sort().collect { Integer.parseInt(it.replace("0x",""),16) } // Parse hex strings to ints.
state.zwtGeneralMd.commandClassNames = toCcNames(state.zwtGeneralMd.commandClassIds,true) // Parse Ids to names.

ccIDs just needs to be filled, and I assume there must be an entirely Hubitat way, undocumented.

we do not have a method called getZwaveInfo(), and according to smartthings official docs, they don't either.

David doesn't have it defined in his code either. And I've packed away my SmartThings Hub.

The entire driver is based on this:

state.zwtGeneralMd.commandClassIds = ccIds.sort().collect

If the classIDs are empty, the tool is too. It's unable to converse with a device.

Can you use the inClusters data value on the device instead?

ccIds = device.getDataValue("inClusters").tokenize(",")

2 Likes

Not true in any way, knowing what clusters a device uses sheds no light on the available parameters, their values and what they're used for...
Granted it breaks this app, I get that.

I've just got my Hubitat hub working today after sourcing a missing USB cable. Porting my Z-Wave Tweaker is on my plan but not top of my list, so maybe give me a month or two.

... in the meantime, if anyone's made further progress please get in touch.

3 Likes

Glad to hear you've got a Hubitat now! :smiley:

It doesn't appear to have been mentioned in any of the posts above, but Mike did create a "Basic Z-Wave Tool" for Hubitat that serves a similar purpose, though it doesn't appear to do quite as much (setting associations, etc.): Super basic Z-Wave parameter tool. I've only used it to change Z-Wave parameters if the driver didn't expose something directly. Good luck with your porting efforts--there are a few threads on the forum you can search for about differences between ST and HE that affect code-writing if you haven't seen them already.

How is you port of zWave Tweaker coming along?

LJ

1 Like