My Migration from SmartThings V1 Hub to HE

After a week, of migration and testing I am fully operational on my HE C-7. I must say, that after a bit of a learning curve, HE is absolutely spot on PERFECT. If you migrate from SmartThings to HE, you will find that the most work is in excluding all of your Z-wave devices and pairing them to the new hub. The HE pairing tool totally ROCKS compared to ST. The Zigbee pairing is less painful but still a time sink. Realize that you have to have to dig up the documentation for all of your Z-Wave and your Zigbee and understand the cryptic exclude and pair process for each. That's really the extent of the pain. I had one or two wall switches that took me hours to exclude.

Add these devices back in over a couple days. Both Z-wave and Zigbee are mesh networks. They take awhile to learn their adjacent nodes and who is the best repeater. Adding devices quickly will only break things. Sit back, chill and repeat.

I know that the trend today is to do everything in mobile apps. I have always hated that and my number one love about HE is the masterful web interface. Now that I have migrated all of my Smart Home devices from my SmartThings V1 Hub to Hubitat Elevation I had a chance to get rid of all the old and unused devices from installations over the last five years. My system is nice and organized now. I LOVE being able to configure everything in a web instance. After everything was cleaned up, I ended up with 121 devices. No one wants to configure 121 devices in a mobile app. Is Samsung listening? Kudos to HE.

The bottom line in this migration was that I was able to migrate all devices except for one of my two Go Control Linear Z-Wave sirens model #WA105DBZ.

The WA105DBZ that migrated (after a lot of Z-wave exclusion and pairing headaches) was the siren I have in the house. The other siren of this type was in the attic over the garage and intended as an outside siren. The WA105DBZ is an indoor siren and for that reason, I had installed it inside the attic protected from the elements. Ultimately, although the actual siren functioned, I was unsuccessful in either excluding or re-pairing it with the HE. I conclude that perhaps the electronics fried in the attic heat.

I had only one automation that I could not successfully move. That was my "Return" command for Alexa. I use Harmony Hubs for my Entertainment systems. This is a rather advanced automation. I know you will all appreciate this. Here is what it does:

  1. Watch a TV source on the Family Room Entertainment Center (OTA TV, Fire TV 4k, Roku, or PS3).

  2. Voice command Alexa to display one of the cameras outside the house or cast a phone to the TV using the Google Chromecast Ultra.

  3. The Samsung 8 Series 4K UHD TV can control its inputs independently using HDMI-CEC.

  4. HDMI-CEC will automatically change the TV input to where it sees the request. An example would be the Alexa camera request would change the input to the HDMI input hosting the FireTV 4K and the casting request would change the HDMI input to the one hosting the Fire TV 4k.

  5. This input change could be from any of the (OTA TV, Fire TV 4k, Roku, or PS3) inputs.

  6. The Logitech Harmony Hub will not have changed the input that it thinks that it is on. The input would only have been changed by HDMI-CEC.

  7. The Harmony Connect SmartApp is able to handle both querying what it thinks the current activity on the hub is and also able to switch to a new activity.

  8. Harmony connect can start, end or power off activities. Harmony connect cannot issue device commands like "change input". That is where the Harmony API comes in. You can enable the Harmony API on a Harmony Hub.

  9. In order to use the Harmony API, you must run a server on the local network which can communicate to the API on the LAN. Jonmaddox/harmony-api docker instance. Docker Hub. Simply install and run this Docker instance on your LAN. I run harmony-api on Container Station on my QNAP NAS. You could easily run this on a Raspberry Pi as well.

  10. A SmartApp called KuKuHarmony by turlvo GitHub - turlvo/KuKuHarmony: SmartApp allowing you to control each 'Device' in Logitech Harmony Hub using Harmony-API allows defining individual keypress commands for devices that run activities. The Github link documents how to use the API.

  11. When HDMI-CEC steals the input away from the Harmony Hub and I am done watching the camera or using the Chromecast, I simply say, "Alexa, Return". That is an Alexa routine that turns on a virtual switch which in turn triggers a Webcore piston.

  12. The Webcore piston finds out which HDMI input the TV is supposed to be on based on the current Harmony Activity and switches it back to that input.

  13. Here's the Webcore Piston:

This works flawlessly. Although I found an equivalent of Harmony Connect for the HE, I was only able to switch to activities which were presented as switches. The missing part of the puzzle was I was not able to use the code to query which activity was in progress using Webcore on HE. I also found someone that did work on porting KuKu Harmony to HE. I installed and tested it, but found out that I could create my Amazon Fire TV device with all the key definitions perfectly. When I tried to add my Samsung TV, it replaced, rather than added a new definition. As you can see from the code above, I need both the Samsung TV and the Amazon Fire TV Stick to be defined on KuKu Harmony.

So for right now, I have left only an instance of Webcore and KuKu Harmony on my old SmartThings V1 Hub. Everything else is migrated and working perfectly.

I ended up implementing some of my automations with Rule Machine 4.0 on HE and after I got the hang of it, I am very pleased. My more complex automations are running in Webcore on the HE. I also rely heavily on Echo Speaks and it is running perfectly on HE as well.

I was also able to configure MyQ Chamberlain Garage Door SmartApp in HE and it works perfectly which was one of my concerns.

My obscure button controllers also worked well. Someone in the community had written an interface for my BOND Ceiling Fan remote RF controller and it works great. I use Alexa to control all of my devices and the Alexa skill works perfectly. I enabled Chromecast Integration but I am not entirely sure what that gives me. The Sonos Integration is perfect. I created a dashboard for every room plus an environmental dashboard. I use the OpenWeatherMap API for weather and it is awesome.

I configured Lock Code Manager and Mode Manager to help me with HSM. The HSM presence monitor for mobile phones works great, unlike the ST predecessor. I use the Philips Hue connect to handle my 28 Philips Hue bulbs and it works great too.

Here's my list of automations as they stand now.

Bottom line, this is great. Kudos to the HE team and all the community posters.


I am on day 5 of my migration and wanted to share some steps that I've gone through for the migration for others to consider. Note I did not do them in this order, but ordered them after based on what I SHOULD have done.

Hubitat setup

  1. Export list of all devices and smartapps from ST IDE in case it is suddenly turned off

  2. plug in and connect to Hubitat, set static IP address on your router for Hubitat or on day 6 you suddenly wont be able to connect and will be confused

  3. migrate all GE Link Bulbs and CREE Zigbee bulbs to Hue Bridge first, set up Hue Bridge Integration built in app

  4. migrate all willing zwave and non bulb zigbee items radiating out from hub. if stubborn to connect, mark on list and wait a day until the mesh builds. Try again next day

  5. Sonos integration built in app, fix static IP addresses

  6. Add to Alexa app, enroll all devices (I use Alexa as a man in the middle only)

  7. Wifi devices

  8. Add "Virtual Contact Sensor with switch" driver code to make an Alexa actionable switch

  9. Wyze sensors

1. set up as user custom driver "virtual contact sensor with switch"
2. add to alexa app
3. discover devices - sometimes not needed
4. Create routine on - sensor motion yes, virtual switch on, and reverse (Driven By alexa)
  1. Tuya Plugs
1. set up as user custome driver "virtual contact sensor with switch"
2. add to alexa app
3. open device in alexa, change to motion
4. set up routines - virtual sensor motion yes, actual plug on, and reverse (driven by Hubitat)
  1. Set up all virtual switches for routines through RM or Webcore

  2. driver "virtual momentary" Hubitat/Virtual Momentary.groovy at master 路 stephack/Hubitat 路 GitHub

  3. must create activity on each switch, click on or push a couple times each so Google will register it upon import

  4. Set up Google - start from within google app, add all devices that dont join Google directly (dont add Wyze, Tuya...)

  5. Set up one dashboard autofill for all devices to test them

  6. Set up package manager to make custom app install easier

  7. Add Chromecast integration to add Googles for tts options, built in app

  8. Set up Hubigraphs for weather, to get tile on dash, need to add device, template attribute > graph

  9. Set up Dimmer Sync Parent and Child to link bulbs

  10. Set up Built in App Zwave polling to help with Jasco in wall dimmer paddle switches that arent reporting. (GE link bulbs and Kwikset locks not cooperating yet). Tried Hubi-poll instead based off of Pollster in ST Hubi-poll that does not use runIn, notices reboots/restarts 路 GitHub

  11. Then kill that and used rule machine instead to do polling more frequently

  12. set up vizio TV [BETA] Vizio SmartCast Display Driver

  13. added "Combined Presence" app and "iphone wifi presence" in Package Manager for presence sensor and to replicate "somebody home" [RELEASE] Combined Presence and set static ip addresses for phones

  14. Nest integration [Pre-Release] Google SDM API - Nest integration - gave up on this since it seems something is coming soon and I only have heaters on nest that I dont need yet

  15. Set up notifications in built in

  16. Set up Pushover for push notifications $5 one time cost per platform Pushover - Hubitat Documentation

  17. In webCoRE app settings within Hubitat define 'Pushover' as a Speech Synthesizer.

  18. Select Pushover as your device.

  19. Select "Send Device Notification" as an action.

  20. Put in what you want to send in the value field.

  21. Set up Twilio for SMS notifications Twilio - Hubitat Documentation (I am going to wait on this one as I cant figure out their pricing model which is usage based)

  22. Set up Scenes (=Routines from ST) in Groups and Scenes built in app How to use the Groups and Scenes App in Hubitat Elevation - YouTube

  23. Set up webcore:

  24. webCoRE for Hubitat Updates for info,

  25. Package Manager for install. (make sure all devices are showing up first before commencing webcore migration)

  26. dont forget to set up settings - notification device, weather connection, etc.

  27. backup pistons on ST instance

  28. toggle back to Hubitat instance top left drop down

  29. reimport New Piston> from backup file, one by one, reconnect devices OR consider if simple enough to just recreate in Rule Manager for lower load on system

  30. Install Smartly from Package Manager app [Pre-Release] Dashboard Drag'n'Drop for the built-in Dashboard (with Smartly!) for drag and drop ability and responsive ability on all devices on dashboards. have to add the smartly > attribute javascript tile to each dashboard you want the ability. GAMECHANGER

  31. build and arrange dashboards

  32. check out Smartly Skins and custom Icons Home 路 ezeek/smartly Wiki 路 GitHub.

  33. Register for Cobra apps website (free) so I can get SuperTile app to combine devices onto one tile and better define what a tile shows Announcing.. The new Cobra Apps & Drivers Website

Good Luck!


I'm about a month further down the road, but learned several things from your write up. Nicely done. Off to check out Smartly now...

1 Like

Wow. You have had a very busy five days!!

Hehe.. Nice humor there.. :smile:
And a very important step, that many seems to forget..

1 Like

Great summary and good process followed. :slight_smile:

If you have an ISP email address available this might be useful - free, no server-required email service that you can use to send texts to yourself via your mobile-provider's email to text gateway.

If you have or want to set up a mail server on Pi or NAS, this is an option as well:

Download the Hubitat app