I suspect the icon problem may be particular to LAN type devices; perhaps zigbee & zwave ones are more stable. These virtual devices are defined as LAN type devices to enable the ability to create devices on the fly like I do. The Edge driver function (try_create_device) is only available to LAN devices at the moment. Once Edge adds a ‘virtual’ type device, which I think they will eventually do, I’ll switch this driver over to use that. But hopefully the icon issue will be sorted out by then regardless.
No it isn’t. The stock Zigbee Motion and Zigbee Contact drivers do the same thing. The only Edge Driver I have where the icon lingers is a Zigbee Button written by @iquix where the ocfDeviceType
is included in the profile metadata. The other drivers don’t use that, they rely on the categories
.
I think there will definitely be a mechanism for creating genuine virtual devices, that is to say ones that simulate the behaviour of the real thing. I’d be a bit surprised if they were implemented as Edge drivers though. Their natural home would seem to be the cloud to me.
Then users would have to have some other place to host them. Which adds additional complexity. And they won’t run local.
Being able to host them on an existing smartthings hub is an advantage for a lot of power users.
Whether being able to run local is a real advantage or not depends on the use case. And, as you mentioned, what other functionality the platform offers by then.
Well yes, except the local option is already available. Edge drivers can be used to create virtual devices that run locally if they are what users want. The cork can’t go back in the bottle.
Where a solution is needed is for when you have to, or it makes more sense to, run automations and apps in the cloud. If your home internet goes down, or you don’t have any hubs to start with, Edge driver based virtual devices are useless to you.
I don’t think we should make assumptions about where anything could be hosted. We can already create our own self-hosted virtual devices if we want to. What ST choose to host themselves is up to them. Just because they want to move SmartApps away doesn’t mean everything has to go.
I add in metadata the ocfDeviceType
in all profile files. yml and they are not lost, they show well in all views and automation, as recommended by @iquix
metadata:
deviceType: Light
ocfDeviceType: oic.d.light
deviceTypeId: Light
I use a list recommended by @Automated_House and posted by .
@orangebucket
Perfect; I was going to ask if there was a list. I can try changing all the profiles. Just not sure how “strategic” this method is, but if it works for now we can go with it.
This is an updated device type list for those who want the correct icon for their massage chairs. I’ve updated the list in the referenced thread, and also in another place I posted it …
List updated 9th October 2021.
Device Type | ocfDeviceType |
---|---|
Air Conditioner | oic.d.airconditioner |
Air Purifier | oic.d.airpurifier |
Air Quality Detector | x.com.st.d.airqualitysensor |
Battery | x.com.st.d.battery |
Blind | oic.d.blind |
Blu-ray Player | x.com.st.d.blurayplayer |
Camera | oic.d.camera |
Contact Sensor | x.com.st.d.sensor.contact |
Cooktop | x.com.st.d.cooktop |
Dishwasher | oic.d.dishwasher |
Door Bell | x.com.st.d.doorbell |
Dryer | oic.d.dryer |
Elevator | x.com.st.d.elevator |
Fan | oic.d.fan |
Feeder | x.com.st.d.feeder |
Garage Door | oic.d.garagedoor |
Gas Valve | x.com.st.d.gasvalve |
Health Tracker | x.com.st.d.healthtracker |
Hub | x.com.st.d.hub |
Humidifier | x.com.st.d.humidifier |
IR Remote | x.com.st.d.irblaster |
Irrigation | x.com.st.d.irrigation |
Leak Sensor | x.com.st.d.sensor.moisture |
Light | oic.d.light |
Light Sensor | x.com.st.d.sensor.light |
Massage Chair | x.com.st.d.massagechair |
Motion Sensor | x.com.st.d.sensor.motion |
MultiFunctional Sensor | x.com.st.d.sensor.multifunction |
Network Audio | oic.d.networkaudio |
Others | oic.wk.d |
Oven | oic.d.oven |
Power Meter | x.com.st.d.energymeter |
Presence Sensor | x.com.st.d.sensor.presence |
Refrigerator | oic.d.refrigerator |
Remote Controller | x.com.st.d.remotecontroller |
Robot Cleaner | oic.d.robotcleaner |
Siren | x.com.st.d.siren |
Smart Lock | oic.d.smartlock |
Smart Plug | oic.d.smartplug |
Smart Tag | x.com.st.d.tag |
Smoke Detector | x.com.st.d.sensor.smoke |
Solar Panel | x.com.st.d.solarPanel |
Sound Sensor | x.com.st.d.sensor.sound |
Stove | x.com.st.d.stove |
Switch | oic.d.switch |
Television | oic.d.tv |
Thermostat | oic.d.thermostat |
Vent | x.com.st.d.vent |
Voice Assistance | x.com.st.d.voiceassistance |
Washer | oic.d.washer |
Water Heater | x.com.st.d.waterheater |
Water Valve | oic.d.watervalve |
WiFi Router | oic.d.wirelessrouter |
Wine Cellar | x.com.st.d.winecellar |
Just to be clear, this is the list you get offered when creating device profiles in the Developer Workspace. I believe you can just remove the space character(s) from the device types above to get the PascalCase form. I certainly haven’t deliberately changed any spelling. However the source material is very inconsistent with where PascalCase is used.
I want a massage chair in my wine cellar just to have those two icons in ST…
Yes, once I saw massage chair there was no way I wasn’t updating the list.
Other new entries include Battery, Power Meter, Solar Panel and Smart Tag.
It is important to remove the spaces.
If you don’t, it gives a fatal error and the driver may hang.
It happened to me,
metadata:
deviceType: MultiFunctionalSensor
ocfDeviceType: x.com.st.d.sensor.multifunction
deviceTypeId: MultiFunctionalSensor
Sigh, until they add Turkish sauna and Philips Sonicare I’m out.
Device profiles have been updated to improve the icon problem. I pushed a driver update too, but not sure it is required when just profiles are changed. I can definitely see an improvement so far with newly created ones. Affect on existing devices may lag.
Thanks to everyone for recommending this change; much credit due to @iquix for the approach and @orangebucket for the type list!
I’m probably alone in this having this “issue” but does anyone else find that it’s easy to accidently hit the button on the presence sensor and change the presence status?
I have it on my favorites page and sometimes the app glitches while scrolling and I inadvertently trigger the button.
Icons seem to work! I deleted driver, old sensors and istall new ones. Thanks!!
@TN_Oldman I have the same affection and concerns for Kuku Harmony as you, but recently after speaking to a very clever developer, cough cough, my anxiety about it’s possible demise has been dramatically reduced.
I certainly find the app(*) sometimes stops responding for just long enough for me to start swiping and tapping impatiently and then catches me out when it comes back to life. I’ve certainly pressed buttons on tiles by accident when that happens. I’ve done the same on the details page too. The balance is still in favour of having the button on the tile for me.
(*) I don’t want to say it is a SmartThings app specific thing. I think it happens to other apps too.
My icons changed overnight.
I’m not sure what the deal is with profiles and driver updates. I have a couple of stock Zigbee Contacts that had been on the wrong profile to start with. They were then changed to another wrong profile. Can’t remember if that changed automatically in the app. Finally they moved to the correct profile but only one changed in the app and even that may have been deleted and reinstalled. The other definitely had to be deleted and installed to get the correct profile. Just waiting or pairing again was insufficient.
My icons changed automatically.
Nice work to all!!
My Vedge created smoke detector says ‘checking’ on the tile no matter if on or off
It is not used in any automation but switching on does trigger a Echo smoke detector alert on my phone and Samsung Tv which is good for those that need the function
I don’t see that, I just get a blank space.