[TapoControl] - Control Tapo Smart WiFi-Devices with Openhab - Official Support Thread

I’ve fixed this by generating the terminal UUID when needed at login rather than having it hard-coded. I am not sure if this UUID needs to be kept the same across restarts or not, but it looks like it’s only ever used once in the code.

If we need to persist that value, it might be best to have it as configuration parameter, but I don’t have the knowledge to do that right now.

I’ve fixed this and a PR is at [tapobridge] Fix API Rate limit exceeded error by poggs · Pull Request #13468 · openhab/openhab-addons · GitHub. For anyone impatient, I’ve compiled a .jar against 3.4.0-SNAPSHOT which is at Release Compiled .jar with fix for openhab/openhab-addons#13465 · poggs/openhab-addons · GitHub

2 Likes

hello guys, i have another kind of issue that i’ve seen from some days. when changing colors of my lightbulb L530 from OH the bulb won’t change colors.
if i change the color from tapo app, it works, and only after this, if i again change the color from OH, now the color can be changed.

any idea on why?

@Poggs May I know how to just update the tapo or just use your version in openhabian? Thanks in advance!

Hi, I receive

device answers with errorcode -1003

on one P115, any idea what does that mean? I see that device going into Unknown state. However switching it on and off works but I don’t get the energy consumption.
I installed the jar compiled by @Poggs

The complete error log:

2022-10-06 11:17:50.900 [TRACE] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) received result: {"result":{"device_id":"xxxxx","fw_ver":"1.0.16 Build 220624 Rel.171733","hw_ver":"1.0","type":"SMART.TAPOPLUG","model":"P115","mac":"34-60-F9-8B-0A-9A","hw_id":"xxxx","fw_id":"00000000000000000000000000000000","oem_id":"xxxx","ip":"192.168.4.198","time_diff":60,"ssid":"xxxx==","rssi":-46,"signal_level":3,"latitude":xxx,"longitude":xxx,"lang":"en_US","avatar":"plug","region":"Europe/Brussels","specs":"","nickname":"xxx==","has_set_location_info":true,"device_on":false,"on_time":0,"default_states":{"type":"last_states","state":null},"overheated":false},"error_code":0}

2022-10-06 11:17:50.901 [TRACE] [ntrol.internal.api.TapoDeviceHttpApi] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) requestCompleted '{"error_code":-1003}'

2022-10-06 11:17:50.904 [DEBUG] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) device answers with errorcode -1003 - json decode failed

2022-10-06 11:17:50.912 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:P115:TapoControlBridge:TapoP115_EBike' changed from UNKNOWN: json decode failed to ONLINE

2022-10-06 11:17:50.919 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:P115:TapoControlBridge:TapoP115_EBike' changed from ONLINE to UNKNOWN: json decode failed

2022-10-06 11:19:30.211 [DEBUG] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) device answers with errorcode -1003 - json decode failed

2022-10-06 11:19:56.848 [TRACE] [ntrol.internal.api.TapoDeviceHttpApi] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) sendAsncRequest to 'http://192.168.4.198/app?token=xxxx' with cookie 'TP_SESSIONID=2380970E20719A0351701705D0C89103'

2022-10-06 11:19:56.851 [TRACE] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) DeviceConnetor_queryInfo from 'http://192.168.4.198/app?token=xxxx'

2022-10-06 11:19:56.853 [TRACE] [ntrol.internal.api.TapoDeviceHttpApi] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) sendAsncRequest to 'http://192.168.4.198/app?token=xxxx' with cookie 'TP_SESSIONID=2380970E20719A0351701705D0C89103'

2022-10-06 11:19:56.855 [TRACE] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) DeviceConnetor_getEnergyUsage from 'http://192.168.4.198/app?token=xxxx'

2022-10-06 11:19:56.856 [TRACE] [ntrol.internal.api.TapoDeviceHttpApi] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) sendAsncRequest to 'http://192.168.4.198/app?token=xxxx' with cookie 'TP_SESSIONID=2380970E20719A0351701705D0C89103'

2022-10-06 11:19:56.949 [TRACE] [ntrol.internal.api.TapoDeviceHttpApi] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) requestCompleted '{"error_code":0}'

2022-10-06 11:19:56.950 [TRACE] [rol.internal.api.TapoDeviceConnector] - (tapocontrol:P115:TapoControlBridge:TapoP115_EBike) received result: {"error_code":0}

Both problems fixed on 3.4.0.M3

Thank you very much

Ok, I see that this is because I blocked the internet acces, after enabling it for short time it is solved.
I made an NAT rule in my router to forward the UDP request on port 123 to my NTP server (which is hosted by my Ubiquity Edge Router X° and enabled the log, but I didn’t see any NTP requests coming from any of my 9 p115

I have two Tapo L920 Light Strips. I see updates in Event Log every 30 seconds although I have changed the Refresh Interval setting either to 0 (disable) or 60, 120, 180. I even then get every 30 seconds those updates and I really don’t need them :slight_smile: It does not even change physicaly in the meantime, it is always ON and when it is off, it says OFF (that is correct).

2022-10-18 13:18:34.077 [INFO ] [openhab.event.ItemCommandEvent ] - Item ‘TapoTPLink_Homeoffice_Schalter’ received command ON
2022-10-18 13:18:34.080 [INFO ] [openhab.event.ItemCommandEvent ] - Item ‘TapoTPLink_Homeoffice_Tisch_Schalter’ received command ON
2022-10-18 13:18:34.082 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item ‘TapoTPLink_Homeoffice_Schalter’ predicted to become ON
2022-10-18 13:18:34.086 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item ‘TapoTPLink_Homeoffice_Tisch_Schalter’ predicted to become ON
2022-10-18 13:19:04.079 [INFO ] [openhab.event.ItemCommandEvent ] - Item ‘TapoTPLink_Homeoffice_Schalter’ received command ON
2022-10-18 13:19:04.090 [INFO ] [openhab.event.ItemCommandEvent ] - Item ‘TapoTPLink_Homeoffice_Tisch_Schalter’ received command ON
2022-10-18 13:19:04.093 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item ‘TapoTPLink_Homeoffice_Schalter’ predicted to become ON
2022-10-18 13:19:04.096 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item ‘TapoTPLink_Homeoffice_Tisch_Schalter’ predicted to become ON
2022-10-18 13:19:34.079 [INFO ] [openhab.event.ItemCommandEvent ] - Item ‘TapoTPLink_Homeoffice_Schalter’ received command ON


Getting same issue Did the upgrade from config and tried with above mention methods. Please help.

1 Like

@Bigdesaster

Hi Chris, any chance to support the Tapo hub (H100) and the Tapo motion sensors (T100)

Hub:

Motion sensor:

Thanks!

@RobZe89 & @Asutosh_Sahu
You have to use at least the Snapshot M3 as mentioned above. Bevor there is an erro as well in the core (settings will be irgnored) an in the binding (API rate limit).

@black0fire7
As i see the sensors do not use WLAN, so they can’t communicate with oh directly. The hub maybe but i think it would not be like control a single device, if there will be an api to the sensors eg.
So i dont’t think so.

triggered events by the sensors are usually sent to and stored on the hub. So you are right, adding the hub to OH is enough if possible.

I am on 3.4.0.M3 official Release and rate limits are still ignored.

This log entry is from OH-core [openhab.event.ItemCommandEvent ] not from binding.
Can you set the the debug level for the binding to debug or trace and disable the polling?

Sure, here is a trace log file.
Tapocontrol_TraceLog.txt (56.6 KB)

I changed to 180 and also to 0 for the device tapocontrol:L920:50c8694c7a:259604a932 but both devices are getting updates every 30 seconds. So the event in openhab is triggered

2022-10-27 21:30:39.466 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:30:39.472 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:30:39.476 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:30:39.480 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become ON
2022-10-27 21:31:09.468 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:31:09.473 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:31:09.476 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:31:17.704 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:L920:50c8694c7a:259604a932' changed from ONLINE to UNKNOWN
2022-10-27 21:31:19.918 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:L920:50c8694c7a:259604a932' changed from UNKNOWN to ONLINE
2022-10-27 21:31:39.470 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:31:39.486 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:31:39.492 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:31:39.532 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become ON
2022-10-27 21:32:09.222 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:L920:50c8694c7a:259604a932' changed from ONLINE to UNKNOWN
2022-10-27 21:32:09.472 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:32:09.475 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:32:09.478 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:32:09.482 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become ON
2022-10-27 21:32:09.748 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tapocontrol:L920:50c8694c7a:259604a932' changed from UNKNOWN to ONLINE
2022-10-27 21:32:39.474 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:32:39.478 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:32:39.481 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:32:39.484 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become ON
2022-10-27 21:33:09.477 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:33:09.481 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:33:09.485 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:33:09.490 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become ON
2022-10-27 21:33:39.481 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Schalter' received command ON
2022-10-27 21:33:39.486 [INFO ] [openhab.event.ItemCommandEvent      ] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' received command ON
2022-10-27 21:33:39.489 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Schalter' predicted to become ON
2022-10-27 21:33:39.495 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'TapoTPLink_Homeoffice_Tisch_Schalter' predicted to become O

I’m also affected by the “rate limit exceeded” issue. I saw in [TapoControl] - Control Tapo Smart WiFi-Devices with Openhab - #203 by Poggs that it should be fixed now. Can you give me a hint how I can get/apply the fix? I’m running OH 3.3.0 inside a Docker container. Is it possible not to update the Container but just use a fixed version of the plugin?

Hi,
sorry it took a bit longer cause i was busy.
There was also an binding failure for reading configurations. Should be fixed now.

Compiled jar you can download here. PR is created.

Also integrated some more tracing commands for debugging response errors.

@RobZe89 now it should be possible to disable the device updates.
@ceedee download the .jar and put it in you oh/addons directory

I’m sorry, but with the new jar in place and even after changing the Refresh Interval from 0 to 180 or 120 to 0 I still get the updates all 30 seconds.

My fault. Uploaded wrong jar. This should work now:

@Bigdesaster Thanks for uploading the jar and providing instructions! Can I use that jar for my OH 3.3 installation, since it’s a 3.4 version?

Yes it should work.