We should be able to change Matter device types as part of onboarding and management. My specific use case is for Tapo S505 wall switches that are onboarded as “light” but really need to be “switch” for a ceiling fan.
You might have to change that is the native app. That’s an odd one.
Agreed, unfortunately the Tapo app doesn’t let me change the type. I noticed in Google Home I was able to change the device type but I have no such luck in Apple Home or Home Assistant.
I have to +1 this - I have a Leviton D215S switch that comes up in the Light domain, and there is no way to switch it to the Switch domain in the app (the non-Matter integration into HA even shows all objects as Lights, even when they’re not)
I +1 this. It is an annoyance that the S505’s register only as lights in HA and by proxy (via homekit bridge) in HomeKit. In HomeKit you can’t pick the icon (just the lightbulb). I haven’t tried adding them via matter, but so far have not had luck with those devices (lost 17 light bulbs after upgrading my wifi and while they show in HA, they don’t work and they have completely disappeared on my AppleTV and Alexa, so I have to manually repair every single one again. Not fun because now I have to climb up there to the fixtures and get the codes again because my dumb butt lost the paperwork that had them, but that is a different issue all together.) All my regular Tapo/Kasa switches show up as switches.
+1 on this. I have several Aqara H1 switches connected to an Aqara M1S Gen 2 Hub. I’m able to set the switch type using the native app. When imported directly into HomeKit from the native app, I can also change the switch type within Apple’s Home app.
However, when these switches are added to Home Assistant as Matter devices (via the hub), they are identified as lights, and the entity type cannot be edited. Additionally, if I expose them via HA’s HomeKit Bridge instead of adding them directly from the native app, they remain uneditable in Apple’s Home app.
I’m in the same boat. Also have a Tapo S505D, which I added to HASS, via Matter, and it’s coming up as a light.
It seems other integrations provide the ability to override the domain of devices, but I don’t see a way to do that for matter. It kinda messes up automatic dashboards, then gets exposed to Alexa wrong, has the wrong icon, etc.
I can probably make it work by putting exceptions all over the place so it doesn’t get grouped in with lights, make a virtual device for it, and things like that, but it would be easier to just tell HA it’s a fan in the first place.
+1 – I have a handful of Aqara WS-USC01 single rocker switches on a Hub M3, with a few of them on non-light devices. They are presented as a light via the Matter integration and I would like to override them to present as a switch, to allow for grouping with other switches.
This is a bit of a late answer, but I had the same issue (see similar issue: Expand Switch_As_X to include Matter Light Switches - #5 by jvm) and I resolved using templates to create fan entities. In your configuratino.yaml, add a section along the lines shown below:
For the “unique_id”, I use the serial number of the Tapo device.
fan:
- platform: template
fans:
basementbedroomtoilet:
friendly_name: "Basement Bedroom Toilet Fan"
unique_id: "98254A23679E"
value_template: "{{ states('light.basement_bedroom_toilet_fan') }}"
turn_on:
service: homeassistant.turn_on
entity_id: light.basement_bedroom_toilet_fan
turn_off:
service: homeassistant.turn_off
entity_id: light.basement_bedroom_toilet_fan
basementsbedroom:
friendly_name: "Basement Bedroom Fan"
unique_id: "98254A23689E"
value_template: "{{ states('light.basement_bedroom_bedroom_fan') }}"
turn_on:
service: homeassistant.turn_on
entity_id: light.basement_bedroom_bedroom_fan
turn_off:
service: homeassistant.turn_off
entity_id: light.basement_bedroom_bedroom_fan
Thank you! It took some effort to get all my fans and switches working with the template, but I’m glad it’s finally working now!
This integration should be able to do it too: Change device type of a switch - Home Assistant
This feature request still needs implementation, please unmark the limited workaround as a solution.
We still need a way to change Matter device / entity types. I have a Matter switch that presents as a light in Home Assistant. Template sensors will not get rid of the original light sensor - it is not converting the Matter entity, rather creating a new entity off of it. This creates a messy situation where you can’t disable the light entity or the fan won’t work, but you also don’t want the switch to be treated as a light when you, say, turn off all lights on a floor. I worked around this by moving the light entity to a ‘unused devices’ area, but that is a clunky workaround and by no means a user friendly solution to this feature request. If you have to dive into YAML and create false areas (or remove a device from its area entirely) to solve a basic problem like indicating device type, that is a major UI fail.
We need a UI-native option to change device / entity type, ideally during device enrollment. It is possible this could be done in a integration-agnostic way so it works with Z-wave, Zigbee, etc., but it is definitely needed for Matter due to switches misreporting themselves as lights.
This only works if the device is reported by Matter as a switch. In my case the switch is being reported to Matter as a light.
Here’s an update to my prior solution that involves much less YAML coding. I find it easiest to keep two browser windows / tabs open to do this.
- In browser 1: find a light device that you want to change.
-
In browser 2: Navigate to: Settings → “Devices & services” → Helpers, and choose the “Create Helper” button in the lower-right corner
-
Find the “Template” helper:
-
And choose “Template a switch”
-
Fill in the name (1), value template (2), On / Off actions (3), (4) and the related device (5).
For (1), pick any name. For (2) the “states” template should use the entity name for the light entity from step 1. For (3), (4) just set to turn on and off the original light entity, and in (5) pick the original light device from step (1) and the new entity will link to and appear inits Control section.
-
The original light control from step 1 will now have an added switch control.
-
If you want, you can hide the light control by turning off its Visibility and can also change the “Show as” for the switch by clicking on the switch entity, then the gear icon, then changing the “Show as”
Agree with others here, all my Kasa wall switches come over as lights and I need to change them to fans for the new Home dashboard organize them into the Climate section.
I can change the type if using the devices via the Kasa integration, but i want to use the Matter device since Matter is local push rather than polling so my dashboards get live updates on state changes rather than 1-10 second polling updates.
Thanks for taking the time to write this up helped with a tp link switch that came in from matter as a light entity.





