[RELEASE] TP-LINK TAPO Plug, Switch, Bulb, Hub and Robovac Integration

Update to version 2.4.1 available.

Application Changes:

  1. Needed Driver List. App checks for Hub installed drivers and drivers required for the found devices. Identifies drivers not installed on list of devices on Add Devices page.
  2. Timing Messages: Added timing message in log to show progression.
  3. General Cleanup for maintainability

Device Drivers:

  • Added Sync Name with Tapo App capability
  • Simplified setPollInterval and new Refresh mapping.
  • Added ping test for information during configure and Comms Error. Info only. Does not impact functionality.
  • Dimmers: Added capability "Light" to all dimmers.
  • New Device Type Support (Beta Versions):
    • Child Fan. Example KS240 dimming switch/Fan Control. Requires Parent Driver.
    • Hub TRV. Example: Kasa KE100. Requires Hub Driver.
    • Hub Plug/Switch: Example: Tapo S210/Tapo S220. Requires Hub Driver.
    • Hub Temp/Humidity Sensor: Example: Tapo S310. Requires Hub Driver.
  • Deprecated Drivers for future installations:
    • Plug EM Driver. Now deprecated. Existing installations will continue to work - but strongly recommend changing driver to Plug.
    • Dimmers: Changed Bulb Dimmer and Plug Dimmer to Dimmers only. Bulb and Plug Dimmer deprecated.
  • General cleanup for maintainability.

Hey, I tried installing the driver via HPM and it claims it needs Hubitat 2.4.1 and mine says 2.4.0.151 and no updates available.

I tried looking it up, but none of the readme links work, all 404. Both here and on github front page.

I don't understand your last post, is it update to 2.4.1 for drivers or hubitat?

ETA: I went medieval and did everything manually, it hums along nicely, toggles, power and energy reporting included. P115. :+1:

I will change to Hub version 2.4.0 (I was on 2.4.1 beta). Apologize.

Is there, or will there be a way to change the IP of a device that already exists? I add a lot of devices and I forget that I do and I clean up my DHCP leases and then cry.

The obvious solution is to stop being a moron, but aside from that, is there something I'm missing?

You just have to run the app and discovery again. No reinstall. This process will update the IP address in the Hubitat instantiation.

I just updated to the latest and now my tapo p110 doesn't report power anymore where it was reliably doing it before the update. Turning off and on in the device page works however.

I'm using the "TpLink Plug" driver. I also have the "tplink_plug-em" driver but pretty sure that's an old one leftover that isn't used anymore.

Heres one error in the log

dev:30322025-05-09 08:16:22.762 PM

error

org.codehaus.groovy.runtime.metaclass.MissingMethodExceptionNoStack: No signature of method: user_driver_davegut_TpLink_Plug_2339.deviceLogin() is applicable for argument types: () values: (method deviceLogin)

I’ve been having issues with power not reported. It seems to happen after the device has been off. Hitting refresh and/or changing the refresh poll period seems to get it reporting again.
If you look at scheduled jobs under the device, there is a job called refresh, if this is misinformation then power seems to not be reported.
I don't want to hijack your issue, I haven't got round to fully investigating mine yet, but thought it sounds similar

Hmm seems refresh is "pending" on the scheduled page... I can turn the plug off and on though from the commands page of the device.

I did go into the tapo install app and look for new device's where it shows this plug as existing. The ip address is correct.

Looking at the GitHub, is the driver meant to be the tplink_plug_em driver. I thought the "Tplink Plug" was too the latest. I'm a little lost now I have multiple tapo drivers, some of which don't have version numbers show in the comments so it's hard tell what's what now .

I'm quite sure I was using the TpLink Plug driver for a while and it was working well.. until the update.

Need confirmation of the driver from the device's page. Aslo, try doing a configure and see if that cures the issue.

Need driver version installed, driver name (from the device's page).

Also, need the refresh interval stated in the schedule.

I will be checking this out today.

I can't see the driver version. I set the update to 1 minute. Did multiple configures and refreshes. Heres some screen shots if that helps.

I’m using the driver “tplink plug” I’m not sure of the version, I assume it’s fully uptodate from HPM. I do have two tplink plug drivers though, one is 4 seconds newer and is the one in use. I have the refresh interval set to 1 min

You can get the driver version from the Devices "Device Info" page under the data section at the bottom. It is version. See Peter's post above.

its 2.4.1a

Paul and Peter,

Peter: RUN APP -> Scan for Devices and Add -> Next -> Done. This will update version-specific data for all devices and the app and finish the installation process.

Paul:

You may have the incorrect driver. See next post on how to update.

My testing (on my development hub:

  • Installed code using HPM. Did not run app
  • Reverted manually to version 2.3.9
  • Installed app and one EM plug
    • Test: works as specified including auto power update when turning on or off (part of the on/off method in the code with a 5 second delay).
  • Did a HPM repair (effectively updating to 2.4.1).
    • Checked code/app for proper version.
      • Note: the deviceLogin method in the error message does not exist in 2.4.1. It does exist in does exist in 2.3.9.
    • Tested without following update instructions on first post of this thread.
      • device info matched peter's page (Version = 2.3.9a)
      • power does not update on turning the device on.
      • power does not update on refresh.
  • Ran the update instructions from first post:
    • RUN APP -> Scan for Devices and Add -> Next -> Done
      • This will update version-specific data for all devices and the app.
    • Device info now shows correct version
    • On causes the power to update automatically.

First, you report two drivers. We need to determine which driver is linked to HPM. Not hard. Do the below three steps until the device works. It will take about 10 minutes for all the steps.
Checking driver as the correct one in HPM and relinking if not.

  • Open HPM
    • Select Repair
    • Select Tapo plugs ....
    • Select next, then Done at the bottom.
  • open the driver code page
    • The hpm driver is the one with the latest date.
    • If this is not the active driver, change to it by using the devices page, Device Info, Type dropdown.
  • Finish update. If the driver is correct, then try this (or skip to the next step).**
    • RUN APP -> Scan for Devices and Add -> Next -> Done. This will update version-specific data for all devices and the app.
  • Test the device.
  • DELETE the unused driver to avoid future confusion.

If the device still does not work, then:
Updating the driver code manually, the easy way:

  • Open the driver code.
  • Select the top right hand corner of the header and then select "import". See below
  • Select import and reply Yes to the confirmation prompt.
  • Save the driver.
  • RUN APP -> Scan for Devices and Add -> Next -> Done. This will update version-specific data for all devices and the app.
  • Test the device.

I’ve done the HPM repair and now see the following. I have two device drivers, the second used by the tplink plugs is seconds newer. Do I just delete the first one?

No. It is part of your legacy HPM configuration and would just be re-populated later. I will have to figure a way to alleviate the confusion in a future modification.

After you ran the app and completed the installation, did the device work properly.

This is what I got from the scan (no add option) so is this ok? Just testing by unplugging one socket for 5 mins, befor plugging back in and seeing if it’s monitored again.
So are you saying I cant delete the unused driver, it will just come back?