Skip to content

Releases: make-all/tuya-local

2026.1.1 hotfix

12 Jan 13:45
2026.1.1
7683328

Choose a tag to compare

Fixes a migration issue in 2026.1.0.

2026.1.0 Behind the mask

12 Jan 08:24
2026.1.0
aa07b52

Choose a tag to compare

Pre-release

Highlights

  • masked integer support is now available
  • 30 new devices added
  • improvements to over 20 existing devices
  • translations continue to be expanded

Breaking changes

  • number entities for 24h minute and second timers were deprecated in 2025.07 and have now been removed. Use the time entities instead.
  • madimack_elite_v3_heatpump_updated: fault code sensor was deprecated in 2025.07 and has now been removed, use the problem binary_sensor instead.
  • asip_0622_planter: humidity sensor was deprecated in 2025.06 and has now been removed. Use moisture sensor instead.
  • beok_tr9b_thermostat: the valve binary_sensor was deprecated in 2025.06 and has now been removed. Use climate hvac_action instead.
  • devices using sensors with variations on "Filter life" have been standardized to use the new translation. Migration is provided, but some references may need updating, especially if you configure automations with yaml.
  • devices using select entities with variations on "Motion sensitivity" have been standardized to use the new translation. Migration is provided, but some references may need updating, especially if you configure automations with yaml.
  • primary_entity and secondary_entities tags were deprecated in 2025.01, and support has now been removed. Config files should be using a single entities list by now.

New Devices

Improvements to existing devices

  • meaco_aretetwo_dehumidifier: add 18L and 20L variants #4224, #4298
  • arcelik_ahphmm_comboheatpump: split defrost sensor for hot-water only mode #4200
  • beok_tgm50_thermostat: add compatible Avatto WT410 #4138
  • casdon_kg1_waterdispenser: set units correctly #4231
  • minib_public_litterbox: add compatible MiniF #4167, #4229 by @Permanently
  • neo_coolcam_siren: add compatible Neo siren #4236
  • steinbach_solid_4.3_heatpump: add fan speed sensor #4221 by @jarivanb
  • zigbee_smart_bulb: add optional power memory config entity
  • simple_dual_switch_timer_v2: extend with config entities #4233
  • powerworld_pw58410: extract temperatures as signed #4268
  • truelife_air_purifier_p3: support compatible GMC AP300 #4281 by @kabous1
  • tongou_sa1_wifi_energy_meter: add frequency unit #4288
  • af3w_petfeeder: support compatible Balimo model #4209
  • ble_pulido_p13_lock: fix lock delay dp id #4250 by @square-spade
  • weeket_kettle: support KE4071TB model #4290
  • smart_multi_plug_4t_4usb: support Marmitek Power LI3 #4155
  • nine_ev_charger: limit current to 32A
  • kogan_glass_1_7l_kettle: support another model #4173
  • feit_dimmer: add compatible Moes dimmer #4280
  • konlen_wf72tt_dualtempcontroller: remove class from differential sensors #4182

Translation improvements

  • water_heater: introduce a hot_water translation key #4231
  • activation_mode, timer: add more options #4210
  • fan_with_presets: auto, manual, program presets added #1708
  • ventilation: manual preset added #1708
  • sensor: introduce filter_life translation #1708
  • select: introduce motion_sensitivity translation #1708

General improvements

  • water heater: handle missing operation_mode better #4231
  • masked values are now supported for integer dps in addition to base64 and hex #4220 by @baronorder

Documentation improvements

  • config_flow: update links for manual config instructions #4232
  • document mask_signed that has existed for some months #4268

2025.12.3 Auld lang syne

31 Dec 03:21
2025.12.3
ba13b9e

Choose a tag to compare

Highlights

  • valves can now use the predefined name translations from HA
  • 22 new devices, improvements to 16 new devices

Breaking changes

  • manual feed number entities and flip image switches are now using translations. Some similarly named entities were also changed to use the new translations and migrated to the standardized entity id. Check any automations and UI customization involving these entities, to ensure the migration has been effective, particularly if you have yaml based automation or customizations which cannot be migrated automatically.

New devices

Improvements to existing devices

  • isparkle_rgb_ledcurtain: add compatible Mirabella Genio string #4148
  • alen_45i_airpurifier: improve compatibility for V1.5 variant #4154
  • smartplugv2_energy: improve compatibility for ZhiYun P01 #4181 by @KSVl
  • ilife_a30_pro_vacuum: improve activation and pause behaviour #4179 by @MIKOLAJW197
  • ovlaim_ceiling_fan_light: add compatible Prism+ Oasis #4157, #4180 by @sbycrosz
  • earu_eamp3c100_energymeter: fix frequency scale #4194
  • alecoair_pu55_humino: invert light switch #4196 by @george-oniceag
  • miheat_th11wf_thermostat: add more config entities #4189 by @flow-c
  • beca_bhp6000_thermostat_mapped: use target_range instead of discrete mappings
  • fairland_iphcr15_heatpump: use pool_heatpump translations
  • poolex_qline_heatpump: use pool_heatpump translations
  • inkbird_sousvide_cooker: fix icon priorities
  • moebot_s_mower: fix icon priorities
  • mrc_magnum_floorheater: make dp 2 properly optional #3268
  • doel_ tiplus_litterbox: improve compatibility for 65L variant #4117
  • vt_14in1_airquality: fix scale on HCHO and TVOC sensors

General improvements

  • valve: force use of HA class translations #4126
  • translations: add flip_image switch translations #1708
  • translations: add manual_feed number translations #1708

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