Replacing ISY with Home Assistant – Part 3 – Movin’ In!

This is the continuation of a short series on transitioning away from the ISY using Home Assistant.

Having successfully gotten my new Home Assistant instance running, move in day was upon me. I did not have a set plan, but things were pretty simple.

But first, HACS

The Home Assistant Community Store (HACS) is a custom component for Home Assistant that enables UI management of other custom components. I have a few integrations that utilize custom components, namely Orbit B-Hyve and GE Home (SmartHQ).

In my old HA instance, I had simply copied those folders in to the custom_components folder under my config directory, but HACS gives me the ability to manage these components from the UI, instead of via SSH. I followed the setup and configuration instructions to the letter, and was able to install the above custom components with ease.

The Easy Stuff

With HACS installed, I could tackle all the “non-major.” I am classifying major as my Insteon and Z-Wave devices, since those require some heavier lifting. There were lots of little integrations with external services that I could pretty quickly setup in the new instance and remove from the old. This included things like:

  • Orbit B-Hyve: I have an irrigation system in the backyard for some potted plants, and I put an Orbit Smart Hose timer on it. The B-Hyve app lets me set the schedule, so I don’t really need to automate that every day, but I do have it setup to enable the rain delay via NodeRED.
  • MyQ: I have a Chamberlain garage door open which is connected to MyQ, so this gives me the status of the door and the ability to open/close it.
  • GE Home: Not sure that I need to be able to see what my oven is doing, but I can.
  • Rheem Econet: I can monitor my hot water heater and set the temperature. It is mostly interesting to watch usage, and it is currently the only thing that allows me to track its power consumption.
  • Ring: This lets me get some information from my Ring doorbell, including its battery percentage.
  • Synology: The Synology integrate lets me monitor all of my drives and cameras. There is not much to control, per say, but it collects a lot of data points that I then scrape into Prometheus for alerting.
  • Unifi: I run the Unifi Controller for my home network, and this integration gives me an entity for all the devices on my network. Again, I do not use much of the control aspect, but I definitely use the data being collected.

Were these all easy? Definitely. I was able to configure all of these integrations on the new instance and then delete them from the old without conflict.

Now it’s time for some heavy lifting.

Z-Wave Migration

I only have 6 Z-Wave devices, but all were on the Z-Wave network controlled by the ISY. To my knowledge, there is no easy migration. I set up the Z-Wave JS add-on in Home Assistant, selecting my Z-Wave antenna from the USB list. Once that was done, I had to drop each device off of the ISY and then re-add it to the new Home Assistant instance.

Those steps were basically as follows:

  1. Pick a device to remove.
  2. Select “Remove a Z-Wave Device” from the Z-Wave Menu in the ISY.
  3. While it is waiting, put the device in “enroll/un-enroll” mode. It’s different for every device. On my Mineston plugs, it was ‘click the power button three times quickly.’
  4. Wait for the ISY to detect the removal.
  5. In Home Assistant, under the Z-Wave integration, click Devices. Click the Add Device button, and it will listen for devices.
  6. Put the device in “enroll/un-enroll” mode again.
  7. If prompted, enter the device pin. Some devices require them, some do not. Of my 6 devices, three had pins, three did not.
  8. Home Assistant should detect the device and add it.
  9. Repeat steps 1 through 8 for all your Z-Wave devices.

As I said, I only have 6 devices, so it was not nearly as painful. If you have a lot of Z-Wave devices, this process will take you some time.

Insteon Migration

Truthfully, I expected this to be very painful. It wasn’t that bad. I mentioned in my transition planning post that I grabbed an XML list of all my nodes in the ISY. This is my reference for all my Insteon devices.

I disconnected the ISY from the PLM and connected it to the Raspberry Pi. I added the Insteon integration, and entered the device address (in my case, it showed up as /dev/ttyUSB1). At that point, the Insteon integration went about finding all my devices. They showed up with their device name and address, and the exercise was to look up the address in my reference and rename the device in Home Assistant.

Since scenes are written to the devices themselves, my scenes came over too. Once I renamed the devices, I could set the scene names to a friendly name.

NodeRED automation

After flipping the URL in my new Home Assistant instance to be my old URL, I went into NodeRED to see the damage. I had to make a few changes to get things working:

  1. I had to generate a new long-lived token in Home Assistant, and update NodeRED with the new token.
  2. Since devices changed, I had to touch every action and make sure I had the right devices selected. Not terrible, just a bit tedious.

ALEXA!

I use the ISY Portal for integration with Amazon Alexa, and, well, my family have gotten used to doing some things with Alexa. Nabu Casa provides Home Assistant Cloud to fill this gap.

It is not worth much space here, other than to say their documentation on installation and configuration was spot on, so check it out if you need integration with Amazon Alexa or Google Assistant.

Success!!!

My ISY is shut down, and my Home Assistant is running the house, including the Insteon and Z-Wave devices.

I did notice that, on reboot, the USB address of the Z-Wave and PLM device swapped. I hope that isn’t a recurring thing. The solution was to re-configure the Insteon and Z-Wave integrations with the new address. Not hard, I just hope it is not a pattern.

My NodeRED integrations are much more stable. Previously, NodeRED was calling Home Assistant, which was trying to use the ISY to control the devices. This was fraught with errors, mostly because the ISY’s APIs can be dodgy. With Home Assistant calling the shots directly, it’s much more responsive.

I have to work on some of my scenes and automations for Insteon: While I had previously moved most of my programs out of the ISY and into NodeRED, there were a few stragglers that I need to setup on NodeRED. But that will take about 20 minutes.

At this point, I’m going to call this venture successful. That said, I will now focus my attention on my LED strips. I have about 6 different LED strips with some form of MiLight/MiBoxer controller. I hate them. So I will be exploring alternatives. Who knows, maybe my exploration will generate another post.

Comments

8 responses to “Replacing ISY with Home Assistant – Part 3 – Movin’ In!”

  1. Stephen Avatar
    Stephen

    Thanks for this – I’ve been finger-on-the-trigger for the eisy but did not relish the spend. Was looking for people’s experience with HA as an ISY replacement so your series has been valuable. Curious if you have plans to integrate thread. I wasn’t too excited to read about the devices mounting differently on reboot. Have you been able to reproduce this? And finally, curious if you would be willing to talk about your network topology – are you segregating the Pi/HA from your home network at all and have you had any issues with comms or L2 discovery?

    1. Matt Avatar

      Before I extol the virtues of my new Home Assistant setup, it is worth noting that I’ve been running something of a hybrid for a while. I used the ISY to communicate with my Insteon and Z-Wave devices, but everything else went through Home Assistant. I tried nodeservers with ISY for certain integrations, but ended up getting bogged down. Home Assistant “just works,” and the community is pretty open and very supportive. That said, I find Home Assistant much easier to use, both from a user perspective as well as a developer/contributor. And with the removal of the ISY, things are much more stable and responsive. The ISY’s REST APIs had some flaws, and it was painful.

      My budget for future work will be dedicated to getting off of the Insteon devices and on to another platform. I’m not sure if that will be Z-Wave, Zigbee, or Matter… Honestly, I may wait a little to see how things shape up in the coming months.

      Regarding reboots: that problem seemed to be a one-time thing, as I’ve restarted my HA since then with no change.

      As of right now, I have not separated the HA on the network. It is on my list, but with this project complete and running, I am spending my hobby time on cleaning up some of my software projects, so I may not get to that for a bit.

      1. Stephen Avatar
        Stephen

        My setup is finally stabilized. I’m running proxmox on a mothballed Gigabyte Brix i7 we had laying around the office (essentially a NUC), and HAOS is installed as a VM there. My network is pretty segregated and I started out just routing traffic around. Eventually I converted to giving HAOS some NICs on different VLANs. I connect the Brix into a trunk port on the switch and make the proxmox interface vlan aware. Then in the HAOS VM, give it a few NICs with tags for the non-default. It works really well. I always struggled getting ISY to play nice with my SONOS equipment on a different subnet. That problem has been solved with HAOS.
        Also, the Insteon conversion wasn’t too bad. I still have an issue with my iolinc devices that I need to iron out. In the process of trying to get my serial PLM working I think I borked it, because even back on ISY it had all the characteristics of failure. It was over 2 years old so I guess it was time. Anyway, I ordered a new USB PLM and passed the port through proxmox to the VM. It had no trouble getting recognized and I was able to get all my Insteon devices moved over aside from my iolinc woes.
        So far it’s just a great platform. Looking forward to doing more integrations. I’m enjoying it far more than I ever did the ISY.

        1. Matt Avatar

          In this day and age, the ISY’s interface was far too user-unfriendly, particularly since it’s not just me who wants to control things in the home. HA does a great job of this.

          I’ve had an opportunity to make a small contribution to HA, and I will say that their development standards are very high, which makes me feel better about running it at home. After all, it can unlock my door :).

  2. David Bryan Avatar

    I’ve started the migration as well. So far… thinks are working!

    I was able to order a Home Assistant Yellow + CM4 + NVME from Seed Studio, and have at my door in 5 days via DHL. I wanted to run my HA setup using POE, so I could deploy it pretty much anywhere in the house. Looking forward to ditching the Java Interface for something that hopefully gets more support.

    Thanks for the head start on this project!

    1. Matt Avatar

      A colleague of mine is looking for the same setup (running HA Yellow via POE) for the same reason. My mechanical/server room is central enough that I get decent z-wave coverage across the house.

      I’ve been pleased with the setup thus far: it’s low maintenance, which is exactly what you want from a home automation solution.

  3. Jim Avatar
    Jim

    Great article. I recently went through a similar exercise, but moved from the Insteon Director and a Hub to HA. I initially started using the Hub with HA since it’s natively supported. That allowed HA to auto discover all the devices the Hub knew about. With a few name changes and some tweaks all seemed to be good.

    Then I noticed that HA would end up “out of sync” with reality almost on a daily basis. HA would show lights are still on when they are in fact off. This was never consistent…happened to various devices all over the house. Each night I would have to go into HA and manually shut off every device that it though was incorrectly still on.

    After much discussion with various people on the forums, I was then lead to believe that hub could be the culprit, and to use a PLM direclty with HA. So did that very painful conversion. Got it all up and running. And I’m in the essentially the same boat. HA shows random devices as still being on when they are in fact off.

    Ironically, where people seem to have solid configurations, is where they kept the ISY and used it in conjunction with HA. You’d think going from HA to PLM would better than HA to ISY to PLM but I’m learning that may not be the case.

    Anyhow, I’d be curious to see if you or anyone notices any issues. fyi, I have about 75 Insteon devices and love the technology. Just need to get stability somehow with HA.

    1. Matt Avatar

      I only have about 25 Insteon devices, and the majority of those are wired switches. Based on P. Lutus’s Insteon write up, however, I’m in the process of planning to move over to Z-Wave. While that’s an expensive proposition, the cost will be spread out over years, and get me to a point where I can disconnect the Insteon PLM completely.

      That said, I haven’t seen any issues with my 25 devices losing sync. I had much more trouble with HA -> ISY -> PLM than I do now with HA -> PLM.

Leave a Reply

Your email address will not be published. Required fields are marked *