Groovy IDE Migration questions

I have a Zooz Zen23 switch and it is paired with the stock Z-Wave switch edge driver for months. No issues to date.


It would be nice if the developers could provide a migration button in the app that would allow a one time move for each device from a DTH (stock or custom) to an Edge driver. Then we could migrate at our own schedule and with confidence, instead of waiting for batch conversions that may or may not work hovering over like a dark cloud. I know you can exclude/include devices to end up with the same result but that requires a lot more work.

If a device is still on a DTH, the “Driver” menu appears but you get a conversion button instead of the Edge driver detail… That would help explain DTH vs Edge to people as well instead of the Driver option just being missing.


An authoritative explantion of fingerprints is here.

The “fingerprint” is a combination of manufacturer code (“mfr”), product (“prod”), and “model.” Each is a 16-bit value expressed as 4 hexadecimal digits. For example, the fingerprint for the Zooz ZEN32 is “027A-7000-A008” - “mfr” 027A is Zooz, “prod” is 7000, “model” is A008.

The smartthings CLI reports the complete fingerprint as “deviceManufacturerCode”, and the “prod-model” portion (“7000-A008”) as “deviceModel.”

If an exact match for the fingerprint appears in an enrolled channel’s fingerprints.yml file, then SmartThings will install and assign the driver.


Thank you very much!!

Thanks but not beeing a software/IT person I am really struggling with this entire process. Does the “placeholder” designation as Device Type on all my wifi devices mean they have not yet been migrated over to the the new Edge drivers as well? I am fine with waiting until the ST migration plan automatically (?) switches all my devices (wifi, zigbee, zwave) over and I don’t have to go looking for the correct drivers myself. However is that the way it is planned to work if I don’t want to do anything now? I only have a couple custom (?) DH that I had to copy and then publish when I originally got my Zooz devices in order to get them to work with ST at the time. Will the new Zooz Edge drivers take care of this as well? Thanks so much.

“placeholder” means those devices have been migrated, or that there’s cloud-to-cloud integration already there. You should be fine, but to be sure, what wifi devices do you have?

That is the way it’s suppose to work, but since you have some custom handlers, you will need to get those Zooz drivers so that you can retain the same functionality that you had with the older device handlers, unless you want just the basic features. Here’s where you can find those drivers and get help with them:


In general, wifi devices communicate with ST thru a cloud integration (meross, tplink, etc). There are exceptions where an Edge driver is used for local control of a Wifi device but you’d know if you had set that up already.

Cloud integrations are not effected by the DTH->Edge transition.

Edit: @johnconstantelo types faster than me.


Thanks so much for the link to the Zooz Channel. I have downloaded the needed Edge drivers but they only appear in my ST hub when I click on the three-dots. They are not showing on the specific device. Is this correct or do I need to delete and re-install all my Zooz devices for them to show at the device level?

You have to delete the device from the App; remove any specific DTH from the SmartThings IDE and then re-add the device within the App. You’ll know if this all worked because you’ll the “Driver” option listed when click on the device’s edit settings page! To clarify:

In the App click on the particular device, click on the three dots at the top right of the App screen, this will show a pop-up menu that should contain a list: Cancel, Information, Driver, Settings and Edit. If you see Driver then you’re good to go! (this is on an iPhone), On Android I see Edit, Settings, Driver and Information.


Thanks so much for this information. However, if I deleted all my Zooz custom DH’s (required for them to work with ST), delete the devices from the app and re-add them (with the new Edge drivers) will they still work? In other words, are the Edge drivers now functional and already completed with the ST migration?

Yes, absolutely. Once you’re using an edge driver for a device, consider it migrated.


I found it was easiest to do them one at a time. You can just comment out the fingerprint in your custom DTH (prefix “//” to the fingerprint lines associated with your device, save and publish). The handler will still be used for existing devices, but new devices won’t see it as available anymore. So you can migrate each device one at a time.

Also, if you have WebCoRE integration then that device will no longer show up in WebCoRE. As a consequence of these changes WebCoRE will also be deprecated.

Thanks for the suggestion. However I have no idea how to do this. Can’t I just delete the entire custom DTH and then delete/reinstall my specific Zooz device?

For example here is the first part of the custom DTH for one of the devices. Where would the // be added to the fingerprint lines?

  • Zooz Remote Switch ZEN34 v1.1.1
  • Changelog:
  • 1.1.1 (02/07/2021)
  •  - Added patch workaround to presentation for supportedButtonValues support in Automations.
  • 1.1 (01/10/2021)
  •  - Added new fingerprint
  •  - Changed the way associations are implemented so that it assumes the associations were successfully saved when the device isn't joined with S2 security.
  • 1.0.3 (11/14/2020)
  •  - Fixed wake up interval
  • 1.0.2 (11/11/2020)
  •  - Fixed setting labels
  • 1.0.1 (11/07/2020)
  •  - Fixed issue with SmartThings converting string attributes into dates if they start or end with specific numbers like 34.
  • 1.0 (11/06/2020)
  •  - Initial Release
  • Copyright 2021 Zooz
  • Licensed under the Apache License, Version 2.0 (the “License”);
  • you may not use this file except in compliance with the License.
  • You may obtain a copy of the License at
  • Unless required by applicable law or agreed to in writing, software
  • distributed under the License is distributed on an “AS IS” BASIS,
  • WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  • See the License for the specific language governing permissions and
  • limitations under the License.


import groovy.transform.Field

@Field static Map commandClassVersions = [
0x20: 1, // Basic
0x26: 3, // Switch Multilevel (4)
0x55: 1, // Transport Service
0x59: 1, // AssociationGrpInfo
0x5A: 1, // DeviceResetLocally
0x5B: 1, // CentralScene (3)
0x5E: 2, // ZwaveplusInfo
0x6C: 1, // Supervision
0x70: 2, // Configuration
0x72: 2, // ManufacturerSpecific
0x73: 1, // Powerlevel
0x7A: 2, // Firmware Update Md (3)
0x80: 1, // Battery
0x84: 2, // WakeUp
0x85: 2, // Association
0x86: 1, // Version (2)
0x87: 1, // Indicator
0x8E: 2, // MultiChannelAssociation (3)
0x9F: 1 // Security 2

You can, but if you delete the custom DTH your existing devices that use it no longer work. I was trying to make it easier for you to migrate one at a time. If you only have 1 device OR you don’t mind doing them all at once, go for it.

  • Exclude all devices using the custom driver
  • Delete the custom DTH in the IDE
  • Make sure the new edge driver is installed
  • Include each device, after the first one make sure its using the driver you want it to (in the Driver tab under the hamburger/3 dot menu on the device).

Good luck!

I appreciate your suggestion and would prefer to edit the custom DTH but I don’t understand how to comment out the fingerprint? If I could do this I would do one at a time (5 devices using 3 custom DH).

Thanks so much.

  • In the IDE, go to the My Device Handlers tab
  • Find the device handler, and click the name to go into the editor.
  • Inside the editor, scroll down to the “fingerprint” section. Add two forward slashes (the comment seqence in Groovy) to the front of the line (or lines, depending on how many devices this DTH supports). The IDE should make the line red to indicate that its commented out. Click -Save-. Then click -Publish-, -For Me-. That will save and publish the driver to your cloud. Now your existing devices will continue to work but new devices will no longer find the DTH.

Good luck!


Well thanks to you I finally found the fingerprint line and followed the procedure you provided. I will now remove and delete the device and hopefully, the new Edge drivers will load.

// fingerprint mfr: 0312, prod: 0004, model: F001, deviceJoinName: Zooz Remote Switch
// fingerprint mfr: 027A, prod: 0004, model: F001, deviceJoinName: Zooz Remote Switch
// fingerprint mfr: 027A, prod: 7000, model: F001, deviceJoinName: Zooz Remote Switch
Thanks again.

First one worked perfect! Thanks.

1 Like

Once you’re done migrating, remove the old DTH to help clean things up.

  • Click the properties button on the driver.
  • Wait a few seconds for the properties page to appear. It can be slow. Click -Delete- at the bottom of the page.
1 Like