Better SmartStart Provisioning

In addition to the mobile app to scan SmartStart QR codes, the Hubitat web interface should have ability to add/edit the SmartStart Provisioning List.

How could this be integrated into the Hubitat web interface?

In section "5.3.3 SmartStart Provisioning" from the Z-Ware SDK documentation found at:
https://manualzz.com/doc/54168209/silicon-labs-z-ware-sdk-7.13.0-library-c-api-reference-ma...

it shows the zwnet_pl_add command can take an info attribute, which can include the NAME info type as PL_INFO_TYPE_NAME. (Note: This does not appear to be currently implemented in the mobile app even though the entry field exists, or it just fails).

As a user, I want to:

  1. Scan SmartStart QR codes for all of my devices (e.g., 100 entries into SmartStart Provisioning List)
  2. Access Hubitat web interface from my PC to name all of my devices with "friendly" names (e.g., "Living Room Lights", etc.)
  3. Have my ZWave devices auto-join Hubitat & be named using my "friendly" names

This capability to use SmartStart in this manner would allow use cases such as:

  1. Reset ZWave network and all nodes re-join automatically with "friendly" names; potentially re-mapping themselves back into Hubitat Devices database and therefore no rules/automations need to be reconfigured
  2. User has "friendly" names mapped to all DSKs in editable database; can now manually swap DSK in the case a device dies and needs to be replaced (e.g., lightning strike fries a switch and user replaces with new switch and desires direct swap-in to existing device). This allows user to rejoin a brand-new device to the ZWave network and re-map back into Hubitat Devices database such that no rules/automations need to be reconfigured.

As this is clearly already (at least partially) implemented in the mobile app, is it possible to expose the same data as a web interface?

Note: I researched for several days and cannot figure out how to call these commands on the Hub, although I am not really a developer so I'm limited in how much Groovy / Hubitat ZWave command classes documentation I can interpret. I realize from other posts that Hubitat does not publish fully extensive documentation or an SDK or anything like that, but is there a simple App that can be made to call these specific Z-Ware SDK commands with user-editable parameters?

Additionally, there are some comments in related topics that describe a specific issue that the "SmartStart Name is not adopted" (links below) and replies that indicate it's potentially an issue in the ZWave SDK that is dropping/ignoring the "NAME" info field. If that is the case, then I recommend the above user story is implemented using locally stored mappings such that this still functions as described. Specifically, the "friendly" name should be stored in a local file/database on the hub and mapped to the SmartStart Provisioning List such that once a SmartStart device joins the ZWave network, it is mapped into the Hubitat Device database with the paired "friendly" name.

Related Topics:
https://community.hubitat.com/t/smartstart-names-not-adopted/47614
https://community.hubitat.com/t/use-smartstart-names-as-device-label/47628
https://community.hubitat.com/t/smartstart-use-empty-device-name/50170

2 Likes

This is a brilliantly worded post IMHO, yet there are zero replies. Seems to be the case when anybody brings up Smart start in any other post citing issues they have with the process and how the devices interact with the network.

@support is there any project in queue to improve provisioning capabilities for Z wave S2 2nd gen SmartStart?

Also, would love to have some information on what is causing delays as this is a useful tool that seems to be somewhat half baked at the moment and has been for longer than I’ve been using HE.

Just want to add in case people did not realize, you can scan a SmartStart code on mobile, then edit it and deselect the security options. I have included 3 devices this way now using Smart Start and no security. You can set names in there supposedly but it doesn't work, the whole thing is pretty glitchy but it works at the most basic level.

2 Likes

Since posting this feature request I personally switched to HomeAssistant where this SmartStart feature exists in the zwavejs2mqtt module. Using this feature, I am able to rejoin zwave nodes under the names & rooms mappings I set up one-time in the SmartStart provisioning and retain the underlying automations, including an easy management interface of the SmartStart DSKs to re-map replacement devices to the same entity names.

1 Like

I wonder if it would get more attention if posted under "feedback" -> "feature requests" rather than "developers" . . .

2 Likes

Agree, moved to Feature Requests section.

1 Like

Confirmed that this works. I have 5 ring contact or motion sensors (g2) in my SmartStart provisioning list. All were successfully added with the mobile scanning feature. However, at first, I had a heck of a time just understanding the cadence of steps to take for adding (kept putting the batteries in before scanning the QR code) this is actually well written in the documentation

Choosing the security options is nice. In my case for devices mentioned above, I kept the default security level (S2 Authenticated) and the devices will still pair despite other reports found elsewhere stating that pairing with security can cause communication issues.

This is truly a “miss” with the functionality of this service. The names should be able to transfer to the device created in HE Hub UI.

1 Like

Chris Tucker Comedy GIF

Absolutely what needs to be happening! That's enough to make me - who probably doesn't have enough time to do much of anything - want to explore different options. Don't get me wrong, I'm a fan of HE for many reasons, but this just seems like someone really "phoned it in" when adding this feature.

Download the Hubitat app