From my perspective, devices and device features should not be treated equally:
The device name, even if set by default by the system, should be modifiable. In your example, @pierre-gilles, garage door is probably defined by the user. In a practical case where you have 2 garage doors, the system might call them garage-door-1 and garage-door-2, and the user could rename them to garage-front-door and garage-back-door because, well, it’s easier to know what’s what.
For device features, I don’t see why the user should rename anything. Open/Closed/On/Off/battery percentage/color… these are intrinsically linked to the type of device and the features it has. These features are hard-coded and linked to constants in the system.
A feature = « an action » = a name / a state.
If we take the example of a temperature sensor aka « temperature-sensor »:
It can implement different features (depending on the brand and model…) but it remains a temperature sensor. Now, depending on these features, the UI will display:
- 24°C
- 84% humidity (or not)
- 1020 hPa (or not)
Apart from global environment settings on the metric system (°C / F, etc.), I don’t see any interest in customizing the output of these features. It’s standardized, there’s a name, an icon, buttons (and associated actions).
And yet, I am a user who likes to customize ![]()