Releases: make-all/tuya-local
2024.7.0 Greek and Chinese
Highlights
- New translations to Greek and Chinese thanks to @ChriZathens and @jianyun8023
- 34 new devices
- Improvements to 15 existing devices
- 31 PRs, many by first time contributors
New devices
- Depauley ceiling fan and light #1957 by @scotttimmins
- JH PC Pro+ PCIe computer power switch #1958 by @BenJamesAndo
- Luko dehumidifier #1968 by @cemilbrowne
- LSC Smart RGB-CCT lightbulb #2009 by @malosaa
- Poolsana heatpump #2011 by @Cyrelion
- Kolanky EV charger #1853
- KY 35W-10 shutter controller #1866
- Diivoo DWV010 dual water timer #2005 by @jannisan
- BLE YL01 water quality tester #2020, #2056 by @Cyrelion
- Fresco Hydrate Ultra pet fountain #2006 by @malosaa
- Fisher air-water heatpump #1870
- V330L pet feeder #2038 by @pergolafabio
- Goldair PH-ET07EA heater #1898
- Deakon EVI air to water heatpump #1794
- WL-898WZ water leak sensor #1912
- ZY-M100-WiFi presence sensor (2nd variant) #1913
- Sirena WS-902 Plus siren #1920
- Inkbird IBT-26S BBQ thermometer #2016 by @nima-1102
- Avidsen Soria solar inverter #2043 by @Moutmout31
- Gorilla Fan V2 #1988 by @aravindjaimon
- WOUEJ EV charger #2060
- Klarstein Iceblock Ecosmart air conditioner #2001 by @krie
- Bauhn AP5W-00624 5-way powerstrip #2062 by @lukegackle
- BLE TCS024B plant moisture sensor #2070 by @almirus
- Kogan LX-8 vacuum robot #2032 by @ewandank
- Zemismart ZM25R2 roller shade #2018 by @rac146
- Tongou QCB2-WB / SMR1 #1934, #1935
- Gosund SP112 USB smartpug #2055
- Tesla Smart S300 air purifier #1936
- PlantsIO Ivy smart planter #2069 by @thewade
- Bonaire HPC5200020 heater #2079 by @bjeanes
- Arlec APR005HA air purifier #2094 by @horse-pants
- Casdon TD Pro 2 oven #2098 by @jianyun8023
- Zedar R600 vacuum robot #2092 by @lankhaar
Improvements to existing devices
- Bresser weather station: compatibility improvements #1975
- Owon PCT513: use preheating action, improve C/F handling #1948
- BLE smart plant moisture sensor: use moisture class rather than humidity #2019 by @almirus
- Tefal Xplorer: make yaml available, improve compatibility #2017
- Aubess 2-gang: add compatible double garage door controller #1857
- Catit Pixi: add duration class to time sensors #2006
- Atorch S1WP: fix current unit #2030 by @gy6221
- Royal Clima Fresh: add a power sensor (kW converted from BTU) #2037 by @almirus
- Kogan LX10: improve command/pause handling and compatibility #2032
- Fisher Summer: add compatible Daitsu air conditioner #1933
- Atorch S1WP: add update interval #2049 by @Lxeon
- Puppy Kitty pet feeder: add matching product id #2057 by @Aegeontis
- Kabum 700 v2023: make mopping optional #2072
- Chanfok fan light: fix data types, improve compatibility #2068
- SmartplugV2 Energy: use correct product id for Arlec PC191HA #2101
- Goodcell EV charger: improve compatibility #2102, #2106
General improvements
- Greek translations #1995, #2023 by @ChriZathens
- diagnostics: Add ability to redact device data #1984
- cameras: redact images from diagnostics #1984
- light: add "off" to effects when it is combined with color_mode #1598
- sensor: unixtime made to work without any mapping #2080
- config flow: load yaml in an executor #2083
- tinytuya: upgrade to 1.15.0
- config flow: improve error message
- Revert #1856 fix, as it causes naming problems for sensors, numbers and binary_sensors
- Chinese translations #2113 by @jianyun8023
Development improvements
- improved checking for state class on sensors
- removed broken sonarcloud config
2024.6.0 improved cloud setup flow
Highlights
This release brings improvements to the new cloud setup flow from the last release, especially for hubs, or when device IP address discovery fails.
It also fixes some new warnings that HA 2024.6.x complains about in their quest for startup performance at all costs.
Breaking changes
- Minimum HA requirement is now 2024.5, due to substantial changes forced by that version that appear to have issues on earlier versions
of HA.
New devices
- JH PCIe computer power switch #1914 by @BenJamesAndo
- Tesla AUX air conditioner #1836
- XCase NX-4964 lock box #1851
- Hoenyzy valve timer #1979
- Amico 52inch ceiling fan #1954 by @hwhesselink
- Sensei air conditioner #1955 by @JohnyDNU
Improvements to existing devices
- Skyfan DC: improve detection compatibility #1959
- Tonepie litter box: improve detection compatibility #1963
- Catit Pixi feeder: add Puppy Kitty compatible device #1966 by @Aegeontis
- WDYK 3P enery monitor: fix energy sensor scale #1865 by @rostKo
- IPS Pro heatpump: add cooling support, and fix presets #1952 by @chris-garbos
- Graywind shade: add Zemismart compatible device #1852
- BVP CP1 heater: add hvac_action #1977
- Moebot S: make problem sensor non-persistent #1983
- IR Moes heatpump: make connectivity a sensor not switch #1970 by @fabianoarruda
- Nedis mobile air conditioner: add swing_mode #1986 by @Zelaf
- IR Moes, Neo IR: fix naming of heat_cool hvac mode #1970
- Windcalm fan wit light: support variant without brightness control #1976 by @christiaanderidder
General improvements
- Config flow: do not abort when local discovery fails #1951
- Deprecated entities: only log when the entity is enabled #1961
- tinytuya upgraded to 1.14.0
- Config flow: check hub categories to detect hubs #1960, #1956
- Entity names: avoid None in names when device class is given #1856
- alarm_control_panel: do not enforce unsupported code entry in HA 2023.6
- shutdown: handle CancelledError to support unloading offline devices #1974
- water_heater: log original units when they are incorrect #1855
- unit handling: return strings when converting unit abbrevs #1855
- climate/water_heater: don't report error when still finding unit #1855
- load yaml in executor job to avoid blocking event loop #1981
- setup device in executor job to avoid blocking event loop #407
Development improvements
- use latest pytest-homeassistant-custom-component corresponding to at least HA 2024.5 release
2024.5.3 Cloud setup
Highlights
- improved HA 2024.5 compatibility
- a new config flow that allows optional use of Tuya cloud to fetch device details
- 13 new devices
- improvements to 18 devices
New devices
- Pulido P13 lock #1860 by @gkwok1
- Stepuptech SG800 solar inverter #1837 by @sj29fr
- Tefal X-plorer vacuum #1873 by @wbln
- Pro Energy PE08 pool heater #1580
- OPK K2 vacuum #1821
- Semptec ZX7007 IR heater #1827
- LSC PTZ camera #1596
- Door peephole camera #1471
- Gainsborough Liberty entrance lock #1536
- Soho air purifier #1938 by @Onvisoc
- Ailrinni BLE fingerprint lock #1806
- Koi Duo water heater #1831
- HCT-626 BLE dual water timer #1890 by @AdrianGarside
Improvements to existing devices
- SH07 sprinkler: add support for SH07S-TY #1882 by @AdrianGarside
- Holman WX8 irrigation: fix Zone 4 mapping #1886 by @TwoWheelPro
- SNT957W sensors: scale sensors by 10 #1907
- pH-W218 sensors: improve detection #1862
- Lublueblu vacuum: improve detection #1875
- Moes TRV: improve detection #1891
- MRC Magnum: improve detection #1899
- Tesla air conditioner: fix power limit conflict #1571
- Lefant M213 vacuum: improve detection
- Nice Digi lock, Single phase clamp meter, Tonepie litter box: fix event entities #1714
- Yueqing curtain: invert position #1781
- BLE plant moisture sensor: expose temperature unit, to also allow manual polling #1696, #1910
- Hydrotherm Dynamic/X8 water heater: support Aquatech branded variant #1922
- Fairland IPHCR15: add compatible Phalen Calidi device #988
- Loratap relay, Loratap Zigbee curtain: remove invalid scale #1930
- Beok TGM50 improve detection #1930
- Intelbras lock: add missing features #1792
- Royal Clima Fresh: add missing features #1928 by @almirus
- SmartplugV2 energy: add compatible Smartrul device #1845
- Camnsmart E27 camera: fix button mappings #1596
- Plikc Neve thermostat: improve heating/cooling support #1878 by @beltra
General improvements
- start the background threads from the event loop to allow standard HA thread handling #1917
- rewritten config flow with cloud support for getting device details #1881 by @AdrianGarside
2024.5.2 Take three
Thanks to @craibo who was able to create and test a fix for the HA 2024.5 issues while I was away and unable to do so myself.
Unlike the previous two takes, this is a tested fix, and not just a speculative guess at what has changed in HA's unwritten expectations for integration startup.
2024.5.1 Take two
- opt the integration out of some recent init changes #1871
https://developers.home-assistant.io/blog/2024/03/09/import_executor_default
Change was introduced in 2024.4, but it seems it caused instability
which caused the HA developers to double down and cause integrations
to fail in 2024.5 rather than back out the unstable change.
2024.5.0 hotfix for new HA release
2024.4.0 translation expansion
Breaking changes
- climate: aux_heat support has been removed, as HA started issuing deprecation warnings. Only 3 devices used this, and have had alternative switches since HA removed aux_heat from the UI some time ago. #1784
- humidifiers: remove deprecated separate humidity sensors (replaced by humidifier current_humidity attribute)
- ZX G30: remove separate buttons (replaced by alarm_control_panel)
- Some entity names were standardised for translation #1708. The following could not be handled by migrations:
- light uv_sterilization: converted to switch
- switch indicator, backlight, display: converted to light
- light led: renamed to indicator or default, depending on usage
- Loycco sound nightlight: unnamed light renamed to nightlight
New devices
- Sol*Aire Vitra S2 panel heater #1770
- Feyree EV wallbox #1730
- Royal Clima Fresh air conditioner #1703
- Nice Digi door lock #1714
- Vevor portable EV charger #1757
- Multi Leaf DY-107 thermostat #1718
- Moes BR-100 TRV thermostat #1780
- Yueqing Combo curtain motor #1781
- ElectriQ EcoSilent 12WAP air conditioner #1807
- Beca BAC/BHT-006 thermostat #1822
- Arlec smart button #1828
- NovaDigital SL06 lock #1830
- Eurom Sani towel rail #1810
- Confortotal CICON242 mini split air conditioner #1835
Improvements to existing devices
- PJ1103 clamp meter: fix scale of energy sensor #1782
- Moebot S mower: improve Parkside mower compatibility #1778
- HDMI sync light: use white instead of brightness for color light #1788
- YX316 aroma diffuser: make sound switch optional #1134
- ElectriQ EcoSilent 14HPW: make some dps optional #1130
- Goodcell EV charger: correct sensor scales and state classes #1808
- Zemismart roller shade: revert position reversal #1830
- Avatto, BHT002 GBLW, Hysen H08ACF thermostats: don't try to define default mapping inside conditions #1560
- Renpho air quality: use enum rather than aqi for textual air quality sensor #1832
- Inventor Eva Ion Pro: make water level optional #1839
- Leos Loo Too: make light optional #1840
- Lublueblu vacuum: make activate, charge, direction_control optional #1829
- Eesee Adam: split tank sensor into tank_full, defrosting and general problem sensors #1841
- RGBCW lightbulb: add compatible ANWIO BR30 #1844
General improvements
- climate: work around HA's false deprecation log message #1513, #1632, #1637, #1734, #1737
- German translations added #1797
- translations: added UV sterilization and Ionizer switch translations and icons #1708
- translations: added Heater climate translations and icons #1708
- translations: added Time remaining sensor translations and icons #1708
- translations: added Backlight, Display, Indicator, Laser, Nightlight, Flame, Embers, Logs light translations and icons #1708
- event: don't re-trigger events when device keeps reporting the same value #1818
- config flow: don't default IP to "Auto" to avoid encouraging this suboptimal config setting #407
Development changes
- tests are temporarily constrained to run against HA 2024.4.4, as the 2024.5 beta is causing the tests to hang for unknown reason.
- Water heater tests: use simpler Geyserwise config for base tests
2024.3.2 Valves
Highlights
- Support for valve entities
- 26 new devices
- almost 50 devices improved
- fan, light and remote bugfixes
New devices
- Nooie NSP21 smart plug #1711
- Nooie PU13 smart plug #1711
- Feit RGB light bulb #1724
- Peteme recessed light #1724
- ERZ04C dual clamp energy meter #1716
- iHome AutoVac Nova vacuum #1660
- MoistenLand water timer #1092
- Plikc Neve X RFW thermostat #1350
- Silvercrest coffee maker #1731
- HoneyGuardian S56 pet feeder #1670
- PY321-Z-TY zigbee energy meter #1671
- Maxico aroma diffuser #1675
- Hysen H02TP thermostat #1677
- KKMoon knob thermostat #1727
- Lehmann LHOHC-2013C radiator #1737
- Madimack Inverflow Pro pool pump #1736
- Zemismart DP-WBS01 8-zone sprinkler controller #1701
- Orison ambient RGB bladeless ceiling fan #1750
- Eruiklink curtain motor #1735
- LS830-TY curtains #1680
- Moes WS-Y-EUC curtain switch #1751
- WF-WS02 RJ dual switch #1753
- Camnsmart E27 camera #1336
- Tediton K7 lock #1391
- Simple dual switch #1773
- YSG BS01 bluetooth lock #1713
Improvements to existing devices
- Many devices: fixed conditional mappings that tried to use a default condition #1709 (mostly affecting hvac_action and swing_mode on some climate entities, action on some cover entities, and vacuum activate/pause handling)
- simple switch timer v2: added Gireier USB switch as compatible device #1721
- Water valves/sprinklers etc: use new valve entity, deprecate old switch entities #1720
- WDYK 2P 63A meter: fix decoding of phase B and C #1717
- Ovlaim fan: use integer speed instead of string #1728
- Inventor Tokens Legend: improve detection by marking dps as optional #1513
- Moebot S: add commands and statuses from S5 docs #1665
- Nedis Pet feeder: improve detection by marking dps as optional #1733
- Shinco 30D: make compatible with 50D also #1748
- Beok TGR81: correct confused product info #1742
- IR Moes heatpump remote: add remote entity and identified some unknown dps #1755
- Evotherm ETI pool heatpump: make compatible with AquaTherm model #1712
- Zigbee smartbulb: add another compatible Moes bulb #1762
- Tongou QCB2 single phase: improve detection by making dps optional #1769
- Yinmik water quality: improve detection by making pH optional #1754
- Ecopoint EV charger: improve detection by making charge current optional #1768
- Madimack Elite V3: add power sensor #1772
- ZX-DB11 doorbells: correct ringing sensor type, add detailed attribute #1761
General improvements
- Improved Hungarian translations #1715
- remote: fixed handling of type dp #1719
- valve entity support added #1720
- fan: avoid init error when optional speed dp is not sent by device #1513
- light: avoid init error when optional brightness dp is not sent by device #1738
Development improvements
- cleaned up functions to not explicitly return None at the end
- clean up exception handling in switches
2024.3.1 Hotfix
Fixes an issue with migration of "tank" binary sensors to either tank_full or tank_empty as appropriate in 2024.3.0
2024.3.0 Icon translations
Highlights
- More reliable logging when adding new devices
- More translated entity names
- Icon translations
Breaking changes
- HA 2024.2 is now required #1579, #1597
- some entity names have been commonized to take advantage of name and icon translations. Migrations take care of most of these, but if you have yaml defined automations, you may need to update these manually.
The following changes could not be migrated and will require manual cleanup of the old entities, and updating of any references in the UI, automations etc:- ETOP FCU child lock was changed from a switch to a lock
- Holman WX1 and WX2 changed some number entities for "Time left" to sensor entities renamed as "Time remaining"
- Proscenic M9 error message sensor was changed to a problem binary sensor
- Rotenso Ronix and Stadler Form Roger unnamed sensor given the correct pm 2.5 class, so ids will change accordingly.
- Shinco 30D fault code sensor was removed, the info was added as an attribute to the problem binary sensor.
- Vacplus fault sensor replaced with problem and tank_full binary sensors
- Garza irrigation alarm binary sensor renamed to the standard problem. Although the entity type was unchanged, due to other devices using "alarm" binary sensors for actual alarms, it was not possible to easily migrate this change.
New devices
- Tongou ST463JWT circuit breaker meter #1667
- Curtains with feedback (same as QS C01, but accurately report current position) #1681
- Madimack Elite V3 heatpump (new incompatible version) #1691
- Dongguan LY1678-2 curtain #1698
- SGS01 BLE soil moisture sensor #1696
- SNT957W-DE CBU temperature/humidity sensor #1702
- SNT957W-TDE temperature sensor #1699
- LightStar track light #1700
- BHT-002 GBLW thermostat #1684
Improvements to existing devices
- ZX G30 alarm: added more entities #1673
- Tongou QCB2: expose online state as a switch rather than sensor, so it can be used to trigger more frequent sensor updates #1483
- Beca BHT-002 improve compatibility by making mode optional #950
- Hydrotherm Dynamic X8: use inlet as current temperature #1686
General improvements
- config: DPS are always logged when the device selection dialog is shown, previously they were only shown if there was no 100% match #1667
- climate: add reporting of TURN_ON and TURN_OFF to supported features #1597
- init: network exceptions are now caught and rethrown as ConfigEntryNotReady so HA retries setup later #1683
- unique_id now uses translation_key if both name and class are missing to facilitate wider use of translated names #1579
- HA 2024.2 icon translations are supported #1579
The following entity types were updated to use icon and name translations:- Child locks
- Number and select Timer entities (some previously labelled countdown)
- Problem binary sensors (previously labeled fault, error or others)
- Temperature unit selects (some previously named differently)
- Defrost binary sensors (some previously named anti-frost etc)
- Anti-frost switches (some previously named defrost etc)
- Tank full binary sensors (previously named just tank, or other variations)
- Tank empty binary sensors (previously named just tank, or other variations)
- Translated names work again (was broken in 2023.11 by HA removing a deprecation warning in a way that changed the name handling)
- config: description for name step removed obsolete mention of selecting entities
- Japanese translations added
Development improvements
- CI: updated github actions to use nodejs 20 versions
- tinytuya library bumped to 1.13.2
- icon has been documented as deprecated, try to use icons.json and translation_key instead #1579
- new
translation_only_key
added to handle cases where we want the unique_id to ignore translation_key (mainly to keep backward compatibility) #1579 - a schema based test was added to YAML configs, to detect difficult to spot errors such as out of place keys, misspelled keys etc
- Python formatting changed to satisfy ruff 2024 stable update
- CI: add a new YAML-only test job, and make the full test only run when there are python changes