-
-
Notifications
You must be signed in to change notification settings - Fork 221
Sleep between discovery packets #656
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sleep between discovery packets #656
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #656 +/- ##
==========================================
+ Coverage 86.68% 86.96% +0.28%
==========================================
Files 39 39
Lines 3492 3506 +14
Branches 892 894 +2
==========================================
+ Hits 3027 3049 +22
+ Misses 382 378 -4
+ Partials 83 79 -4 ☔ View full report in Codecov by Sentry. |
So while this didn't fix it for a stubborn L530, I think it's an improvement anyway and should be merged after fixing the code coverage. I'm wondering if taskifying the discovery changes the behavior, though? |
It seems to work fine with the cli but I did wonder that myself and any thinking you can add on it would be appreciated. |
I doubt we can do much if the devices are just working as they are, but I don't think this is a release blocker, so.. 🤷 I had the same problem earlier, turning the device on and off from mains helps. Maybe @bdraco has some nifty ideas what we could try to improve this? Maybe spacing also sending to 9999 and 20002 separately? |
I wonder if the devices respond to multicast. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great, thanks! :-)
[Full Changelog](python-kasa/python-kasa@0.6.0.1...0.6.1) Release highlights: * Support for tapo wall switches * Support for unprovisioned devices * Performance and stability improvements **Implemented enhancements:** - Add support for tapo wall switches \(S500D\) [\python-kasa#704](python-kasa#704) (@bdraco) - Add new cli command 'command' to execute arbitrary commands [\python-kasa#692](python-kasa#692) (@rytilahti) - Allow raw-command and wifi without update [\python-kasa#688](python-kasa#688) (@rytilahti) - Generate AES KeyPair lazily [\python-kasa#687](python-kasa#687) (@sdb9696) - Add reboot and factory\_reset to tapodevice [\python-kasa#686](python-kasa#686) (@rytilahti) - Try default tapo credentials for klap and aes [\python-kasa#685](python-kasa#685) (@sdb9696) - Sleep between discovery packets [\python-kasa#656](python-kasa#656) (@sdb9696) **Fixed bugs:** - Do not crash on missing geolocation [\python-kasa#701](python-kasa#701) (@rytilahti) - Fix P100 error getting conn closed when trying default login after login failure [\python-kasa#690](python-kasa#690) (@sdb9696) **Documentation updates:** - Add protocol and transport documentation [\python-kasa#663](python-kasa#663) (@sdb9696) - Document authenticated provisioning [\python-kasa#634](python-kasa#634) (@rytilahti) **Closed issues:** - Consider handshake as still valid on ServerDisconnectedError [\python-kasa#676](python-kasa#676) - AES Transport creates the key even if the device is offline [\python-kasa#675](python-kasa#675) - how to provision new Tapo plug devices? [\python-kasa#565](python-kasa#565) - Space out discovery requests [\python-kasa#229](python-kasa#229) **Merged pull requests:** - Add additional L900-10 fixture [\python-kasa#707](python-kasa#707) (@bdraco) - Replace rich formatting stripper [\python-kasa#706](python-kasa#706) (@bdraco) - Add support for the S500 [\python-kasa#705](python-kasa#705) (@bdraco) - Fix overly greedy \_strip\_rich\_formatting [\python-kasa#703](python-kasa#703) (@bdraco) - Ensure login token is only sent if aes state is ESTABLISHED [\python-kasa#702](python-kasa#702) (@bdraco) - Update readme fixture checker and readme [\python-kasa#699](python-kasa#699) (@rytilahti) - Fix test\_klapprotocol test duration [\python-kasa#698](python-kasa#698) (@sdb9696) - Renew the handshake session 20 minutes before we think it will expire [\python-kasa#697](python-kasa#697) (@bdraco) - Add --batch-size hint to timeout errors in dump\_devinfo [\python-kasa#696](python-kasa#696) (@sdb9696) - Add L930-5 fixture [\python-kasa#694](python-kasa#694) (@bdraco) - Add fixtures for L510E [\python-kasa#693](python-kasa#693) (@bdraco) - Refactor aestransport to use a state enum [\python-kasa#691](python-kasa#691) (@bdraco) - Update transport close/reset behaviour [\python-kasa#689](python-kasa#689) (@sdb9696) - Check README for supported models [\python-kasa#684](python-kasa#684) (@rytilahti) - Add P100 test fixture [\python-kasa#683](python-kasa#683) (@bdraco) - Make dump\_devinfo request batch size configurable [\python-kasa#681](python-kasa#681) (@sdb9696) - Add updated L920 fixture [\python-kasa#680](python-kasa#680) (@bdraco) - Update fixtures from test devices [\python-kasa#679](python-kasa#679) (@bdraco) - Show discovery data for state with verbose [\python-kasa#678](python-kasa#678) (@rytilahti) - Add L530E\(US\) fixture [\python-kasa#674](python-kasa#674) (@bdraco) - Add P135 fixture [\python-kasa#673](python-kasa#673) (@bdraco) - Rename base TPLinkProtocol to BaseProtocol [\python-kasa#669](python-kasa#669) (@sdb9696) - Add 1003 \(TRANSPORT\_UNKNOWN\_CREDENTIALS\_ERROR\) [\python-kasa#667](python-kasa#667) (@rytilahti)
[Full Changelog](0.6.0.1...0.6.1) Release highlights: * Support for tapo wall switches * Support for unprovisioned devices * Performance and stability improvements **Implemented enhancements:** - Add support for tapo wall switches \(S500D\) [\#704](#704) (@bdraco) - Add new cli command 'command' to execute arbitrary commands [\#692](#692) (@rytilahti) - Allow raw-command and wifi without update [\#688](#688) (@rytilahti) - Generate AES KeyPair lazily [\#687](#687) (@sdb9696) - Add reboot and factory\_reset to tapodevice [\#686](#686) (@rytilahti) - Try default tapo credentials for klap and aes [\#685](#685) (@sdb9696) - Sleep between discovery packets [\#656](#656) (@sdb9696) **Fixed bugs:** - Do not crash on missing geolocation [\#701](#701) (@rytilahti) - Fix P100 error getting conn closed when trying default login after login failure [\#690](#690) (@sdb9696) **Documentation updates:** - Add protocol and transport documentation [\#663](#663) (@sdb9696) - Document authenticated provisioning [\#634](#634) (@rytilahti) **Closed issues:** - Consider handshake as still valid on ServerDisconnectedError [\#676](#676) - AES Transport creates the key even if the device is offline [\#675](#675) - how to provision new Tapo plug devices? [\#565](#565) - Space out discovery requests [\#229](#229) **Merged pull requests:** - Add additional L900-10 fixture [\#707](#707) (@bdraco) - Replace rich formatting stripper [\#706](#706) (@bdraco) - Add support for the S500 [\#705](#705) (@bdraco) - Fix overly greedy \_strip\_rich\_formatting [\#703](#703) (@bdraco) - Ensure login token is only sent if aes state is ESTABLISHED [\#702](#702) (@bdraco) - Update readme fixture checker and readme [\#699](#699) (@rytilahti) - Fix test\_klapprotocol test duration [\#698](#698) (@sdb9696) - Renew the handshake session 20 minutes before we think it will expire [\#697](#697) (@bdraco) - Add --batch-size hint to timeout errors in dump\_devinfo [\#696](#696) (@sdb9696) - Add L930-5 fixture [\#694](#694) (@bdraco) - Add fixtures for L510E [\#693](#693) (@bdraco) - Refactor aestransport to use a state enum [\#691](#691) (@bdraco) - Update transport close/reset behaviour [\#689](#689) (@sdb9696) - Check README for supported models [\#684](#684) (@rytilahti) - Add P100 test fixture [\#683](#683) (@bdraco) - Make dump\_devinfo request batch size configurable [\#681](#681) (@sdb9696) - Add updated L920 fixture [\#680](#680) (@bdraco) - Update fixtures from test devices [\#679](#679) (@bdraco) - Show discovery data for state with verbose [\#678](#678) (@rytilahti) - Add L530E\(US\) fixture [\#674](#674) (@bdraco) - Add P135 fixture [\#673](#673) (@bdraco) - Rename base TPLinkProtocol to BaseProtocol [\#669](#669) (@sdb9696) - Add 1003 \(TRANSPORT\_UNKNOWN\_CREDENTIALS\_ERROR\) [\#667](#667) (@rytilahti)
This will allow devices time to wake up and might improve discovery on congested networks by spacing out the packets.
Fixes #229