Kasa App

broken image


Download this app from Microsoft Store for Windows 10. See screenshots, read the latest customer reviews, and compare ratings for TPLink Kasa Control. Download the 'Kasa Smart' app from the App Store or Google Play Store. Connect your smartphone to your home Wi-Fi network (you'll need to be on the 2.4GHz bandwidth). Plug the smart plug into an outlet. Open the Kasa Smart app and make an account (if you don't already have one).

  1. Download Kasa Smart for Android to kasa Smart is currently only compatible with TP-LINK HS100/110/107 Smart Plug, HS103/105 Smart Plug Mini, HS200/210/220 Smart Switch, Smart.
  2. Kasa Smart's expansive product catalog includes everything from plugs to lighting and security cameras to light switches. All Kasa Smart products can be easily managed through the highly-rated Kasa Smart app and connected to your home's secured wireless network without the need for an extra router or hub.

KASA Device Purchase Links

Amazon:

  • Higher Amperage (15 Amp) (HS100)

  • Lower Amperage (12 Amp) (HS103)

KASA vs TP-Link Cloud

Assuming you allow for non-local use, TP-Link Cloud is basically what bridges the connection between your local network (TP-Link physical devices) and the 'cloud', and seems to be what maintains the mesh of devices and their API communications.

Kasa is really just an App, and some branding for TP-Link smart devices, and mostly does just two things:

  • Allows you to manage the TP-Link cloud and register new devices
  • Provides a GUI for turning things off and on

Kasa itself is using the TP-Link Cloud API, which is discussed further below, since it can be used unofficially as a way to interact with physical TP-Link products / Cloud, without requiring being connected to the same router / LAN.

Official Integrations

At the time of researching, it was hard to find one spot for this info, but it appears that the official integrations are:

  • Brilliant (Smart Home App)

Unofficial Integrations

  • By hand approaches

    • TP-Link Cloud

  • Libraries:

    • Local / LAN

      • Node / NPM - Patrick Seal: plasticrake/tplink-smarthome-api
      • Python - python-kasa
    • TP-Link Cloud

      • Node / NPM - Alexandre Dumont: adumont/tplink-cloud-api

        • This is an impressive use of the unofficial API. Dumont also has documented a lot of the API in blog posts at itnerd.space.
  • Other

    • TP-Link Cloud

      • Google Apps Script: I created a Google Apps Script wrapper around the API. You can read more about it here. This also let me more fully integrate it with Android.

TP-Link Cloud API - Dev Cheatsheet

Endpoints and Methods

Main API Base URL:

Ios
  • https://wap.tplinkcloud.com

    • OR (?)
  • https://use1-wap.tplinkcloud.com

As noted below on 'general usage', the API is a little unique in that all methods share the same path (just /, the base URL), and the methods are passed in the body / payload, rather than in the path itself. For example, there is no endpoint like /turnDeviceOn - instead you have to pass a carefully crafted JSON payload to turn devices on.

The placeholder {{variable_name}} indicates a place where you need to replace the {{...}} with your unique value.

Use a Content-Type header, with value of application/json, for all of these requests.

Endpoints / Methods:

  • Get Auth Token (these expire):

    • Path: /
    • Method: POST
    • Payload:

  • Get Device List

    • Path: /
    • Method: POST
    • Payload:

  • Turn a device on/off

    • Path: /
    • Method: POST
    • Payload:

    • Note: Use 'state': 0 for off, and 'state': 1 for on.
  • Get device status

    • Path: /
    • Method: POST
    • Payload (sample):

  • Power Strip: Turn individual plugs on and off

    • Path: /
    • Method: POST
    • Payload (sample):

    • I have not tested this, but this is based on A, B, C, and D.
    • To get Plug_ID, based on this comment and this code as well as this code, it should be the Device_ID of the entire strip, plus 2 digits (zero-left-padded, zero-indexed) corresponding to the numerical order of the plugs

      • For example, if the ID of your entire strip is ABC, then the very first plug would have a Plug_ID of ABC00, the second would have ABC01, and so on.
    • I'm not sure if child_ids will work with more than one plug ID at a time - you would think since it is an array that passing more would work and turn all IDs on or off based on the system payload, but without a device I can't test this

These are subject to change. Currently, the best maintained place to find up-to-date info on the API is probably adumont/tplink-cloud-api, or the related blog posts on itnerd.space.

Notes on usage

Kasa App Tp-link

  • General usage:

    • The API is a little unique in that it uses the pattern of differentiating between actions by values in the payload, rather than different endpoints / URL paths

      • The action is passed in with the key of method
      • For example, rather than using something like GET /deviceList, it uses POST / with payload {'method': 'getDeviceList', 'params': { ... }}
    • Another oddity is that the nested requestData object (e.g. for passthrough method) can be passed either as a single stringified value, or as a regular nested JSON object. Changing the type actually affects the shape of the response data (e.g. sending stringified JSON results in a stringified response, and vice-versa).

      • The adumont/tplink-cloud-api code makes it look like, at one point or another, the API might have only accepted stringified requestData payloads, but as of 7/2020, it seems fine with regular JSON objects.
  • Token sending options

    • It looks like the auth token can be sent either in the URL itself or in the JSON body

      • URL: ___/?token=TOKEN
      • Body: {params: {token: TOKEN}
    • For security reasons, you should pretty much always opt to send tokens as part of a payload, rather than in the URL, so they can't be sniffed (assuming valid HTTPS)
  • terminalUUID / UUID

    • This does not need to be a specific ID, nor does it need to be generated as a unique ID each time.
    • If you are using POSTMAN to mock, you can use the {{$guid}} macro to generate a unique ID
  • What is the purpose of Kasa_Android as appType and the User-Agent header?

    • Most of the API docs available by the community rely on endpoints exposed by reverse-engineering the Kasa smartphone app. At any point, TP-Link could start cracking down on suspicious API requests, so 'spoofing' the official Kasa app is a way to minimize the risk of your request getting blocked.
    • Based on tplink-cloud-api, here are good values:

      • appType: Kasa_Android
      • User-Agent: Dalvik/2.1.0 (Linux; U; Android 6.0.1; A0001 Build/M4B30X) (really, this could be any modern valid Android UA that Kasa can run on)

        • In fact, this should actually probably be something with Android 8.0.0 or higher in the string, as anything lower has already reached EOL (as of 2020).

Android Client

  • I've pulled a recent AndroidManifest.xml - here

    • I tried to spoof a related intent to the On/Off widget but could not get it to work (I think some of the Android action strings might be blocked from spoofing?)

Kasa Smart is an app that lets you configure, add, monitor, and control the smart devices that you are connected to, from anywhere in the world.

Contents

Features –

  • You can easily control a variety of smart bulbs by using this app.
  • Users can control smart fans, switches and lights from anywhere.
  • You can monitor your home by using the live view with Kasa Smart.
  • Users can access Google Home and Alexa Support with this app.
  • It is an app which has been made in an efficient way which is very easy to use.
  • The app is light and does not need much storage space or expertise from users to handle and utilise.
  • The app allows users to establish connections with their smart devices quickly as good connection options are available.

System Requirements –

  • Ensure that you have TP-Link or a compatible smart device which has been set up or installed at your home.
  • You need to make sure that a proper internet connection is present.
  • The app is around 52 MB and users need to make sure they have adequate storage space which is available to install the app.

Download Kasa Smart for Windows PC

  1. To install Kasa Smart on your PC, you need to download an emulator on your Windows PC first. This is a hardware or software which allows users to easily replicate a program or computer system onto another one.
  1. The emulator that you need to download on your Windows PC is the BlueStacks Emulator. This is one of the most efficient and compatible emulators that can be run on your Windows PC.
  1. You can download BlueStacks from the official website by clicking on the download link for the latest version which is available there.
  1. After BlueStacks has been fully downloaded on your PC, sign in with your Google account and provide the necessary details which have been required.
  1. Go to the PlayStore and search for the application by using the navigation bar which has been given. Wait for the results page to load.
  1. When Kasa Smart shows up along with a few similar alternatives, click on it and press the install option which is provided along with it.
  1. After the installation process has been completed, open the app on your PC and you can start using it at any time.

Download Kasa Smart for PC (Mac)

  1. Kasa Smart can be installed on your Mac with the help of an emulator. The Nox Player Emulator is one of the best emulators which can be downloaded on your Mac.
  1. You can download the Nox Player Emulator by going to the official website and clicking on the download link which is given for the latest version there.
  1. Once you open the Nox Emulator on your Mac, log in with your Google account and enter the details that are required.
  1. Go to the PlayStore and search for the Kasa Smart application by using the search bar that has been provided.

Kasa App Not Working

  1. You will see the app come up along with a few other similar applications. Click on the Kasa Smart app and press the install button that is given along with it.
  1. After the installation process is complete, you can open the application on your Mac and start using it.

Other Similar Applications –

Kasa App Login

Tuya Smart –

  • This is an application which is by Tuya Inc. and it has been downloaded over one million times by users. The app was released in 2015.
  • Tuya Smart allows you to be able to remotely control home appliances and devices from any location.
  • Users can add multiple devices and control them simultaneously by using this application.
  • It offers a voice control feature by utilising Amazon Echo and Google Home.
  • It basically runs and works by the interworking of various smart devices. The devices can automatically start or stop working depending on the temperature, location and time.
  • There is an option which provides users with real-time alerts and notifications to ensure the safety and security of the devices.
  • Connecting the Tuya Smart App to your devices can be done in a very simple and quick process.

Yonomi –

Kasa App Setup

  • This is a free application which is by Yonomi and it has been downloaded over a hundred thousand times. The app was released in the year 2014.
  • The app allows you to create automated routines on the basis of time, location and much more.
  • It is a great app which allows you to stay connected with all the devices present in your home easily.
  • It works with Amazon Echo, Google Home, Sonso, Nest, Phillips Hue and many other smart home devices.

Kasa App Download

Home Remote –

  • This application is by The Home Remote LLC and it has been downloaded over a hundred thousand times. The app was released in the year 2015 and it has been around for a while now.
  • You can easily control all your home devices with one, single application.
  • Users need to simply click the plus button to start adding devices that they want to connect.
  • The app supports tons of smart devices such as Amazon Alexa, August Home, Bryant, Kasa Smart and much more.
4/5(10 votes )

Kasa App

Related posts:





broken image