ECO Plug (Workchoice, Woods/WiOn, KAB, etc.) component

As a new user,evaluating Home Assistant as a potential replacement for openHAB , I was looking for support for my current devices. The ECO Plugs weren’t critical, but having an included component would be a positive.
Obviously, I couldn’t find an existing component and in all of the requests for support, firmware mods were the only solution being promoted… That wasn’t an option I wanted to pursue. The requests for support seem to have come to halt since last year and I didn’t want to bump old threads.
My search for a solution led to an old (an apparently abandoned) repository with little activity after its initial creation. I decided to check it out, so I created a fork to investigate. Surprisingly, with just a little effort, I had what I consider a successful implementation.
If there is still interest in using the ECO Plug device platform, here’s a link to my repository with some basic instructions for install/use. All credit goes to the original author, philburr. I’m not sure why there was no followup to his initial effort. It looks like he never tested the homeassistant support, as it took very little effort to make it work.

https://github.com/gbealmer/pyecoplug

Hi gbealmer,

I have been using your code for the past year but the last major update broke the integration with the ecoplugs, your last update worked (about a month ago). Now i think they have recently broke it again. Any advice on how i can get this back up? I can brush up on some python to review the code but im wondering if it is because the pyecoplug’s code which is loaded from the repository.

Thank you for your work on this.

I just up upgraded to the 95.4 and it’s still working.
I did make one change to the manifest.json on 22 May to add the requirements entry. I also had a problem with it loading on a restart and the change corrected the problem…
Compare your manifest.json and make sure it looks like this

{
  "domain": "ecoplug",
  "name": "Ecoplug",
  "documentation": "https://github.com/gbealmer/pyecoplug/",
  "dependencies": [],
  "codeowners": [],
  "requirements": ["pyecoplug==0.0.5"]
}

If you don’t have the requirements entry, update the file and see if it will load the custom_component.

Hey @gbealmer - I just wanted to say thanks for getting this working! I installed a Woods/WiOn outdoor wifi smart box today for my pool pump, and your custom component allowed me to control it via Home Assistant - which also allows me to control it via a Insteon keypad in my main hallway. Thanks for all your hard work in getting this working - you should submit a pull request and make it official!

1 Like

@gbealmer @drooff I’m having problems installing this. I followed the instructions exactly, but I get the following error:

Platform error switch.ecoplug - Integration ‘ecoplug’ not found.

The instructions don’t mention what to do with the pyecoplug folder… perhaps that’s the problem? Any help would be much appreciated…

Ecoplug has a problem in that it is missing the version in the manifest.json. It is a new requirement as of 2021.6. I am working on it right now. If I fix it I will let you know.

Good luck, @reylas ! I just installed this Ecoplug compatible switch on my sauna- DEWENWILS Outdoor Smart Wi-Fi Outlet Box. Can’t wait to get it integrated with HA!

You still having issues? I was able to fix mine. I found another github repository where someone forked it and added the proper version information in the manifest.

Let me know and I will write up what I did.

No - still no luck! Please, please, please tell me how you did it! :slight_smile:

@reylas Would really love your help! I’m sure many others could also benefit!

Sorry, got a little busy.

So, the error that you are receiving points to the new flag that must be in the manifest.json. Problem is, I tried to just edit the manifest by hand, but that never worked. Here is what did for me.

First, clear out all files in your custom_components/ecoplug (or whatever you called it) folder and make sure it is empty. Then download the zip file from dbecknel/ecoplug (github.com). It has three files in it.

Place those three files in your empty custom_components/ecoplug folder. In your configuration.yaml, make sure you have:

  - platform: ecoplug
       scan_interval: 10

Now, what was important to me was to reboot homeassistant. A total vm reboot (I run hass supervised in a vm). Once I did that, my devices reappeared. I did not have to put pyecoplug anywhere.

Let me know if that helps and I will try to get back quicker next time :blush:

1 Like

Thank you so much! I will try tomorrow and let you know how it goes. I am in the process of moving my sauna and it will now be at the back of my property, so I really want integration with HA so I can 1)turn it on, and 2)have home assistant announce over all my cast devices once it’s hot as measured by my sonoff temp sensor. Thanks for your help - it’s truly going to make my life better!

It works! I had to restart several times before it took.

Does this component run locally? Can I need to set the switch to “local-only” in the ECO plugs app? I already connected their cloud service to my google account (which by the way is buggy as hell and has significant latency - when it works - sometimes google and the eco plugs app fall out of sync.)

Great! Not sure on the local question. I just firewall them all off, so they work without a cloud connection.

I had studied the code to help someone else before and it keeps the local IP address of each device. So I think it would probably work.

Wanted to say thank you for the integration. Just installed a new smart pool pump that uses the ecoplug app and have now got a switch for it working in my HA!

I do have one question if possible is there a way to see/change timers?

Would like to get rid of this horrid ecoplugs app completely lol

I’ve done all that was mentioned here, and I’m still getting “Platform error switch.ecoplug - Integration ‘ecoplug’ not found” when I do a “Check Configuration”. I removed the ecoplug directory from custom_components, downloaded the zip file from Github and unzipped. Placed the 3 files into the custom_components/ecoplug directory.

It won’t let me restart the core until I delete the lines from the configuration.yaml.

I added this to my configuration.yaml

switch:
   - platform: ecoplug
     scan_interval: 10

Any thoughts would be greatly appreciated.

Can you separately control the two different relays?

Yes having same issue

I did this and I’m no longer getting the error with the YAML. However, it still isn’t discovering my devices. I’ve rebooted several times. I tried using the restart option in the server controls page and also tried doing sudo reboot from the terminal. I also attempted these reboots with the plugs turned on and turned off. Didn’t seem to matter.

If anyone has any idea what I’m doing wrong, I would love some help. I’m still new to HA and this is my first time installing a custom component.

Well, I’m going to blame this on being a noob. Didn’t touch HA for a couple hours while I was doing some work. Went back and looked and my 2 WiOnn devices were there. I’m not sure when they showed up but I think I expected to have a notification saying that HA discovered a new device or something. They just showed up and had the correct name and everything. Thank you to everyone who’s put work and time into making this work with Home Assistant!!!