Skip to content

Releases: make-all/tuya-local

2025.12.2 Migrating to a better place

15 Dec 14:30
2025.12.2
1c19e26

Choose a tag to compare

Highlights

  • this release drops previously incorrectly migrated entries and lets them be recreated again automatically to avoid duplicate entry errors.

New devices

Improvements to existing devices

  • earu_eaemp3c100_energymeter: add compatible EARU EASEM-G product #4089
  • calibo_smart_ceiling_fan: add compatible Faro product #4135 by @george-oniceag
  • atorch_s1bw_smartplug: add missing lvp warning #4139
  • smart_led_strip: uninvert color_temp dp #4141

2025.12.1 Identity crisis

13 Dec 05:36
2025.12.1
92c2aba

Choose a tag to compare

Highlights

  • a long time problem with migration creating duplicate entries is fixed
  • 5 new devices, improvements to 12 others
  • improvements to vacuum state, and sensor precision

Breaking changes

  • Some heater preset modes have been changed to low/medium/high (with translations) to better match the underlying modes

New devices

Improvements to existing devices

  • cecotec_readywarm2000max_heater, kogan_kasmgphXXXX_heater, livn_arosa_fireplace, semptec_zx7007_heater: use low/medium/high presets instead of eco/comfort/boost or some custom presets. #1708
  • petree_cube_litter_box: Use light for indicator, add dump sand button and cleaning binary_sensor #4103 by @PurpleFries
  • miro_qtower_humidifier: use correct preset for middle #4107
  • ilife_a30_pro_vacuum: invert activate dp #4109
  • electriq_pd45e_dehumidifier: swap laundry and purify presets, add tank full sensor #4104 by @charlesomer
  • smartplugv1: Add compatible HYS-U1S-13A product #4104 by @charlesomer
  • atorch_dt20_energymeter: mark data refresh interval optional #4092
  • tongou_toqsyswt_breaker: expose real-time update button #3480
  • cecotec_congas1970_vacuum: add missing modes, mop life and reset #4127 by @malkavi

General improvements

  • translations: add low, medium, high presets for heaters #1708
  • vacuum: reflect docked status in state #4123 by @MIKOLAJW197
  • sensor: default precision according to scale #4119
  • migration: fix incorrect unique ids due to earlier change in HA config entry handling #4130

Development improvements

  • use correct test fixture loop scope to avoid warnings
  • avoid pycares-5.0.0 disruptive upgrade that breaks tests
  • install libjpeg-turbo to test container to avoid breakage on camera tests

2025.12.0 Turn on the Christmas lights

07 Dec 08:46
2025.12.0
178aeec

Choose a tag to compare

Highlights

  • improvements to lock, light, climate, button and siren platforms
  • 20 new devices, improvements to 22 others, plus across the board improvements to many mode
  • new translations for mode selects and (audio) volume number entities

Breaking changes

  • weekit_kettle: removed the separate switch which was replaced by the water_heater entity's operation_mode in June 2025.
  • select entities for mode (and some variations of that name) are now split by category into "kettle_mode", "light_mode", "mode", "activation_mode", "bidet_mode", "curtain_mode", "chlorination_mode", "alarm_mode", "air_mode", "cleaning_mode", "washing_mode", "menu", "charging_mode" and translations provided.
    • due to the extent and non-consistent nature of these changes, migration is not possible and automations, UI etc will need updating manually.

New devices

Improvements to existing devices

  • ledvance_smart_plabl100x25b: improve light availability #4024
  • depuley_smart_ceiling_fan: split CCT and RGB lights #4024
  • keyun_rgb_ceilingfan: split CCT and RGB lights #4024
  • orison_chanfok_neo_fan_light: split CCT and RGB lights #4024
  • miheat_th11wf_thermostat: add boost countdown, fix energy scale #4021 by @flow-c
  • advwin_6l_petfeeder: add compatible papifeed product #4038 by @Juniewicz
  • rgbled_garland: add Moes and Lampoteka products #4028, #4030
  • electriq_cd12pro_dehumidifier: added child lock #4036 by @steaura
  • loonas_curtain: add compatible Nordice product #4018
  • electriq_cd20pro_dehumidifier: add compatible CD12Pro-LE model #4029
  • eeese_carl_dehumidifier: add defrost binary sensor #4059 by @yurgh
  • immax_neolite_weatherstation: match Raddy WF-120P without reports from outdoor unit #4041, #4047
  • homvana_h111s_humidifier: add another product id #4062 by @emrikol
  • vine_tj550_thermostat: make sleep switch optional #4064
  • etop_ht_thermostat: add compatible BVF 801 thermostat #4079
  • zemismart_spm02d2tw_energymeter: correct energy sensor #4081
  • ipengen_goe3116a_evcharger: shuffle energy dps #4057
  • aeratron_ae3plus_fan: add compatible XCWIIE fan with light #4085
  • daizuki_heatpump: modernize and add compatible TCL AirMax #4051 by @jaredhobbs
  • ilife_a30_pro_vacuum: rework start and pause functions #4086
  • vonroc_wifi_heater: support new firmware preset modes #4094 by @danyrd92
  • raykube_a1promax_lock: make compatible with Raykube A1 Ultra #4096
  • dishwashers: standardize mode select options
  • multiple devices: disable factory reset buttons by default
  • various devices: standardize and translation mode selects #1708
  • various devices: translate volume number entities #1708
  • many device configs improved to match the new schema for AI agents

General improvements

  • buttons can now be marked as diagnostic (for new HA identity class in HA 2025.12) #4020
  • siren tone is no longer overwritten by turn_on actions when it does not need to be. #4048
  • lock unlock by code no longer includes the admin flag, based on observed behaviour of actual locks #4013
  • light: set the light's minimum range without scaling when the request is for a brightness of 1 #4060
  • climate: allow precision to be specified for current_temperature #4051

Translation improvements

  • Select entities for selecting modes of various types are translated #1708
  • Number entities for controlling volume (audio) are translated #1708

Development improvements

  • added AGENTS.md files to help AI agents understand the code layout and how to create correct config files
  • added "util/entities.py", for finding configs containing matching entities to help with translations and other uses #1708
  • output file and line info from test_device_config.py, to help surface errors in PRs.
  • eliminate warnings about async test fixtures not awaited and event loop scope

2025.11.2 Redirectioning

23 Nov 12:59
2025.11.2
c178e45

Choose a tag to compare

Highlights

  • 14 new devices, improvements to 11 others
  • new translations for Do not disturb switches, Minimum and maximum temperatures

Breaking changes

  • Minimum and Maximum temperature entities have been standardized for translation. Some devices that used different naming have been migrated to the standard names, but some manual updates may still be required.

New devices

  • EASTtime D401 water purifier #3954 by @edwinyoo44
  • Amenzo dishwasher #3935
  • Intaflo Intabloc air-water heat pump #3936
  • WarmeHaus Thermostatic towel rail heating element #3946 by @dtaylor7
  • Homvana H111S humidifier #3940
  • FeelNeedy P-LFP01 camera pet feeder #3949
  • HHC AM68 curtain motor #3968
  • Zemismart SPM02-D2TW 3-phase energy meter #3984 by @emcyaman
  • dLuft Smart Flow ventilation fan #3986
  • Cecotec ReadyWarm 2000 Max Box ceramic heater #3991
  • Prism+ Oasis Pro ceiling fan with RGBCCT light #3997
  • TW-12W relay board #3007
  • Aktobis DHW-870FW dehumidifier #3172
  • Geyserwise MWS water heater #3544, #3971 by @Waz-Cpt

Improvements to existing devices

  • neopower_heat_pump_water_heater: correct performance mapping #3975 by @banemonster
  • dewin_kws306wf_energymeter: add support for Komsi model #3987
  • immax_neolite_weatherstation: add outdoor battery and wind direction sensors #3963 by @veista
  • lehmann_lhohc2013c_radiator: add compatible Jocel JCT007452 heater #3994 by @DavidRomao
  • dewall_evcharger: fix stop button #4001 by @dbeinder
  • afveev_16a_evcharger: add support for 3-phase models #4010 by @gec75
  • fanco_ecositentdeluxe: add preset_mode, other fixes #4012 by @brendanlees
  • lscsmartconnect_videodoorbell: add compatible 1296P-BT #3983
  • quad_powerstrip_usb: add text entities for advanced config #3998
  • mirabella_genio_usb: add compatible Merkury smartplug #4003
  • simple_six_switch: add optional timers #4002

General improvements

  • fix value redirection when used directly in mapping without conditions #3987
  • translations for Do not disturb switches, Minimum and Maximum temperature number entities #1708

Documentation improvements

  • add notes about lock codes to README #4013

Development improvements

  • improve test coverage for value redirection #3987

2025.11.1 Hotfix

11 Nov 14:13
2025.11.1
85f0cd7

Choose a tag to compare

  • fix an issue in PR #3929 that caused some devices to fail initialization due to a runtime error

2025.11.0 SΓ€ker upplΓ₯sning

Highlights

  • Support for unlock codes for BLE locks
  • Swedish translations
  • improved sub device stability
  • support for setting multiple masked values in a dp at once
  • 14 new devices, improvements to 22 others (excluding naming changes)

See the Releases section on github for full 2025.11.0 release notes.

2025.11.0 SΓ€ker upplΓ₯sning

11 Nov 10:18
2025.11.0
fa22b3a

Choose a tag to compare

Pre-release

Highlights

  • Support for unlock codes for BLE locks
  • Swedish translations
  • improved sub device stability
  • support for setting multiple masked values in a dp at once
  • 14 new devices, improvements to 22 others (excluding naming changes)

New devices

Improvements to existing devices

  • cc_curtain: fix numeric string quoting for control options
  • earu_k6h3aw_thermostat: support K6RH variant #3898
  • zx_g30_alarm: add compatibility with Tugard model #3911
  • catit_pixi_water_fountain: add sensors #3909 by @FrederikM97
  • ipengen_goe3116a_evcharger: use alternate dps for many sensors #3847
  • andersson_gsh_heater: constrain temperature in anti-frost mode #3924 by @CCCowley
  • catit_pixi_smart_feeder: add plug binary_sensor #3939 by @fbesserp
  • ems_waterheater: include current_temperature in water_heater #3937 by @Waz-Cpt
  • probreeze_pbd23w_dehumidifier: add Rohnson model #3938 by @AverageJoe89
  • BLE locks: enable code unlocking and expose other advanced config options #1921
  • fararo_pet_feeder: fix battery sensor #3957 by @bvweerd
  • earu_k6h3aw_thermostat: fix hysteresis step #3958 by @MiguelDomingues
  • atorch_dt20_energymeter: improvements to some entities #3868

General improvements

  • setting multiple masked values in a single dp now combines them instead of overwriting #3902
  • Swedish translations #3930 by @FrederikM97
  • improved syncronization of sub devices sharing a hub #2289 #3929 by @darchons
  • Standardize all device naming to be unbranded to serve as a good example for new contributions
  • Standardize all entity naming to follow HA case conventions to serve as a good example for new contributions
  • lock: support remote code unlocking (following Tuya BLE lock docs) #1921

Development improvements

  • add a script for prioritizing translations #1708

Documentation improvements

  • new device template: lower the priority of low quality AI generated PRs
  • new device template: highlight the non-support of battery powered WiFi devices #522
  • README: add caution on dual power devices that act like battery powered even when powered
  • avoid implication that dp_id should literally appear in device info. #3921

2025.10.1 Struny Czasu

29 Oct 10:06
2025.10.1
d897cf5

Choose a tag to compare

Highlights

  • time now supports strings as well as separate integers
  • human reviewed Polish translations instead of AI hallucinations
  • 20 new devices, improvements to 15 more

New devices

Improvements to existing devices

  • Avatto WTR20R thermostat: fix manual override type #3857
  • Powerworld PW040 water heat pump: swap air and water temperature #3851
  • Madimack Eco 9kW heat pump: remove unsupported HVAC modes #3861 by @mjens118
  • Moes dual dimmer: support compatible Avatto DMS16-W2 #3841 by @itsthegs
  • EARU DPN circuit breaker: fix power unit #2300
  • Spa Electrics light controller: make zone names optional #3869
  • Feyree EV portable charger: drop RFID switch to improve compatibility #3860
  • Blitzwolf BW-LT31: add compatible Huwaile Direct model #3818
  • Loonas curtain: make position optional to improve compatibility #3872
  • RecTeq RT-700 grill: add more entities #3882
  • Inkbird ITC306A thermostat: add compatible v4 variant #3876
  • Ledvance Smart PLABL100x35B: add compatible Annaror light #3883
  • Catit Pixi smart feeder: add support for 43752 variant and extra entities #3889 by @colin-nolan
  • Klarta Stor 2 purifier: add missing air quality levels #3839 by @kjpg99
  • Klarta Forste 4 purifier: add missing speeds and Auto preset select #3839 by @kjpg99

General improvements

  • time: allow hours, minutes and optionally seconds in one string dp. #3821
  • improvements to AI generated Polish translations by a native speaker #3839 by @kjpg99

Documentation improvements

  • Improve security reporting instructions

Development improvements

  • run full tests when requirements-dev.txt is updated #3874
  • run translation tests when translations and icons are updated #3839

2025.10.0 The Lone Ranger

16 Oct 14:28
2025.10.0
66a2a79

Choose a tag to compare

Highlights

  • improvements to time robustness
  • new ways of defining variable ranges
  • 21 new devices, improvements to over 20 existing devices

Breaking changes

  • Tongou QCB2 Single Phase Breaker: deprecated switch for live updates has been removed, use the button instead, which does not require toggling
  • Circuit breakers: "... action" config entities are renamed and the options standardised to use breaker_trigger_action translations. There is no migration for this change, so you may need some manual cleanup of no longer provided entities.
    Standardized options introduced in the previous release are now ignore, alarm and trip_breaker.

New devices

Improvements to existing devices

  • Sundream LC Series Chlorinator: support LC300 #3779
  • Dual power monitoring smartplug V2: support SmartKnight ML Knightbridge #3781 by @ip1464
  • Breville AirRounder Plus heater: separate into fan and heater #3582
  • Lytmi HDMI sync backlight: improve color_temp handling in Pure scene #3794
  • Madimack Elite V4 heatpump: use correct current_temperature, filter presets #3795, #3789
  • Madimack Elite heatpumps: use pool_heatpump translation key, heat_cool #3795
  • Axen KS100W heat pump: match hvac_action correctly and add sensors #3810, #3812
  • Loonas curtain: add compatible Mijw curtain #3831 by @justinwyq
  • Somgom single switch: add compatible Outsmart 40A switch #3831 by @justinwyq
  • Simple dual switch with timer: add compatible Outsmart ZS3LCBCIO #3831 by @justinwyq
  • Smartplug V2 Energy V2: add compatible Aziot product #3828
  • devices using micro sign updated to use Greek mu per HA 2025.8 change

General improvements

  • device config: range overriding in mapping without conditions is now working #3779
  • time: cast time components to integer before using #3565

Documentation improvements

  • document "Auto" for IP address in the advanced setup instructions #3796

Development improvements

  • run full test suite on dependency updates

2025.9.1: Deprecieri silenΘ›ioase

28 Sep 12:56
2025.9.1
05826ac

Choose a tag to compare

Highlights

  • Deprecated entities are only reported once if enabled, and not reported if disabled.
  • added Romanian translations
  • 21 new devices, improvements to 16 existing devices

Breaking changes

  • Deprecated binary_sensor (window) removed from ZC34T-03-3A swing arm opener (use cover state instead)
  • Deprecated number (timer) removed from Bonaire heater (use select entity instead)
  • Removed SMS notification switch from Staniot alarm panel to resolve compatibility between models

New devices

Improvements to existing devices

  • Feyree EV portable charger: let current go down to 6A #3697
  • Madimack Elite V4: redirect 0 current temp to inflow #3412
  • Breville AirRounder Plus heater: reverse and merge fan speed and heat presets #3582
  • BLE water valve: add SOP10 manufacturer, hide unavailable weather #3718 by @trasbd
  • Airrobo P20 vacuum: differentiate statuses, standardise commands #3714 by @witulu
  • M515 curtain motor: don't use action, invert positions #3730
  • SolarEast Aurora 2 heatpump: change dry to heat_cool for eco mode, fix current temperature and improve detection #3751 by @paulklinkenberg
  • Vaco Moby Blue heatpump: disable unavailable modes, avoid multiplexed commands which the device does not handle #3729
  • CPVAN CP2W alarm panel: add push message event #3746
  • Dewin KWS306WF energy meter: make energy sensor dashboard ready, convert run time number to sensor #3762 by @LuckyG3000
  • Klarstein WonderWall 600 IR heater: support compatible Electriq Far IR Carbon #3672
  • Staniot Smart security panel: add compatibility with XA-H502 model #3655
  • Lytmi HDMI sync backlight: improve FancyLEDs support #3664
  • LSC PTZ camera: add compatible Merkury CW035 camera #3721
  • KRain KRX8 irrigation controller: add more entities #3738, #2569
  • Moes motion sensor light: add compatibility with ZG-204L #3019

General improvements

Development improvements

2025.9.0: Join the fan club

07 Sep 11:40
2025.9.0
6ed389a

Choose a tag to compare

2025.9.0: Join the fan club

Highlights

  • 22 new devices including 5 new fans, improvements to 12 others

New devices

  • Revesien Q-Pro-W aroma diffuser #3540
  • Eberg Fyn tower fan #3553
  • Cecotec Conga 1970 robot vacuum #3653 by @malkavi
  • Klarstein Wonderwall 600 IR heater #3560
  • Komeco QC60 heat pump #3618 by @pbassut
  • Living Comfort LC310S twin window fan #3566
  • Moes WCM-P52 v2 PTZ indoor camera #3541
  • Dyras TF-16WIFI tower fan #3574
  • Petwant F13-W pet feeder #3580
  • Breville AirRounder Plus purifier/heater #3582
  • Tongou SA1 energy meter #3665 by @Dead96
  • Dream of You dual dimmable lamp #3668 by @danps1
  • Tolviviov alarm panel #3354
  • Aziot 4 gang switch #3603
  • Aziot fan modular switch #3604
  • Ampbolt level 1/2 portable EV charger #3605
  • Yijingkc 284-8 ceiling fan #3626
  • Herschel Select XLS bathroom mirror #3629
  • Goldair GGK1000 kettle #3670 by @ashabala
  • Steinback Silent Mini heatpump #3690 by @Wakinyan
  • Advwin 6L camera pet feeder #3630
  • Moes 1-outlet water timer #3639

Improvements to existing devices

  • RGBCW lightbulb: add compatible Laser E14 5W bulb #3645
  • Trotec PAC-W heatpump: add compatible Qlima WDH-229-PTC #3595
  • Moebot S Mower: add backward blade stop entity for newer firmware #3659 by @tribut
  • PC473 3-phase monitor: fix status type #3575
  • Aeno EK7S kettle: add compatible Kogan kettle #3578
  • Staniot smart security panel: add compatible variant #3692 by @pokos
  • Doel TIplus litter box: add missing entities, correct others #3679 by @valdenny
  • Zigbee smart bulb: add support for Kojima GU10 bulb #3600
  • HY combo heat pump: improved compatibility #2510
  • Feyree EV chargers: allow current down to 6A for all 16A and 32A models #3697
  • Welltobe cat feeder: add meal plan entity #3702
  • LSC Smart Connect camera pet feeder: expose meal plan as entity

General improvements

  • entity: improved entity identification in deprecation log message

Documentation improvements

Development improvements