Skip to content

Releases: make-all/tuya-local

2026.8.0 Closing time

Choose a tag to compare

@make-all make-all released this 09 Aug 13:30
2026.8.0
7ccb9cf

Notice

Pull requests are temporarily unavailable to allow development to catch up with the queue that is already there. Users are kindly requested to respect the developers' time management needs, and not have your AI bots submit issues in lieu of PRs at a continually accelerating rate while the quality of the codebase deteriorates.

Highlights

  • better brightness scaling for lights
  • two new virtual protocols 3.42 and 3.52 for handling "device22" 3.4 and 3.5 devices without compromising the stability of 3.4 and 3.5 devices that do not need "device22" detection to function.
  • more reliable reloading of reconfigured devices
  • locally discovered devices can now use the cloud QR login to discover local keys
  • valves now report current position and can use a separate dp for that
  • water heater away mode is back to working as designed
  • subdevices no longer risk id collisions if there are multiple hubs that allocate sub ids sequentially in the network
  • 25 new devices, real improvements to over 22 more, and discovery improvements to 40 existing configs

Breaking changes

  • numeric timers deprecated since 20 January have now been removed completely. Use their time equivalents.
  • protocol 3.4 and 3.5 no longer auto-detect "device22" devices. Use the new fake protocols 3.42 and 3.52 instead if you need this.
  • the auto updating of IP addresses that was added in last release has been disabled due to side effects.

New devices

Improvements to existing devices

  • afyeev_16a_evcharger: expand range of current and power masks (#5647 by @sev3ran)
  • airquality5in1: correct VOC scale (#2932)
  • atorch_at4ptw_thermostat: correct energy sensor config (#5678)
  • create_fan_light_dimmable: add optional sound switch (#1791)
  • divoo_wt05: make 4 day timer usable and reverse operations (#5718 by @jeremyames-gmail)
  • eberg_qubo_q40hd_heatpump: handle Q40NE reporting cooling as heat_s (#5754 by @Ferszus)
  • fisher_summer_airconditioner: fixes to switch and feature flag allocation (#5845)
  • hydrotherm_dynamic_x8_water_heater: allow changing temperature (#5820)
  • koenic_ktm_kettle: add operation mode (#5661 by @Anzic23)
  • ledvance_smart_plabl100x25b): expose dp 28 control as text
  • moebot_s_mower: move parkside wifi product details back here (#5653 by @nima-1102)
  • madimack_inverflow_pro: don't filter AI availability by pump flow units (#5636)
  • minoston_timer_switch: make active timer selectable (#5724)
  • oscal_powermax2400pro_portablepower: additional options and entities (#5658 by @linedot)
  • parkside_bluetooth_mower: show docked in standby rather than paused (#5633 by @nima-1102)
  • petoneer_fresco_ezgo_petfountain: add water level low sensor (#5663 by @K900)
  • qtfv3_3_airquality: (#5629 by @erewego)
  • remora_heatpump: use translation provided icons
  • tongou_towsmr120rcbo_breaker): follow file naming convention, deduplicate naming
  • turbro_75000btu_poolheatpump: support Sukflow feature variant with same product id (#5607 by @msemenkin)
  • vevor_evcharger: add measurement class to power sensor (#5630 by @alexandrebelloni)
  • vine_tj550_thermostat: make per hour sensors optional (#4064)
  • too many to mention: added state class: measurement to voltage, current, power, temperature sensors that did not have it, removed diagnostic category from many (#5664)

Improvements to product info

General improvements

  • light: exclude 0 from brightness scale when used to turn off (#5218 by @Zuz666)
  • device comms: allow more retries for protocol 3.22 (#5719)
  • device comms: add fake protocols 3.42 and 3.52 for explicit device22 detection in 3.4 and 3.5 devices (#5697)
  • config_flow: config entries are now reloaded after option changes to ensure changes are picked up (#5775 by @mvanhorn)
  • discovery: don't report hub product ids for sub devices (#5700)
  • valve: report current_valve_position correctly, and allow a separate dp for reporting (#5720 by @larstobi)
  • water_heater: correctly report away_mode when it is combined with operation modes (#5814)
  • config_flow: include hub device_id in subdevice unique ids (#5842 by @nitaybz)
  • device comms: ensure devices show as offline when receive loop terminates (#5848)
  • config_flow: allow cloud to be used together with local discovery (#5635)
  • discovery: temporarily disable IP updates (#5713)
  • migration: migrate device entries to maintain subdevice integrity (#5849 by @Rotary89)

Documentation improvements

  • when product_id is missing from config, change advice to only report EXACT matches (#5625)
  • add a template for reporting additional product ids
  • improved agent instructions for creating new configs (#5617 by @mathieupotier)
  • document current_position for cover entities

Development improvements

  • cleanup removed deadlock code from entity implementations
  • test framework bumped to last 2026.8 beta #5710 by @dependabot
  • improved protocol variant testing
  • uv bumped to allow 0.12 (#5781 by @dependabot) and minimum 0.11.25 to match HA 2026.7.0
  • discovery.py moved out of helpers to match other integrations

2026.7.2 The Diary Of Horace Wimp

Choose a tag to compare

@make-all make-all released this 18 Jul 07:10
2026.7.2
b3da40d

Highlights

  • support for local device discovery for new device detection and IP address updating
  • continued improvements to connection stability and performance
  • support for humidity step in humidifiers, which was quietly added to HA 2026.2
  • 32 new devices supported, improvements to over 30 others

Breaking changes

  • deprecate duplicate sensors in old configs - some configs had duplicate sensors of climate and humidifier measurements, these have been deprecated and will be removed in a future release.

New devices

Improvements to existing devices

  • idra_skiv_airconditioner: Add self-clean (#5512) by @romainsc
  • petlibro_camera_feeder: expose feeding schedule as writable meal plan (#5517) by @kcgthb
  • imeter_3pn_energymonitor: restore units (#5469)
  • leos_loo_too: fix weight scale, decode notifications, add MEET variant (#5488) by @algrym
  • mppt_4048_solarcharger: add support for compatible HM-6069 (#5500) by @mvarliero-lab
  • daizuki_heatpump: handle C version. (#5521) by @virtualas10
  • simple_dual_switch_timer_v2: support Moes House Dual Zigbee socket (#5523) by @marciogkohls
  • olight_ostation_2_battery_charger: Add Li-ion chemistry decoding (#5543) by @ProZsolt
  • milano_ceiling_fan: extend presets, timer, speed (#5530)
  • hunterbk_hf6602t_doorbell: add M18 model (#5538) by @hudsonbrendon
  • idra_skiv_airconditioner: Add horizontal swing (#5540) by @romainsc
  • cleanup (multiple configs): deprecate duplicate sensors in old configs (#5548)
  • mustool_mt15mt29_airbox: improve compatibility for MT13 (#5560) by @LinusIta
  • brandson_a307362x3_fan: add optional ionizer (#5550) by @chrRtg
  • woods_mrd25gw_dehumidifier: support MRD20GW (#5559) by @AlexNaga
  • bht002_gblw: map Warming hvac action to idle (#5576) by @rippe77
  • bcom_intercom_camera: add compatible 5Tech Versus One (#5544)
  • rgb48_lightstring: move color_mode to effect (#5591) by @starfire0606
  • starlight_heatpump: avoid starting options with numbers (#4981)
  • tompd_63lw_breaker: add 63SW label and V/A/W measurement state class (#5571) by @awadak3davra
  • zyhps01_human_presence_sensor: support 2.4G variant (#5513)
  • pureborne_htf1001_towerfan: support Flanur HTF1003 model (#5584)
  • kaisai_proheat_airconditioner: use timestamps for energy sensor (#5579) by @camel1cz
  • lscsmartconnect_partystring_light: support compatible IllumiX Eave lights (#5575) by @TN-1
  • madimack_elitev4_heatpump: ignore device flag for displaying power (#5590)
  • mrpure_saltchlorinator: add compatible Aquark InverClear (#5609) by @P-Gardener
  • vevor_selfcleaning_litterbox: add compatible Hazrela model (#5598)
  • pir_spotlight: "Standby bright" is a brightness, not timer (#5602)
  • mustool_mt15mt29_airbox: add another product id for MT13W (#5156)
  • electriq_airflex15w_heatpump: add almost compatible OBI KGM 12000-58 (#5565) by @mrhund

General improvements

  • Device config: extend conditions to match bits in bitfields
  • Humidifiers: report target_humidity_step (#5597)
  • Protocol support: Include the device error code in connection failure logs (#5525) by @com6056
  • Protocol support: enable "device22" auto-detection on protocol 3.4 and 3.5 (#5499)<
  • Protocol support: speed up heartbeats (#5136)
  • Discovery: auto-update device IP via active Tuya LAN rediscovery (#5532) by @neneonline
  • Discovery: log unmatched product ids for configured devices (#5573) by @neneonline
  • Discovery: discover new Tuya devices on the LAN (#5605) by @neneonline

Translation improvements

  • Ukrainian: fix syntax error

Development improvements

  • maint(climate): remove obsolete deprecation avoidance
  • maint(fan): remove obsolete deprecation avoidance
  • ci: add workflow to label PR size
  • dependencies: bump pytest-homeassistant-custom-component (#5583)
  • debug logging: add logs to all paths that deliberately close connections (#5347)

2026.7.1 Round and round you're turning me

Choose a tag to compare

@make-all make-all released this 07 Jul 22:27
2026.7.1
fbbd5bb

Hotfix

  • invert in conditions was mishandled, leading to incorrect values reported for some devices #5520

2026.7.0 Upside down you're turning me

Choose a tag to compare

@make-all make-all released this 07 Jul 14:36
2026.7.0
5675d4d

Highlights

  • device communication: avoid disconnecting when data is sent, will probably fix a lot of disconnection issues, and delays.
  • Support for invert being set conditionally
  • Support for 23 new devices, improvements for over 30 others

New devices

  • Elechico / Chico CCIB001-CC1177D ice bath heat pump controller (#5501)
  • Kibernetik 12K portable split air conditioner (#5452)
  • Fakro ARZ Wi-Fi roof blind (#5503)
  • EcoNour 42" tower fan HTS-F305A (new) (#5474)
  • HOM Chernobyl Humidifier (#5478)
  • Haozee 12 zone sprinkler controller (#5484)
  • Olight Ostation 2 (#5442)
  • Laresar L6 NEX robot vacuum and mop (#5421)
  • Chigo air conditioner (jqfsu2e8pvpce5ra) (#5414)
  • Varin VA-002 ceiling fan light (#5455)
  • Vibrix Dryflow 12 Pro dehumidifier (#5433)
  • Fercofloor FT2C10V fan coil (FC-WIFI-0-10V EC) (#5443)
  • Qlima MS-AC 5002 portable air conditioner (#5407)
  • Teploluxe MCS350 thermostat (#5420)
  • Beokeo S20Pro litter box (#)
  • Parkside PBBA smart water timer (#5472)
  • Tervix Pro Line WiFi thermostat (#5450)
  • Point PODH20 dehumidifier (#5444)
  • Rojeco PAF-186B 2L single pet feeder (#5422)
  • Hauslane IN-R110 range hood (#5423)
  • Meaco Cirro Air Conditioners (#5438)
  • HomCom 6-speed tower fan (#5264)
  • Lidl Tronic Solarstromspeicher (Marstek Saturn B2500) (#5457)

Improvements to existing devices

  • yidi_fan_light_switch: support non-light variant
  • curtain_with_feedback: support QS-WIFI-S10-C04
  • fisher_summer_air_conditioner: add compatible Rotenso Teta (#5504)
  • meaco_cirro_airconditioner: add Cirro+ 16000 BTU cooling only (#5502)
  • stirling_fs140dc_fan: add compatible Arlec APDC160WHA
  • temprium_pac011_airconditioner fahrenheit/celsius confusion bug (#5493)
  • windcalm_fan_with_light: add compatible Forlight Nere fan
  • feyree_lion_evcharger: scale all sensors by 10
  • loonas_curtain: do not invert direction when reverse is set
  • meaco_cirro_airconditioner: add compatible Temprium model
  • fix cover state stuck on opening/closing when motor settles near target (#5483)
  • Kogan air conditioners: comment out invalid product details
  • LEDVANCE light (#5464)
  • lindasmart_7s_doorbell: add compatible Genio 3MP video doorbell
  • duux_blizzard_portable_aircon: add compatible Klarstein Eco Smart 11
  • imeter_3pn_energy_monitor: use more frequently updated phase sensors. (#5469)
  • locks: dp 47 motor_state seems to be inverted
  • windcalm_fan: hide sound switch when unavailable
  • add 'near' movement state value to ZG-205W mmWave presence sensor (#5465)
  • klarstein_iceblock_airconditioner: make timer optional
  • klarstein_iceblock_airconditioner: support Emerio PAC-132905
  • starlight_heatpump: add Generator mode
  • suntec_coolfix_airconditioner: enable heat mode dependant on model id
  • dowell_dchs-k7_32_7kw_ev_charger: fix accidentally deleted dp name
  • smartplugv2_energyv2: remove duplicated refresh button
  • intex_purespa_spa: add optional jets switch
  • EV chargers and others: expose real time update switch/refresh button
  • homcom_6speed_towerfan: remove extra blank line
  • alen_35i_airpurifier: satisfy ruff's indentation rules
  • goldair_platinum_tower_fan: use correct type for preset mapping
  • hiniso_dehumidifier: make uv, ionizer, child lock optional
  • cesmarthome_monitoring_smartplug: scale voltage and power

General improvements

  • fix(device_config): respect invert inside conditions
  • Update tinytuya to 1.20.0
  • fix(device): don't reset cache timestamp when setting values

Translation improvements

  • translation: add motion_detection switch translations
  • Revise French translations for quiet modes (#5466)

Development improvements

  • build(deps-dev): bump pytest-homeassistant-custom-component (#5508)
  • ci(device_config tests): check that invert is only used with numeric values

2026.6.4: hotfix for device communication

Choose a tag to compare

@make-all make-all released this 28 Jun 14:21
2026.6.4
0404158

Fixes issue in 2026.6.3 where devices cannot make an initial connection without retries.

2026.6.3 No one's fussy I'm a target

Pre-release

Choose a tag to compare

@make-all make-all released this 28 Jun 13:56
2026.6.3
e94364b

Highlights

  • continued attempts to avoid protocol 3.4 (and 3.5) device communication issues
  • improved robustness of hex field handling
  • improved robustness of device unloading and reloading
  • improved numeric target range handling
  • 15 new, 16 improved device configs

New devices

Improvements to existing devices

  • confortotal_minisplit: don't filter hswing modes #5100
  • simple_lightdimmer: add compatible product #5326
  • fairland_x20_poolheatpump: convert feature flags before use
  • sailesi_litterbox: make compatible with GoDrone model #5333 by @adyachenko
  • feyree_lion_evcharger: support different current variants #5345 by @InfObject
  • modernflames_orion_fireplace: separate main switch to support flame-only mode #5364 by @hartmms
  • vivo_fd55_tvmount: add preset position support #5363 by @WalkingFrag
  • qiachip_qilfrc1_fanlight: add compatible Ostrich remote kit #4760
  • th08_temperature_and_humidity_sensor: add compatible TH08xx and TH09 models #5375, #4300, #2216
  • thermoval_aquati_waterheater: support new firmware #5355
  • zg205w_mmWave_presence_sensor: support far detection #5411 by @robelmes
  • rgbcw_lightbulb_xld_cl002: add compatible Ledvance RGB Brick #5366 by @DawidSu
  • mypin_6l_videopetfeeder: standardise meal plan and manual feed #5401 by @pdwonline
  • alen_35i_airpurifier: support 5-speed fan for 75i model #5429
  • chanfok_fan_light: add compatible Siguro with additional timer #5399 by @supperka
  • duux_whisper_flex_ultimate_fan: add compatible Duux Whisper Blade #5403 by @nttntt

General improvements

  • masked hex fields: handle odd lengths #5208
  • device communication: revert previous fixes that made 3.4 device issues worse, disable retries by the underlying library so no communication happens outside our control
  • device unload/reload: improved reliability of unloading #5381 by @geekypilot
  • numeric range: use target range for HA facing range when approriate #5324 by @nalditopr

Translation improvements

Development improvements

2026.6.2 No cameras

Choose a tag to compare

@make-all make-all released this 14 Jun 09:24
2026.6.2
526f279

Highlights

  • A service to send learned tuya-local remote commands via other infrared emitter entities is now available and working.
  • a protocol 3.4 specific partial revert of communication behaviour to try to minimize the risk of the devices going into their non-communicative mode locally.
  • 27 new devices, improvements to over 20 others.

Breaking changes

  • camera entities are now deprecated. Streaming video has never worked locally, and the few cameras that supported still images return very grainy postage stamp sized thumbnails. Other camera controls are easier to use as separate entities. All existing cameras now have additional entities to expose the camera controls.

New device

Improvements to existing devices

  • intaflow_intabloc_airwaterheatpump: use kPa for pressure #5237 by @rbswift
  • lubluelu_sl60d_vacuum: fix start command #5242 by @wantstoautomate
  • create_fan_light: support a new variant #5253 by @eisenbergrobin
  • aubess_1gang_switch: support compatible Moes WM-104-M #5258
  • homall_90l_litterbox: fix motion detection switch #4997
  • palicy_ecpro4_chlorinegenerator: improve compatibility #3451
  • moes_wcmp52_camera: separate camera controls into own entities #5247 by @jjsmackay
  • duoqu_selfcleaning_litterbox: support compatible NEO-AE model #5238
  • simple_lightbulb: add compatible Martin Jerry dimmers #5272 by @wjcarpenter
  • cct_lightbulb: add compatible product id #5291
  • electriq_my130_radiator: fix preset mappings #5295
  • rgbcw_lightbulb: add compatible product id #5316
  • srne_energy_storage_battery: add capacity sensors #5310 by @PetePeter
  • cityenergy_l10wfe_gaswaterheater: add fault sensor and reset buttons #5302 by @lweikit
  • kolanky_evcharger: support compatible Goodcell 32A model #5278 by @jaypo82
  • multi_timer_powerstrip: renamed from quad_power_timer and triple socket support added for Ucomen model #5309 by @maxlarin63
  • cct_lightbulb: add optional do not disturb switch #5305
  • yuhome_laundry_rack: fix dp id assignments #5303 by @lweikit
  • goldair_gpdh340_dehumidifier: expose Lift pump switch for compatible Saneo D025 #4339
  • petempo_paf02_pet_feeder: improve compatibility #5119

General improvements

  • InfraredEntity renamed to InfraredEmitterEntity for HA 2026.6
  • Finish implementing send_learned_ir_command service
  • cameras have had their controls split to separate entities to make them easier to use. #5247
  • device communication: always send heartbeats for 3.4 protocol devices #5136

Translation improvements

  • additional language names #5201

Development improvements

  • update tests for HA 2026.6 infrared changes
  • detect device ids inserted as product ids in CI
  • tests now run against latest HA 2026.6.x release
  • improved test coverage #5304 by @lweikit

2026.6.1 Being Boiled

Choose a tag to compare

@make-all make-all released this 03 Jun 14:30
2026.6.1
dcbce12

Highlights

  • fix for water_heater regression in 2026.6.0
  • 3 new devices, improvements to 4 others plus a number of vacuums
  • really the last version that will work on HA 2026.5, as updates to infrared will be needed after HA 2026.6 drops tomorrow which will depend on that version.

New devices

Improvements to existing devices

  • powerworld_pw58410: improve compatibility #5210
  • fritzlife_lp365p_watermonitorandshutoff: add fault, fix pressure #5159 by @rwalker777
  • confortotal_minisplit: improvements to recent changes #5100
  • homall_90l_litterbox: motion is a switch not sensor #4997
  • various vacuums: expose "Command" text entity for advanced control #5226

General improvements

2026.6.0 Leave a Light On

Choose a tag to compare

@make-all make-all released this 01 Jun 13:27
2026.6.0
9adf1c1

Highlights

  • continuous improvement to communication problems
  • text platform update to preempt possible HA 2026.6 breakage
  • water_heater entities no longer show a non-standard away operation mode
  • lights no longer raise errors when the brightness goes below the bottom step

Known issues

  • some protocol version 3.4 devices stop responding due to too many communication errors after some time since 2026.4.0. This version continues to make improvements to avoid communication errors, but since the root cause is not fully understood the fixes in this version are not considered a final fix for the issue.
  • the infrared platform is undergoing incompatible changes again in HA 2026.6. At this stage, I believe only unit tests will be affected.
  • a service to send learned remote commands through the infrared platform was added a couple of versions ago, but is not fully working, so is not advertised in the docs.
  • lights that use a masked dp to control multiple lights have synchronization problems when changed together. Although fixed in the previous version, this fix needed to be partially reverted due to side effects on devices that do not mix entities in the same dp.

Breaking changes

  • HA Scenes that affect two entities from the same device sharing the same dp were previously improved by #4986, but due to adverse impact on other devices with multiple entities that have their own dps this has been reverted for this release.

  • daizuki_heatpump: deprecated entities from December have been removed, use the climate entity instead.

  • watermark switches have been standardized for translation. Some variant naming such as "OSD watermark" and "Timestamp" has been updated. Migration is provided, but may not cover all uses.

  • timer switches have been standardized for translation. Some variant naming has been updated. Migration is provided, but may not cover all uses.

  • recording_mode selects have been standardized for translation. Some variant naming and option naming has been updated. Options are standardized to "event" and "continuous". If you have automations changing these selects, please check as the migrations only cover entity naming.

  • night_vision selects have been standardized for translation. Some variant naming and option naming has been updated. Options are standardized to "on", "off" and "auto". If you have automations changing these selects, please check as the migrations only cover entity naming.

  • This will be the last version to work on HA 2026.5, as HA seems to have abandoned deprecation periods and is introducing breaking changes with every major release now.

New devices

Improvements to existing devices

  • avatto_wt20r_thermostat: add product details for WT20R #5155 by @lawther
  • homemedics_c500_airpurifier: improvements to config #5120 by @vemboy200
  • ir_remote_sensors: add compatible S09 remote #5127 by @mmaarrkk02
  • solar_inverter_gtb_series: add power limit #5166 by @ernbale
  • woods_cortina_airconditioner: support AirSwitch and heat models #5138
  • touchstone_sidelineredblue_fireplace: improved reliability #5150 by @mcguires5
  • primebras_athenas_lock: support compatible Foxgard lock #5161 by @itsiv
  • hunterpacific_6speed_fanlight: support compatible Fanelite Manihi #5172 by @PoppyPop
  • haozee_cogasleak_detector: fix dps indexing #4992
  • rgbcw_lightbulb: add compatible Sunco light #5187
  • confortotal_minisplit: support compatible Aiwa AWHACC #5100
  • electriq_airflex15w_heatpump: add entities based on Duux North #5140
  • simple_dual_switch_timer_v2: add compatible W-W602 switch #5190 by @mmaarrkk02
  • simple_triple_switch_timer: add compatible W-W602 switch #5190 by @mmaarrkk02
  • simple_switch_timerv2: add compatible Wifi+BLE 1 gang relay switch #5189
  • simple_switch_timerv2: split complex attributes out to text entities
  • nexsmart_watch2_camera: translation SD status as status #1708

General improvements

  • water_heater: filter away out of operation_modes when supported by the same dp
  • device communications: avoid exception when no data returned by device #5148
  • text: avoid error due to unmanaged API change in HA 2026.6 beta #5163
  • device communications: increase retries to avoid terminal failures #5136
  • device communications: revert #4986 send locking #5145
  • remote: send remote commands consistently #5179
  • deps: bump tinytuya to 1.18.1 - potential fix for communication issues caused by too large data
  • light: enforce minimum brightness when HA converts scale #5123, #5195 by @Zuz666

Translation improvements

  • icons: duplicate cleanup #5175 by @Zuz666
  • select: night_vision translations added #1708
  • switch: timer and Imax fireplace specific translations added #5174 by @Zuz666
  • select: recording_mode translations added #1708
  • switch: watermark translations added #1708

Documentation improvements

  • notes added about third party enhancements that work alongside or on top of this integration

Development improvements

2026.5.4 This is Jam Hot

Choose a tag to compare

@make-all make-all released this 25 May 13:53
2026.5.4
e17de69

Highlights

  • hotfix for deadlock issue in climate entities with 2026.5.3
  • 4 new devices, improvements to 2 others

New devices

Improvements to existing devices

  • frizzlife_lp365p_watermonitorandshutdoff: add entities and units #4703 by @rwalker777
  • klarstein_ava_extractorhood: fix fan speed mappings #5125

General improvements

  • climate: fix a deadlock in set_temperature action #5131, #5129

Documentation improvements

  • rearranged README.md #4793

Development improvements

  • tests: allow target_range to be floating point #4703