I am developing a SmartThings Edge Driver for a multi-gang Zigbee switch. The driver uses a multi-component profile (components: main, main01, main02, etc.) with multi-tile dashboard presentation.
In the device Detail View, users can rename each component — for example, “Kitchen”, “Office”, “Bedroom”. These custom labels appear correctly in the Detail View.
However, in the Dashboard multi-tile view, each tile always shows the static label from the profile YAML (e.g., “Switch 1”, “Switch 2”), and never the user-edited label from the Detail View.
My question:
Is there any supported mechanism — in the profile YAML, the presentation/device-config JSON, or the Edge Driver Lua code — that would allow the dashboard multi-tile labels to reflect the user-edited component labels from the Detail View?
Specifically I would like to know:
-
Is there a template variable (e.g., something like {{component.label}}) usable in the dashboard state/action label fields of the presentation JSON?
-
Is there an API call from the Lua driver (e.g., via try_update_metadata or any other method) that can update a component’s display label dynamically at runtime?
-
If neither is currently supported, is this on the roadmap?
Context:
-
Driver type: Zigbee Edge Driver
-
Profile: multi-component (main, main01..main06)
-
Presentation: custom device-config JSON uploaded via CLI
-
The profile is in published status (packaged via edge:drivers:package)
Thank you.
Shai
These are my current presentation files

