TP-Link L900 LED strip


I did not find any reference here or with Google search about the TP-Link L900 LED strip.
Does anybody know, if this is working with HA and how to configure it?

Many thanks!

could just work when linked to kasa account, but unsure as the integration tries local api.

It’s not linked to Kasa app (as my plugs are) instead it’s linked to Tapo app.

I don’t think there is an integration for this led strip. I own one of this and I couldn find a way to add it to home assistant.

might get lucky in new release possibly?

1 Like

no dice here with new version

Version core-2021.12.2
Installation Type Home Assistant Container
Development false
Supervisor false
Docker true
User root
Virtual Environment false
Python Version 3.9.7
Operating System Family Linux
Operating System Version 4.4.59+
CPU Architecture x86_64
Timezone Europe/London

Home Assistant Community Store


GitHub API ok
Github API Calls Remaining 5000
Installed Version 1.18.0
Stage running
Available Repositories 985
Installed Repositories 13

Home Assistant Cloud


Logged In false
Reach Certificate Server ok
Reach Authentication Server ok
Reach Home Assistant Cloud ok



Dashboards 1
Resources 8
Views 10
Mode storage

I’ve made the Tapo L900 working with this:

On/Off + Colors are OK,
Changing brightness make the entity crashing (haven’t had time to make a complete report issue to the author)

1 Like

This is a really great custom integration - thanks for making it. I’ll look forward to brightness being fixed.


I have received two new L900 Stripes today.
I also still have various errors. When changing the color and brightness nothing happens and I get numerous different error messages in the logs.

[140536070347120] 'utf-8' codec can't decode byte 0xa8 in position 7: invalid start byte 
[140536070347120] Returned unknown error_code: 9999 
[140536070347120] index out of range

Would be great if this could be solved.
If I can help with logs, please let me know.

Here some more logs

2022-01-13 18:16:46 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [140675699054912] index out of range
Traceback (most recent call last):
File "/config/custom_components/tapo/", line 41, in _execute_with_fallback
return await function()
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 127, in on
return await self.set_device_info(SwitchParams(True))
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 94, in set_device_info
await self._set_device_info(device_params.as_dict(), terminal_uuid)
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 117, in _set_device_info
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 257, in __validate_response
raise TapoException.from_error_code(resp['error_code'])
plugp100.core.exceptions.TapoException.TapoException: Returned unknown error_code: 9999
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/", line 185, in handle_call_service
File "/usr/src/homeassistant/homeassistant/", line 1495, in async_call
File "/usr/src/homeassistant/homeassistant/", line 1530, in _execute_service
File "/usr/src/homeassistant/homeassistant/helpers/", line 209, in handle_service
await self.hass.helpers.service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/", line 663, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/", line 896, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/", line 700, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/light/", line 494, in async_handle_light_on_service
await light.async_turn_on(**filter_turn_on_params(light, params))
File "/config/custom_components/tapo/", line 110, in async_turn_on
await self._execute_with_fallback(self._tapo_coordinator.api.on)
File "/config/custom_components/tapo/", line 43, in _execute_with_fallback
await self.coordinator.api.login()
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 84, in login
await self._handshake()
File "/usr/local/lib/python3.9/site-packages/plugp100/", line 164, in _handshake
self.tp_link_cipher = self.encryption.decode_handshake_key(resp_dict['result']['key'], self.key_pair)
File "/usr/local/lib/python3.9/site-packages/plugp100/core/", line 46, in decode_handshake_key
b_arr.insert(i, do_final[i])
IndexError: index out of range

sorry to revive this; I’m looking to see if the following is possible:

setting a time using homeassistant, so that the LED mimics a sunrise?

Did you get this to work??

I have this working well for both my kids rooms, with automations for automatic on, off, dimming, brightening, etc.
However, I am looking to replace the controller with something else while keeping the strip as I’m wanting to get away from relying on a HACS component and the cloud.

Hi, I just happened to see this. When you say dimming, do you mean its actually capable of transitioning?

Theres a limitation in the KL430 that doesn’t allow it to transition and I’m wondering if the new one will actually dim on/off correctly.

For instance, using home assistant automation to say, turn on light strip to 50% over 5 seconds. Does that work?

Is there meanwhile a way to use the L900-5 locally, i.e. without the Tapo cloud?

The with the L9** you can set in the Tado app that it should always animate. And then it will animate every action you do in HA, etc. Very cool, and unfortunately not possible with the KL 430 :(((

Hello to all
just installed l900-5 but it ask for password and login
login is my email and password i tried only lower case letters and 2 numbers but still cannot login.
anyone has made it possible to use?
i have 2 other led strips and they work great