Hello,
I’ve been asking quite a few questions lately — thank you for your patience.
Our device uses SmartThings Direct Connect, and through a recent thread I learned that WWST certification is required to commercially launch a product with SmartThings integration. We’ve decided to remove our Custom Capabilities and pursue WWST certification instead.
Before moving forward, I’d like to confirm whether our current use of the fanMode capability could cause any issues with WWST certification.
Our device has the following operation modes: Manual (user-controlled fan speed), Temperature (auto fan speed based on temperature), CO2 Detection (auto fan speed based on CO2 level), Dust Detection (auto fan speed based on particulate matter), and Cycle Vent (periodic on/off cycling).
To represent these modes in SmartThings, we’re using the standard fanMode capability with patched display labels, as shown below:
{
"component": "main",
"capability": "fanMode",
"version": 1,
"values": [],
"patch": [
{
"op": "replace",
"path": "/0/label",
"value": "Operation Mode"
},
{
"op": "replace",
"path": "/0/list/command/alternatives",
"value": [
{ "key": "auto", "value": "Manual", "type": "active" },
{ "key": "high", "value": "Temperature", "type": "active" },
{ "key": "medium", "value": "CO2 Detection","type": "active" },
{ "key": "low", "value": "Dust Detection","type": "active" },
{ "key": "turbo", "value": "Cycle Vent", "type": "active" }
]
},
{
"op": "replace",
"path": "/0/list/state/alternatives",
"value": [
{ "key": "auto", "value": "Manual", "type": "active" },
{ "key": "high", "value": "Temperature", "type": "active" },
{ "key": "medium", "value": "CO2 Detection","type": "active" },
{ "key": "low", "value": "Dust Detection","type": "active" },
{ "key": "turbo", "value": "Cycle Vent", "type": "active" },
{ "key": "off", "value": "Off", "type": "inactive" }
]
}
],
"visibleCondition": {
"value": "fanMode.value",
"operator": "ONE_OF",
"operand": "[\"auto\",\"high\",\"medium\",\"low\",\"turbo\"]",
"component": "main",
"capability": "fanMode",
"version": 1,
"hideOnUnmatch": false
}
},
We are not changing the capability ID or attribute keys — only the display strings via patch.
With that context, I have the following questions:
- Does renaming the
fanModedisplay values viapatchcause any issues for WWST certification? - If it does, would using the
modecapability instead be acceptable? - If
modeis recommended for operation modes, we have a conflict — we’re already usingmodefor cycle preset selection (e.g.1h10m,1h20m, etc.). Is there another standard capability suitable for a list-based preset selector? (This question only applies if the answer to question 1 is thatfanModepatching is not allowed.)
Thank you.
