Sometimes a modbus server do not respond to a transaction,
this is a contradiction to the modbus protocol specification,
but merely a matter of fact.
Use asynio.await_for() to provoke a timeout, and close the
transaction.
Some providers have set their wait_timeout to 60s
in order to pack as many users as they can on a machine.
The mysql default is 28800 seconds (8 hours)
Since mysql connection build and tear down is relativity
expensive, we want to avoid being disconnected.
We now accommodate this scenario with the following:
1. Raise the mysql session wait_timeout 28800 when we connect
2. The event session now does a 30 second keep alive to
ensure the connection stays open
* Speed up TP-Link lights
* Color temp kan be None
* hs as int, force color temp=0
* Fix color temp?
* Additional tplink cleanups to reduce api calls
* Update test to return state, remove Throttle
* Fix state restore on off/on
* Fix lights without hue/sat
Co-authored-by: J. Nick Koston <nick@koston.org>
* Load integrations with requirements in device_automation
- Split cached loader behavior out of async_get_integration
- Use cached loader for both async_get_integration and
async_get_integration_with_requirements
- Use async_get_integration_with_requirements for device_automation
resolves#33104
* Duplicate caching logic in requirements, remove loader mods
* Update homeassistant/requirements.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Use asynctest patch instead of mock_coro
* Add test for supervisor ip ban
* Do not ban supervisor ip if set
* Extract supervisor ip helper
* Check supervisor ip before banning
* Remove added blank line
* Clean up get supervisor ip
Co-Authored-By: Pascal Vizeli <pvizeli@syshack.ch>
Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
* Convert nut to a multi step config flow
* Users can now choose the ups they want in
step 2 (or skipped if only one)
* Users can now select the resources they want
to monitor based on what is actually available
on the device
* CONF_NAME has been removed as we now get the
name from NUT
* Device classes have been added which allows
the battery charge state to be seen in the
devices UI
* Remove update_interval as its for a followup PR
* explict
* reduce
* fix bug, add tests for options flow
* Test for dupe import
* Test for dupe import
* Call step directly
* Update homeassistant/components/nut/config_flow.py
Co-Authored-By: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* convert nws to component configuration
* add more debug logging
* remove assumed state
* move initialization of data into init
* refactor update logic
* use forecast success for checking available entities
* Split unique_id into more usable pieces.
use a base_unique_id for each entry. Add domain for signaling to entities. Each entity in each platform can use base_unique_id to form individual unique_id's.
* Revert "move initialization of data into init"
This reverts commit 09eb0220469285b10f0500f5f6def67415931a81.
* add silver quality scale to manifest
* unsubscribe listener in will_remove_from_hass
* initialize _unsub_listener in __init__
* use async_on_remove
* remove scan interval from configuration
* Use better name
Co-Authored-By: J. Nick Koston <nick@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add discovery support to synology_dsm
* Remove debug
* black
* Fix mocks
* Merge strings
* Move placeholders
* add missing placeholders
* reorder
* use constants in test
* Remove CONF_NAME (only displayed in discovery now)
* test reduction
* Shorten long name
* Use name for name but NOT for unique_id, remove CONF_NAME from yaml config
* Use Synology for the name for now, hopefully we can use the hostname later
* lint
* Remove name from strings
* remove =None
* show login errors at username field
* Update tests/components/synology_dsm/test_config_flow.py
Co-Authored-By: Quentame <polletquentin74@me.com>
* Update tests/components/synology_dsm/test_config_flow.py
Co-Authored-By: Quentame <polletquentin74@me.com>
* Update homeassistant/components/synology_dsm/const.py
Co-authored-by: Quentame <polletquentin74@me.com>
* update common test for modbus integration
* remove log messages from modbus setup function.
* Make global method local
* Change parameter name to snake_case
* Added support for the Pi4ioe5v9xxxx binary IO expanders.
* Correction for black failure
* Correction for black failure
* Fix for manifest.json
* Fix for flake8 fault missing a period
* Some modifications I made during tests seem to be disapeared, fixed flake8 and black test now
* WIP virtual thermostat
* WIP virtual thermostat
* WIP
* 100% tests coverage
* Manifest, codeowners, typo fix
* Lint problem
* Test file blacked
* Add a test case for b4dpxl's question
* Update CODEOWNERS
* Replacement of generic thermostat
* Cleaning
* Lint
* More lint
* Using external PyPI package, removed get()
* Fix flake8 checks
* removed virtual thermostat
* Re-fix black & isort
* Re-fix isort 2
* Update homeassistant/components/pi4ioe5v9xxxx/binary_sensor.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/pi4ioe5v9xxxx/binary_sensor.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/pi4ioe5v9xxxx/switch.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/pi4ioe5v9xxxx/switch.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/pi4ioe5v9xxxx/switch.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/pi4ioe5v9xxxx/switch.py
Co-Authored-By: J. Nick Koston <nick@koston.org>
* black for switch
* update to latest version manual merge
* Delete test_generic_thermostat.py
* Delete .gitignore
* Delete climate.py
* Delete manifest.json
* Delete test_climate.py
* Delete test_climate.py
* fix thermostat interference
* fix thermostat interference 2
* Fix pylint
* Update .pre-commit-config.yaml
Co-authored-by: Cyril <cyril.dubus@effipilot.com>
Co-authored-by: Niflou <dubuscyr@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>