home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
71.58k stars 29.91k forks source link

TP Link Switch broken #21807

Closed Joshi425 closed 5 years ago

Joshi425 commented 5 years ago

Home Assistant release with the issue: 0.89.1

Last working Home Assistant release (if known): 0.88.2

Operating environment (Hass.io/Docker/Windows/etc.): Linux SERFER 4.15.0-39-generic #42-Ubuntu SMP Tue Oct 23 15:48:01 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux python_version 3.6.7

Component/platform: https://www.home-assistant.io/components/switch.tplink/

Description of problem: I only have one HS100 and after the update from 0.88.2 to 0.89.1 it's not generating the entity anymore

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

switch:
  - platform: tplink
    host: 192.168.2.109
    name: Kaffeemaschine

Traceback (if applicable):

Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/homeassistant/helpers/entity_platform.py", line 127, in _async_setup_platform
    asyncio.shield(task, loop=hass.loop),
  File "/usr/lib/python3.6/asyncio/tasks.py", line 681, in shield
    inner = ensure_future(arg, loop=loop)
  File "/usr/lib/python3.6/asyncio/tasks.py", line 526, in ensure_future
    raise TypeError('An asyncio.Future, a coroutine or an awaitable is '
TypeError: An asyncio.Future, a coroutine or an awaitable is required

Additional information: Switch works fine from Kasa App and IP is correct

Norien commented 5 years ago

Please check the breaking changes for each release.

https://www.home-assistant.io/components/tplink/

Joshi425 commented 5 years ago

You're correct I missed that, thanks

vvume commented 5 years ago

I am still trying to understand this breaking change and what I am supposed to do to fix it. Previously I had my configuration setup this way:

configuration.yaml switch: !include ss.yaml

ss.yaml

Now, it looks like I have to use the configure option under integrations, and after doing that I am seeing most of my switches, but not ones that had a space in their names. I renamed those switches to remove the space between 2 words, but they are still not detected. All my switches have IP reservations. How do I now assign them names since the new format seems to only an IP address an no names?

tplink: discovery: false switch: