I didn’t know that we can create virtual devices in the advanced web application. Does it render the vEdge Creator obsolete?
Not at all. One very popular use case for virtual devices is to trigger Alexa routines (not SmartThings routines) and the ones created through the advanced web app can’t do that except for the virtual lock, which is not what most people are looking for.
VEdge Creator offers many different device types with many different features.
Those who just need a simple virtual device may well choose to use the official feature. Choice is good.
FAQ: Creating Virtual Devices with the new architecture (Without the IDE) (2023)
They are the same devices with the VIRTUAL type that can be created using the API or via the CLI.
The standard prototypes are basically collections of one of more independent capabilities. If the capability defines setter or enum commands then those commands can be supported as their intended function is implied. Otherwise you can only set attributes by creating events in the API, and this isn’t something you can do using Rules so your automation and control options can be limited.
If you are creating custom devices then you can define event values for commands that allows you to set a serial sequence of events, but only within the same capability. So you can’t make a switch activate a motionSensor.
You can have more fun with custom local virtual devices as with those you associate them with an Edge driver and you can indulge yourself. With the exception of one of two cloud based stock virtual switches and a few of Todd’s LAN monitors, all of my virtual devices use my own Edge driver. I really don’t like messing around with Edge drivers but I make an exception for this one case.
I create all mine using the CLI so it isn’t particularly user friendly.
A particularly bonkers thing with the VIRTUAL devices is that the attributes get initialised with random values which can be quite ridiculous, even if you’ve already handled that yourself in an Edge driver. So you have to faff around cleaning the attributes up after creation.
Here’s an issue I just found today with the ST’s virtual switch: When the virtual switch is created, it isn’t tied to any hub. I’ve been trying to get my driver count and size down in my v3 hub. I figured since I’m just triggering some binary things with the vEdge virtual switches, I’d test one created in ST’s. When I added it, I wasn’t given the choice for which hub I wanted. I added the switch to one of my current routines and deleted the vEdge virtual switch. My routine immediately lost the flag showing it would be running locally. That was my suspicion and I confirmed it with my test. I deleted the ST’s virtual switch and put the vEdge virtual switch back and the local flag re-appeared. The vEdge driver is superior in many ways, mainly it can emulate almost any type of device and it will run locally on the hub, not the cloud.
I’ll give that a try. I had added the vswitch a while back through the app and didn’t see those options. I’m using the Virtual Switch option in the Labs menu. Just tried it again, and now those options do appear in the app. I’m guessing this was added in a recent update. I went back to an older version of the app, those choices don’t appear, just the device name and room, now there’s a choice for which hub and to run in the cloud or local. I’ll give this a try in my routines and see if I can claim some of the precious memory back on my hub.
Cool. I live in a country where Smartthings doesn’t trust us enough to give us that much power to create virtual devices in the app.
Can you give me some screenshots of how the interface looks like?
Here’s the Labs main page
Add a virtual switch
Register on hub (which makes it local) and choose which hub if you have multiple
This looks awesome!
What is the Universal Remote Control?
It’s kind of like a kiosk mode. When you first open it, all of your devices are listed with some minimal controls. You can customize it a little bit, by only showing certain devices and sorting (A-Z or by Rooms). It allows you to create a shortcut on the phone home screen that takes you straight into the remote, instead of drilling down to the labs page.