Skip to content

Releases: make-all/tuya-local

2024.3.2 Valves

27 Mar 07:34
2024.3.2
46749b1
Compare
Choose a tag to compare

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

04 Mar 22:32
2024.3.1
be8486c
Compare
Choose a tag to compare

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

04 Mar 15:37
2024.3.0
b5e2dca
Compare
Choose a tag to compare

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

2023.2.1 Scaling Up

18 Feb 04:06
2024.2.1
Compare
Choose a tag to compare

Breaking changes

  • Home Assistant 2024.1 or later is now required #1444
  • Light brightness now uses the full range in Home Assistant even when the range in Tuya is limited, this can lead to big differences for a given brightness value, especially toward the lower end of the scale for bulbs only supporting dimming down to 10%. #1444
  • Both fan speed and light brightness can have small discrepencies in reported values due to the scaling change. #1444
  • Support for Tadiran air conditioners has been removed. The company manufacturing these devices was spun out from an Israeli Military contractor and still maintains connections at board level. If you are using one of these devices you may wish to avoid upgrading until you find a more ethically sourced replacement.

I acknowledge that some users may be upset by this decision, but the
decision is final so it will not help to argue against it. In
particular abusive comments in discussions will not be tolerated.

New devices

  • Moes IR/RF remote controls (IR support only for now) #929
  • Wärme electric heater #1606 #1623
  • Meterk single phase clamp meter #1575
  • Tesla Smart XL dehumidifier #1600
  • Leo's Loo Too cat litter box #1577
  • Comon 8 function string lights #1630
  • Mirabella Genio Pixel oval ceiling light #1538
  • 1 channel dimmer module #1611
  • Timeguard WFPIR motion light controller #1590
  • Keyun RGB chandelier fan #1628
  • Dual channel dimmer module #1649
  • Holman WX8 irrigation controller #1566, #1650
  • Dynasty BTX fireplace #1646
  • Kesser 3000W infrared heater #1651
  • Kesser 400W infrared wall heater #1651
  • Graywind window shades #1656
  • Kerui JS-P162 300W camera #1525
  • Kerui 200W camera #1526
  • Herschel infrared heater #1659
  • Kabum Smart 700 vacuum 2023 model #1662
  • SmartCurtain curtain motor #1627
  • EPT tank level sensor #1653
  • Tongou QCB2 single phase circuit breaker energy meter #1657

Improvements to existing devices

  • ZN373186 temp/humidity: relax requirement for battery sensor to improve detection #1636
  • Caldo Up T: separate out auto from hvac_mode as the device seems to reject combining two dps #1286
  • Dual clamp meter: support use with a single clamp #1604
  • BHT-002 GALW: support GBLW also #1593
  • SmartplugV2 EnergyV2: expand to optionally support all Moes smartplug features #1409
  • QS C01 curtain: support zigbee version also #1634
  • NAC air purifier: improve device detection #1654
  • BSTUOKEY access keypad: improve device detection #1152

General improvements

  • fan: Use new (in HA 2024.1) scaling functions for fan speed #1444
  • light: Use new scaling functions for brightness #1444

Development improvements

  • light/fan configs: no longer require scale to be specified for fan
    speed or light brightness as scaling is automatic #1444
  • CI now run with Python 3.12 to stay in sync with Home Assistant

2024.2.0 Keep up with Home Assistant

09 Feb 02:50
2024.2.0
d54d481
Compare
Choose a tag to compare

Highlights

  • Lights were broken in HA 2024.2 due to stricter handling of supported_color_modes. This release fixes that.

New devices

  • Generic 2 outlet, 2 USB smartplug #1584
  • Poolex Arctic pool heat pump #1582
  • Holman WX8 irrigation controller #1566
  • Ironzon fingerprint lock #1554
  • Avatto ME81 thermostat #1560
  • Tesla TAF series air conditioners #1571
  • CleanAir 604B humidifier #1612
  • Goodcell 3-phase EV charger #1570
  • Kogan bladeless fans #1480
  • Kogan Y12 and Y16 air conditioners #1480
  • Mirabella Genio 5 outlet powerstrip #1480
  • Tonepie cat litter box #1541

Improvements to devices

  • Touchstone fireplace: match the ember light control to actual device function #1372
  • Lefant N3: match basic controls to actual device function #1393
  • Nedis air quality: use VOC_parts class for ppm sensor #1601
  • Hombli thermostat: improve compatibility, add valve sensor #1424, #1621
  • IH001 LED controller: fix scene selector #1629
  • Asakuki diffuser, Ustellar light bar: fix selectors #1629

General improvements

  • event: fix error when including extra state attributes with the event #1578
  • climate: allow min and max temperature dps to be optional #1560
  • light: don't set brightness when switching into color mode #1595
  • device: log warnings for protocol errors during initial config #1609
  • light: fix supported_color_modes return type #1631, #1633

2024.1.1: clean up

28 Jan 15:35
2024.1.1
1ae07ea
Compare
Choose a tag to compare

Lint was enabled for YAML files, leading to a lot of whitespace cleanup, and a few more significant changes that may have fixed some issues for some devices. Support for a couple more models of vacuum cleaner was also added, so you too can clean up ready for the new Lunar Year.

New devices

  • Another variant of Alutherm 2000 #1502
  • Tongou QCB2-WB circuit breaker #1429
  • Tesvor S6 vacuum #1422
  • Madimack Eco pool heatpump #1431
  • Inkbird IHC-200 humidity controller #1466
  • CleanAir 605B humidifier #1539
  • Tesla aroma diffuser #1469
  • PNI water feeder #1470
  • Yagusmart energy meter #1473
  • Taurus Agadir oil column heater #1478
  • Weeket kettle #1481
  • ETOP FCU thermostat #1522
  • WeatherStation Pro #1528
  • Carro humidifier #1411
  • Eglo ceiling fan #1492
  • EVSun EV charger #1501
  • Mellerware Comfy electric radiator #1506
  • Inventor Leon #1513
  • Lefant N3 vacuum #1393
  • Arlec RF transmitter #1516
  • Moes 4-gang switch #1463
  • Idea Heating Belt air conditioner #1540
  • EcoPoint EV charger #1549

Improvements to existing devices

  • Touchstone fireplace: fix embers #1372
  • Smart watering device: improvements to icons, units and run time sensor #1499
  • Blitzwolf BW LT31: Use string rather than hex for select_music #1505
  • Evotherm ETI: use preset mode rather than often missing work_mode for hvac_mode logic, scale redirected temperatures #1357
  • TTEC vacuum: split start/pause/dock into separate buttons #1509, #1545
  • Poolex Q-line: add anti-frost detection #1510
  • ZY-M201: make sensitivity optional #1515
  • Dimming lightbulb: add timer #1500
  • Hombli radiator valve: fix temperature range #1518
  • Medion S20: add status mapping for "remote"
  • Arlec panel heater v2: make preset_mode optional #1544
  • Windcalm fan with light: expose timer #1563
  • Arlec panel heater: allow child lock to be either dp 6 or 7 as per comment
  • Atomi ceramic heater: support AT1635 by making swing_mode optional #1535
  • Smartplugv2 Energy V3: support UNSH breaker by making child lock optional, add optional temperature sensor #1537
  • about half of all devices: fixed yamllint issues (mostly harmless whitespace)

General improvements

  • water_heater: handle missing current_temperature #1542
  • configs: fixed lint errors
  • device: compare types using instanceof instead of is
  • event: fix logging in exceptional case
  • remote: fix snding multiple commands at once

Development improvements

  • config_flow: update tests for HA 2024.1.2
  • humidifier relax tests to not require a switch, add current_humidity #1466
  • CI: use ruff instead of black and isort (HA already switched, black started producing errors suddenly as they yearly update default checks)
  • CI: add general python lint checking with ruff
  • CI: add yaml lint checking with yamllint
  • CI: enable PR annotation of lint detected issues

2024.1.0 New Year Events

08 Jan 13:53
2024.1.0
b7c0100
Compare
Choose a tag to compare

Highlights

  • New entity types: lawn_mower and event
  • 20 new devices supported
  • improvements to 16 devices
  • 9 pull requests merged, 15 issues fixed

Breaking changes

This version requires Home Assistant 2023.9.0 or later. This is required for underlying support for lawn_mower (introduced in HA 2023.9) and event (introduced in HA 2023.8) entities.

New Devices

  • Dreamlight RGBCW LED strip #1341
  • Proscenic A9 air purifier #1457
  • HIRCIR IR remote control #1215
  • Klarstein Wonderwall Air Art IR panel heater #1390
  • Smartmi E1 air purifier #1477
  • Inna/Automat-On 7 channel underfloor heating controller #1348
  • QH-GD Elegant IR heater #1354
  • Evotherm ETI series pool heat pump #1357
  • Neatsvor X600 vacuum #1395
  • TH05 BLE temperature and humidity sensor #1395
  • Prosto PTC 2000 heater #1400
  • GraKit filament dryer #1418
  • Hombli radiator thermostat #1424
  • Becasmart BAF-908 watering device #1430
  • Air Housekeeper 6-in-1 air quality sensor #1461
  • Juskys OH125BW2 oil radiator #1361
  • Touchstone Sideline electric fireplace #1372
  • CNC YCB9ZF circuit breaker #1375
  • Haier Nayun combustible gas alarm #1396
  • Sonnenkonig Eco 700 IR panel heater #1404

Improvements to existing device configs

  • Moebot S: add lawn_mower support, deprecate vacuum workaround. #1068
  • Linkoze and Loratap remotes: add event support for buttons, deprecate binary_sensor workaround #1068
  • HU06, Bstuokey, Lucking, RL, Smardeer, Smart siren: add event support for doorbells, deprecate binary_sensor workaround #1068
  • BLE solar light, PIR spotlight: add event support for stateless motion sensors, deprecate binary_sensor workaround #1068
  • Moes star projector: move color switch to the backlight, and backlight switch to master #821
  • RGB LED strip: add compatible Panamalar Sunset lamp #1479
  • Bstuokey keypad: make doorbell optional #1152
  • Somgom single switch: add mappings for null initial state to avoid startup error #1487
  • TTEC vacuum: improve detection by making power and charge switches optional #1491
  • Smartplugv2 Energyv2: improve compatibility by making energy and calibrations optional #1409

General improvements

  • Support for the lawn_mower platform #1068
  • Support for the event platform #1068
  • Document the dps available for camera entities
  • Improved Russian translations #1477
  • climate: check for unit on all temperature related dps
  • avoid deprecation warnings in HA 2024.1 for empty supported features #1484
  • improve logging for config parsing errors #1487

2023.12.2: Farewell 2023

31 Dec 04:19
2023.12.2
17de71d
Compare
Choose a tag to compare

Highlights

  • Support for learning remote controls (provided the device is detectable - ie publishes some state always)
  • New language translations: Bahasa Indonesia, Urdu

New devices

  • YP pet feeder #1011
  • EARU energy meter circuit breaker #1188
  • Simple gate opener #1188
  • Simple door/window sensor #1188
  • Smart alarm siren #1188
  • Vivion air conditioner #1203
  • Klarstein Wonderwall IR heater #1272
  • Newone WF39M dimmer smartplug #1273
  • SX1 relay socket #1277
  • RGB-only light bar #1282
  • Hiper T3 bladeless fan #1283
  • TTEC Robi Pro vacuum #1284
  • Moes/Beca ZHT-002 zigbee thermostat #1295
  • M515 curtain motor #1306
  • Cleverio AD100 dehumidifier #1311
  • Klarta Stor2 air purifier #1365
  • Brilliant Quad powerstrip with USB #1386
  • Cleverio AR10/20 panel heaters #1397
  • Atorch AT2PL energy meter circuit breaker #1200
  • Argo Dry Pury Evo WF dehumidifier #1408
  • Hama radiator controller #1410 #1415
  • NAC AP470 air purifier #1413
  • Ustellar UT99911 RGB monitor light bar #1423
  • Eight channel relay switch #1433
  • Vivosun DE0003 dehumidifier #1441
  • Eeese Anna dehumidifier #1450
  • Loratap QCSC400ZB-V2 zigbee curtain switch #1454
  • Zigbee door sensor #1454
  • Arlec PA1123BKHA portable air conditioner #1460

Improvements to existing devices

  • Lublueblu vacuum: improve compatibility by marking optional dps #1378
  • Klarstein DryFy Pro: mark compatible with Morris Premier Plus #1358
  • Klarstein DryFy Pro: invert ioniser switch back to normal #1414
  • Parkside charger: improve compatibility based on device logs #1387
  • TOMPD 63LW: expose refresh_report dp as a button to allow polling sensors #1392
  • Inkbird sous vide cooker: temperature unit only affects display #1416
  • Loratap garage door: make timers into entities #1385
  • Inkbird BBQ4T v2: decode probe temperatures correctly #1439
  • Loratap curtain switch: handle null values separately #1442 #1448
  • Beok TGR81: make compatible with Avatto ME81 by marking some dps optional #1188
  • IR remote with sensors: add support for learning remote #203

General improvements

  • fan: use the percentage and preset_mode arguments to turn_on service #1381
  • Indonesian translations #1452
  • Urdu translations #1468
  • Support for remote platform #203

2023.12.1 fan hotfix

07 Dec 01:47
2023.12.1
69e90b0
Compare
Choose a tag to compare

Breaking changes

In a last minute change to HA 2023.12, the backward compatible fallback
for a previously unnoticed change to fan API was broken. HA may fix
this in a point release, but in case not, it is being fixed here. #1380

Details: some time previously (at least 2 years ago), the turn_on
service for fans was changed from a simple on/off to also allow
passing percentage (speed) and preset_mode parameters as part of the
turn_on command. This integration did not implement that, and instead
relied on the backward compatibility provided for that change. As
part of improved error handling, a wrapper function was added just
before the HA 2023.12 release to check the preset_mode parameter
before calling the real turn_on service. This new function is missing
the backward compatibility that used to exist, so requires fan
integrations to implement the new API.

This release adds the preset_mode and percentage parameters to the
turn_on method to avoid the errors in HA 2023.12 and get fans working,
however the parameters are ignored, so passing these parameters to the
turn_on service will not work in this release, it is still necessary
to use separate set_percentage and set_preset_mode service calls.
The next release will finish off the implementation.

2023.12.0 Ready for HA 2023.12

04 Dec 14:26
2023.12.0
c393f94
Compare
Choose a tag to compare

Breaking changes

HA 2023.12 changes the YAML parser in a way that breaks previous
releases of this integration. Please upgrade to this version before
upgrading Home Assistant if possible. If you already upgraded HA to
2023.12, then updating to this release will likely fix any issues you
are seeing as a result of that upgrade.

New Wifi devices

  • Petlibro PLAF103 pet feeder #1179
  • Eurom Hot-Shot 2000 #1286
  • Cecotec fan with light #1305
  • NX-100AP Rapid purifier #1312
  • Nedis PTC Ceramic fan heater #1338
  • Blitzwolf BW-LT31 LED strip #1314
  • Akai heat-pump clothes dryer #1266
  • Olimpia Splendid Caldo Up T fan heater #1296
  • Ferroli Titano water heater #1318
  • Valehaus SYZN119 towel warmer #1328
  • Soleusair A02/A10 air purifiers #1327
  • Della air conditioner #1331
  • Lublueblu SL60D vacuum #1334
  • ZX-DB11B doorbell alarm #1322
  • Fisher Summer air conditioner #1344
  • SmarDeer Lock33 door lock #1181
  • Thermex Lima 80V water heater #842
  • Beok TGM50 thermostat #1369
  • Breville Smart Dry Connect dehumidifier #1347
  • Qlima D820A dehumidifier #1189
  • ZM-WIFI smart meter #1208
  • Tesla Smart dehumidifier #1210
  • Modern Flames Orion fireplace #1247

Improvements to devices

  • Momcozy white noise machine: fixed matching of v2 devices #1299
  • Eurom Alutherm: improved compatibility #1315
  • AlecoAir D12/D16: seperate water tank from other faults #1232, #1233
  • ITS 45HD, Sendo, Vivax heatpumps: move aux heat to a separate switch #1331
  • MRC Magnum: improved compatibility #1279
  • Vivax heatpump: add optional dps from compatible Tadiran Apollo #1183
  • ZYM201: fix range of detection distance #1355
  • Blitzwolf BWSH5 humidifier: improved compatibility, added spray level control and fault codes #1220
  • Kogan LX10 vacuum: add more error codes #1363
  • Klarstein Dryfy Pro: move branding under products #1358
  • Arlec PB88UHA, Kogan tower heater, Kogan KAWFHTP heater: add product info #1243

General improvements

  • Bump tinytuya to 1.13.1 (should fix some protocol 3.5 issues)
  • Remove dependency on pycryptodome, as tinytuya now works with the same cryptography library as Home Assistant itself.
  • Deprecated aux heat, in line with HA 2023.9 UI changes #1331
  • Added translation for displayoff preset for fans #1327
  • Added more Hungarian translations #1188

Development improvements

  • Improve test output when failing due to dps value mismatches
  • Clarify requirements for reporting new devices in issue template - due to increasing volume of requests, low quality submissions cannot be accepted