Labels in dashboard multi mode to be as in details mode

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:

  1. Is there a template variable (e.g., something like {{component.label}}) usable in the dashboard state/action label fields of the presentation JSON?

  2. 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?

  3. 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

How about child devices for each channel? (GitHub)

Child devices works fine and I am creating them as well. But Multi Tile (in that case) represent exactly how my touch device looks like. Do you an idea how to change the labels of each switch ?

Change the name of the “group” in your presentations. See here for an example.

    "dashboard": {
        "states": [
            {
                "component": "main",
                "capability": "legendabsolute60149.infoPanel",
                "version": 1,
                "idx": 0,
                "group": "main",
                "values": [],
                "composite": true
            },
            {
                "component": "main",
                "capability": "thermostatOperatingState",
                "version": 1,
                "idx": 0,
                "group": "Operating State",
                "values": [],
                "composite": true
            },
            {
                "component": "main",
                "capability": "battery",
                "version": 1,
                "idx": 0,
                "group": "Battery",
                "values": [],
                "composite": true
            },
            {
                "component": "main",
                "capability": "thermostatMode",
                "version": 1,
                "idx": 0,
                "group": "Thermostat Mode",
                "values": [],
                "composite": true
            },
            {
                "component": "main",
                "capability": "legendabsolute60149.thermostatLocked",
                "version": 1,
                "idx": 0,
                "group": "Thermostat Locked",
                "values": [],
                "composite": true
            }
        ],

That’s fine , but I want the user to have the ability to write whatever he desires. I don’t want that the labels will be hardcoded. Remember, I’m talking about lights switch device with 4 buttons.