[HOW TO] Add your TP-Link HS-100 Wifi outlets to SmartThings

Thanks for the info and work @Gutheinz!
I did someone playing around tonight setting up the new Hub and it picked up everything I have already that’s WeMo but want to test out the TP-Link setup. Hope to give it a test in coming weeks.

I am new to the SmartThings environment. I just picked up couple of the TP-Link HS200 wireless switches. I am wondering if there are instructions to modify it to connect to the smarthings hub.

See the below link.

Hi Dave,

This must be a silly question. Where do I start as I haven’t played with the smart thing hub. I only have connected my Philips hue system with it. Your help if very appreciated.


Try this.

1 Like

So new to Smart Things and the development environment (IDE). I was there in January. Read what Tyler provided. However, as a quick start…

  1. From this page, select “COMMUNITY” at the top right of the page.
  2. Create an account.
  3. Create your location, which defines your hub in the environment.
  4. Go to the link in my original response for the CLOUD BASED HANDLER.
  5. On the GitHub site, click the green “Clone or download” (top right).
  6. Select “Download ZIP”.
  7. Extract the zip file to a directory.
  8. In the top directory, there are explicit instructions on installing this product.

It should take about 30 - 45 minutes the first time you do a custom. After that 15 minutes would be a very slow installation.


First off thank you @Gutheinz for your work on this!

I hate asking too many questions and I have searched a fair bit on this but I have gone over Cloud Based Setup Instructions but I keep getting a “No signature of method:” error. I’ve found other posts about this but can’t seem to find a clear fix or something that I might be doing wrong.

Here’s a quick video of the error https://youtu.be/F77jCsgTzQM

And here is a quick screenshot https://i.imgur.com/t9YsZzu.png

Two errors - one which caused the problem:

a. You did not select the location prior to installation (must do so, or ST gets confused).

b. (Critical). You pressed “My SmartApps” instead of My Device Handlers. Therefore, you are trying to install a device handler as a smart app.


Thanks for all the information to set it up.

It now shows up in my Smartthings app, but i can only turn it on/off. Any way i can have schedule, away and timer like the Kasa app?

I have the HS-105 smart plug btw

I did not provide scheduling and timers and this is not planned. It would be difficult to replicate using the tools available.

The primary idea is to set up the control functions in SmartThings and then use the SmartThings environment tools for scheduling, away functions, etc. Example 1, using Automations, you can control most smart things devices to turn on/off on a schedule. Example 2, you can set an automation to turn the lights off and set a controlled thermostat to a non-occupied temperature every day at 7AM and another to reset at 4PM. EXample 3: an automation can be set to turn the fans, lights, thermostat, and other items off when you leave home (detected by your phone) and back on when you return.

There are other items within the environment that allow even finer control.

You mean to create a routine?

Yes. And there are other things various people do to further automate using Pistons, Action Tiles, etc. However, I am not familiar with these. The goal, of course, is an integrated environment where control of different devices is done through the same interface. Allows automation of the connected devices based on EVENTS, not just time, etc.

I also use Amazon Echo and have created routines based on my events - such as going to bed to read and going to sleep - to assure everything if OFF that I want off. Same when I wake up at 3AM. I say the command and it turns on the bedside light, den light, and turns off the bedroom fan. Also turns on my soundbar and other items. Just say "Alexa turn-on wake.

I’m really torn here… it seems great that this cloud based bridge exists for tp-link stuff but how worthwhile is this vs zwave/zigbee stuff if you’re just starting out? I just got some tp-link switches and outlets and after setting up my smartthings hub I’m starting to think I should just return my tp-link and get other options. Any opinions from experienced users?

I bought mine when I was early on in my HA adventure, before I had a ST hub. They are big and bulky and for some reason were designed in a way that makes it impossible to use the second plug on a wall outlet. Since I already had them, this was a good way to integrate them.

Personally I’d go with zwave, no reason to over complicate things by mixing protocols if you already have a ST hub. If you’re concerned with being able to move them around, get the plug in type. If you are looking for a clean installation, get the replacement receptacles. I really like the handful of zwave receptacles I have, allows you to have one switched and one always-on.


Concur 100%. Go Z-Wave for now!!!

Works beautifully–thank you so much for developing this! Do you automatically refresh the token or am I going to have to do this every couple weeks?

It is scheduled to automatically refresh every 2 weeks.

1 Like

I have a slew of zigbee and zwave devices.

Yet I’m looking to add a couple more of these WiFi devices. Reason: they are less expensive, and therefore better for fulfilling certain limited roles. Mostly in spots where I do not need automation, but desire voice control via Alexa.

So if you got those TP-link devices at a bargain, consider hanging on to them. Build your SmartThings environment using whatever gets the job done, and use the TP-link stuff to fill the gaps.

Agree, I used two of them for the Christmas season powering Christmas lights outside under the porch, worked great.

I am trying to get the Tp Link plug hs100 to work with the smart things and I have I am stuck as to what files they want me to paste under the mysmartapps>code tabs he has this ‘(Cloud)TPLink Connect (unofficial).groovy’ but I am not sure if that is what goes in the box or is it something else. When I put that in I get error messages.