[ST Edge] vEdge Creator: a virtual device generator for end users

Here is an Edge driver that will enable end-users to create virtual devices that run locally on-hub.



  • Supports the following virtual device types:
A/C, air quality, alarm, battery, contact, door, fan, garage door, light, lock, momentary button,
motion, panic, presence, refrigerator, shade, smoke, switch, temp/humidity, TV, switchlevel/dimmer,
thermostat, video camera, water
  • Create any number of virtual devices
  • Easy and fast to use: No coding or CLI required
  • Enables you to create 100% local automations with virtual devices
  • See how many devices you’ve created of a given type (inventory)
  • Devices include additional controls and features beyond what is available through CLI-created virtual devices
  • Several virtual device types include a switch that mirrors controls - useful for Alexa triggers
  • Several virtual devices types include custom controls to set device states
  • Ability to select dashboard icon for select devices (e.g., switch, contact, motion)
  • Momentary button includes both switch and contact, plus preference settings to control on/off/revert behavior, and delay value
  • Motion includes optional auto-revert back to inactive after given delay value

Known issues
There is a known issue with Connect/Wifi hubs as of 11/8/21. The symptom is that the vEdge Creator device will not get created when you do an Add device/Scan nearby. Hopefully a future firmware update will solve it.

Virtual Smoke Detector devices may not show the proper state on the device dashboard. This is a known SmartThings app issue. However, the device details screen should show the correct state (‘detected’ or ‘clear’) and automation triggers based on the smoke detector state should work OK.

Battery power source not available as an automation routine condition; this appear to be a SmartThings bug as of 6/2022.

Media playback controls are not functional in the TV devices due a SmartThings issue.

I’m happy to expand the list of virtual device types supported based on community needs.

Please leave your feedback here!


  1. Use this channel invitation link to load the driver to your hub: SmartThings. Add a little smartness to your things.
    Enroll your hub, then display available drivers and choose Virtual Devices V2

  2. Once the driver has been installed to your hub, go to your mobile app and do an Add device / Scan for nearby devices. This will result in the creation of a new device called vEdge Creator V2.5 to be found in your No Room Assigned room.

  3. Open the new creator device to the device Controls screen. Set the quantity of devices you want to create of a given type, then select the device type and your device(s) will be created in your No room assigned room.

If you have any problems, it would be helpful to get a log output, but for that you will need the CLI:

smartthings edge:drivers:installed
smartthings edge:drivers:logcat <driverID> --hub-address=<hub ip addr>

Upgrading from prior versions:

  • If the existing creator device is not working with the updated driver, the creator device can be deleted and recreated without affecting existing virtual devices. Ensure the latest driver is installed to your hub by checking the driver version. Once the updated driver is on your hub, you can delete the existing creator device, then perform an Add device / Scan for nearby devices, and a new creator device will be created.
Announcement | SmartThings Edge for Devices and Automations
FAQ: Creating a virtual Device
FAQ: Alexa simulated devices and others on the new platform?
Mobile Presence Stopped working (Android)
How Create a Virtual Device without the IDE?
Placeholder Smartphone not show change position in the IDE
SmartThings momentary push switch
Multiple LAN Devices with One Edge Device Handler
The End of Groovy Has Arrived
Changing Status of Life360 Presence Sensor Manually
Map Physical Button to Virtual Button
"Advanced" Automations with multiple presence sensors
The End of Groovy Has Arrived
Lighting Groups
JSmartApp - iOS SmartThings client
Webcore Automation to Routines frustrations :( Pause routine while other routine is running?
Programmatically Close Simulated Contact Sensor?
Edge replacement for Ridiculously Automated Garage Door automation?…
Post Requests for Edge Drivers Here (community-created)
All my Simulated Switches are offline and not working
All my Simulated Switches are offline and not working
Virtual Devices Beyond Simple On/Off?
[RELEASE] Zooz MultiRelay (ZEN16)
Virtual Fire Detector
Local Scene Execution
Setting webCore Variable from Virtual Thermostat Setpoint
[ST Edge] Virtual Energy/Power Meter
(New Release) Beta Edge Drivers Z-Wave with more FIBARO devices:
How to execute a scene from a rule?
Migrating to Ring Alarm
[Beta] Zigbee Edge Driver compatible with Lidl, Ecosmart, Osram, SmartThings & Others
Post Requests for Edge Drivers Here (community-created)
The End of Groovy Has Arrived
iPhone as presence sensor?
Samrtphone as presence sensor
Triggering LIFX Scenes from ST?
The End of Groovy Has Arrived
Driver Migration How To?
New app Virtual switch
Looking for a virtual device sending constant/periodic update?
V2 Hub with firmware 043, but no "drivers" option in the app (August 2022)
New Edge Driver for Inovelli Gen1 Dimmers (NZW31) and Inovelli Gen1 Switch (NZW30)
From DTH to Edge Migration tips or tricks?
How do I detect that my iPhone is no longer at home?
[RELEASE ] Virtual Presence Sensor
Any New Presence Sensor Device
Announcement | Changes to our Legacy SmartThings Platform
Integrating Swann Security Motion Sensors (DVR) through IFTTT
How do I create my 2nd virtual Echo switch
[Beta] Zigbee Edge Driver compatible with Lidl, Ecosmart, Osram, SmartThings & Others
FEIT Wifi outlets driven by SmartThings
Error When Trying to Add Virtual Device
FAQ: Can I trigger an Echo Action without Speaking to It?
Manual override to disable automations based on physically adjusting a switch?
%device% tag in the new ST app?
Scene issue
Routine trigger when I leave location
Combining overlapping motion sensors to avoid false alarms?
Is Webcore still supported "allowed" to work by Samsung Smartthings in the new app?
Is Webcore still supported "allowed" to work by Samsung Smartthings in the new app?
Timer capability
Post Requests for Edge Drivers Here (community-created)
Make a custom device now without groovy?
My STHM is a mess
Virtual switch option under Labs in the ST app
Post Requests for Edge Drivers Here (community-created)
New Stock Edge Drivers Beta list
Hub v2 died, can only source v3: how do I migrate?
Mobile Presence sensors no longer working
How to Use a Meross Plug to Use HomeKit Presence to Trigger ST Routines
Virtual dimmer in 2021?
How to implement a edge driver for bridge device in lan?
FAQ: Creating a virtual Device
Logitech Harmony Elite + Broadlink RM Pro + SmartThings + RF device integration
Non (yet!) developer Q: can virtual devices be more than binary?
Need to get a device to trigger momentarily and run local
Ecobee automation after Groovy/Webcore retirement

Does it automatically run every time you put the hub in pairing mode? Any way to kill it so you can pair other devices?

1 Like

Not sure what you mean. The initial scan nearby is just to initialize the driver and create a ‘creator-device’. From then on any new scans initiated are ignored. The virtual devices themselves are created via the settings options within the creator-device. You may need to try it out to see what I mean.

1 Like

ah, interesting. will play later when I can get a log opened.

This works great!
Amazing work @TAustin
Any chance of a dimmer?


This is great. Lot of my automations run in the cloud due to virtual switches. This will allow them to now run locally.

1 Like

Ah right. I’d got so fixated with the driver discovery process that I didn’t think about being able to generate more devices from a device life cycle.

Ironically I use the update() method in a DTH to do a broadly similar thing, albeit with child devices.

Serves me right for not following the Hello World example and trying to throw in custom capabilities which didn’t work.


A virtual presence sensor (on = present, off = not present) might well be a real game changer for me.

Much as I like messing around with code, the Edge drivers really don’t have any appeal to me so the less I need to do with them the better.


+1 on virtual presence sensor


@TAustin Virtual Motion works well with IFTTT connected to Wyze.
Fyi after creating virtual device, renaming and moving to different room, and if you go to vEdge Creator, and type 0 for same type of device, it does not delete virtual device(s). This is good

1 Like

My first installation of a community created edge driver, most excellent thank you @TAustin

I do have a suggestion, on the drivers main page, under the instructions, would it be possible to have a count of the devices already created, or a list of the devices names once they are created and renamed similar to the old DTH of v switches which used to list the created devices

Even if not possible it is an excellent driver, thank you

1 Like

I have tested the 4 virtual devices with automations and scenes and they work very well.
In the logcat I have not seen any errors during the installation and operation with the automations.

If it was possible to add the virtual dimmer, I would use it to encode a sequence of multiple button presses to arm away, at home and disarm STHM.

Great job !!!, Thanks


Echo also instantly found the created v switch and motion sensor I created as a test, I mean, really instantly :+1:


So can you use these to trigger a echo routine? How do you actuate the virtual Sensor?

RIght; that works as intended. If you want to delete devices, you can delete them manually.

If you do change a setting to 0. You’ll have to use an incremental number to get more devices created. It simply subtracts the last number from the new number to determine how many devices to create.

Yes, you should be able to trigger an echo routine with a virtual contact. You trigger a virtual sensor by turning the included switch on and off (on == ‘open’ or ‘active’, off == ‘closed’ or ‘inactive’).


Thanks for the feedback!

I’ll look at a virtual dimmer type. I may have more question for you on that one, but will get back to you.

1 Like

Virtual dimmers have in the past been used a couple of different ways:

  1. to act as a master control for a group of dimmers

  2. to act as a Value holder for a variable that can have more than two values. For example, some people use them for fan settings, some people use them for sound levels, some people use them for humidity ranges.

Adding a count would be fairly easy; a list might be a bit more challenging to format nicely. Will consider…

Thanks for your comments!

1 Like

Presence sensor: will do!