瀏覽代碼

Temperature unit select: add translations for name, state and icons.

Issue #1579
Jason Rumney 1 年之前
父節點
當前提交
d3ed3c5597
共有 82 個文件被更改,包括 1119 次插入144 次删除
  1. 1 2
      custom_components/tuya_local/devices/advancedfires_1500_fireplace.yaml
  2. 1 2
      custom_components/tuya_local/devices/arlec_pa1123bkha_portable_air_conditioner.yaml
  3. 1 2
      custom_components/tuya_local/devices/arlec_thermostat_smartplug.yaml
  4. 1 2
      custom_components/tuya_local/devices/becool_heatpump.yaml
  5. 1 2
      custom_components/tuya_local/devices/beok_tr8b_thermostat.yaml
  6. 1 2
      custom_components/tuya_local/devices/beok_tr9b_thermostat.yaml
  7. 1 2
      custom_components/tuya_local/devices/blitzwolf_bwsh5_humidifier.yaml
  8. 1 2
      custom_components/tuya_local/devices/blumfeldt_cosmicbeam_heater.yaml
  9. 1 2
      custom_components/tuya_local/devices/brade_mc6_thermostat.yaml
  10. 1 2
      custom_components/tuya_local/devices/carson_cb.yaml
  11. 1 2
      custom_components/tuya_local/devices/della_airconditioner.yaml
  12. 1 2
      custom_components/tuya_local/devices/duux_blizzard_portable_aircon.yaml
  13. 1 2
      custom_components/tuya_local/devices/eberg_cooly_c35hd.yaml
  14. 1 2
      custom_components/tuya_local/devices/electric_panel_heater.yaml
  15. 1 1
      custom_components/tuya_local/devices/electriq_airflex15w_heatpump.yaml
  16. 1 2
      custom_components/tuya_local/devices/electriq_ecosilent14hpw_aircon.yaml
  17. 1 2
      custom_components/tuya_local/devices/em3378_weather_station.yaml
  18. 1 3
      custom_components/tuya_local/devices/etop_ch7100_thermostat.yaml
  19. 1 2
      custom_components/tuya_local/devices/etop_fcu_thermostat.yaml
  20. 1 2
      custom_components/tuya_local/devices/evotherm_eti_heatpump.yaml
  21. 1 2
      custom_components/tuya_local/devices/heatstorm_hs6000gc_heater.yaml
  22. 1 1
      custom_components/tuya_local/devices/holman_wx1_taptimer.yaml
  23. 2 2
      custom_components/tuya_local/devices/holman_wx2_taptimer.yaml
  24. 1 4
      custom_components/tuya_local/devices/hombli_thermostatic_radiator_valve.yaml
  25. 1 2
      custom_components/tuya_local/devices/hysen_hy08we2_thermostat.yaml
  26. 1 2
      custom_components/tuya_local/devices/inkbird_bbq4t_thermometer.yaml
  27. 1 2
      custom_components/tuya_local/devices/inkbird_bbq4t_thermometerv2.yaml
  28. 1 2
      custom_components/tuya_local/devices/inkbird_ibbq4bw_thermometer.yaml
  29. 1 2
      custom_components/tuya_local/devices/inkbird_itc306a_thermostat.yaml
  30. 1 2
      custom_components/tuya_local/devices/inkbird_itc308_thermostat.yaml
  31. 1 2
      custom_components/tuya_local/devices/inkbird_sousvide_cooker.yaml
  32. 1 2
      custom_components/tuya_local/devices/inventor_tokenslegend_airconditioner.yaml
  33. 1 2
      custom_components/tuya_local/devices/jiahong_et72w_thermostat.yaml
  34. 1 2
      custom_components/tuya_local/devices/kogan_kawfpac12ya_airconditioner.yaml
  35. 1 2
      custom_components/tuya_local/devices/kogan_kawfpac16pya_airconditioner.yaml
  36. 1 2
      custom_components/tuya_local/devices/madimack_eco_heatpump.yaml
  37. 1 2
      custom_components/tuya_local/devices/me80_thermostat.yaml
  38. 1 3
      custom_components/tuya_local/devices/minco_mh1823d_thermostat.yaml
  39. 1 2
      custom_components/tuya_local/devices/modernflames_orion_fireplace.yaml
  40. 1 2
      custom_components/tuya_local/devices/mrc_magnum_floorheater.yaml
  41. 1 2
      custom_components/tuya_local/devices/neo_coolcam_siren.yaml
  42. 1 2
      custom_components/tuya_local/devices/pgst_climate_sensor.yaml
  43. 1 2
      custom_components/tuya_local/devices/poolex_arctic_action.yaml
  44. 1 2
      custom_components/tuya_local/devices/poolex_q7_heatpump.yaml
  45. 1 2
      custom_components/tuya_local/devices/princess_panel_heater.yaml
  46. 1 1
      custom_components/tuya_local/devices/rotenso_ronir35wi_heatpump.yaml
  47. 1 2
      custom_components/tuya_local/devices/royal_airconditioner.yaml
  48. 1 2
      custom_components/tuya_local/devices/salcar_t9w_thermostat.yaml
  49. 1 2
      custom_components/tuya_local/devices/saswell_t29utk_thermostat.yaml
  50. 1 2
      custom_components/tuya_local/devices/sencor_air_conditioner.yaml
  51. 1 2
      custom_components/tuya_local/devices/setti_czajnik_kettle.yaml
  52. 1 2
      custom_components/tuya_local/devices/suntec_coolfix_airconditioner.yaml
  53. 1 2
      custom_components/tuya_local/devices/t5e_wf_thermostat.yaml
  54. 1 2
      custom_components/tuya_local/devices/tesla_airconditioner.yaml
  55. 1 1
      custom_components/tuya_local/devices/th05_temp_humidity_sensor.yaml
  56. 1 1
      custom_components/tuya_local/devices/th08_temperature_and_humidity_sensor.yaml
  57. 1 1
      custom_components/tuya_local/devices/th16_temp_humidity_sensor.yaml
  58. 1 2
      custom_components/tuya_local/devices/touchstone_sideline_fireplace.yaml
  59. 1 2
      custom_components/tuya_local/devices/tuya_000004rime_weather_station.yaml
  60. 1 2
      custom_components/tuya_local/devices/tyte_d1_thermostat.yaml
  61. 1 2
      custom_components/tuya_local/devices/ultenic_air_fryer.yaml
  62. 1 2
      custom_components/tuya_local/devices/vivax_heatpump.yaml
  63. 1 2
      custom_components/tuya_local/devices/weeket_kettle.yaml
  64. 1 2
      custom_components/tuya_local/devices/wilfa_haze_hu400bc_humidifier.yaml
  65. 1 2
      custom_components/tuya_local/devices/zigbee_climate_alarm.yaml
  66. 6 0
      custom_components/tuya_local/icons.json
  67. 164 2
      custom_components/tuya_local/translations/bg.json
  68. 160 0
      custom_components/tuya_local/translations/cz.json
  69. 7 0
      custom_components/tuya_local/translations/en.json
  70. 166 2
      custom_components/tuya_local/translations/es.json
  71. 7 0
      custom_components/tuya_local/translations/fr.json
  72. 12 2
      custom_components/tuya_local/translations/hu.json
  73. 6 0
      custom_components/tuya_local/translations/id.json
  74. 164 2
      custom_components/tuya_local/translations/it.json
  75. 7 0
      custom_components/tuya_local/translations/no-NB.json
  76. 7 1
      custom_components/tuya_local/translations/pl.json
  77. 164 2
      custom_components/tuya_local/translations/pt-BR.json
  78. 7 0
      custom_components/tuya_local/translations/ru.json
  79. 165 3
      custom_components/tuya_local/translations/uk.json
  80. 7 0
      custom_components/tuya_local/translations/ur.json
  81. 2 2
      tests/devices/test_inkbird_sousvide.py
  82. 2 0
      tests/devices/test_m027_curtain.py

+ 1 - 2
custom_components/tuya_local/devices/advancedfires_1500_fireplace.yaml

@@ -72,8 +72,7 @@ primary_entity:
       optional: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/arlec_pa1123bkha_portable_air_conditioner.yaml

@@ -114,8 +114,7 @@ secondary_entities:
           min: 0
           max: 24
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 109

+ 1 - 2
custom_components/tuya_local/devices/arlec_thermostat_smartplug.yaml

@@ -175,8 +175,7 @@ secondary_entities:
         name: calibration
         optional: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 20

+ 1 - 2
custom_components/tuya_local/devices/becool_heatpump.yaml

@@ -90,8 +90,7 @@ primary_entity:
 secondary_entities:
   - entity: select
     category: config
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 10
         type: boolean

+ 1 - 2
custom_components/tuya_local/devices/beok_tr8b_thermostat.yaml

@@ -133,8 +133,7 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature units
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 23

+ 1 - 2
custom_components/tuya_local/devices/beok_tr9b_thermostat.yaml

@@ -74,9 +74,8 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 23
         type: string

+ 1 - 2
custom_components/tuya_local/devices/blitzwolf_bwsh5_humidifier.yaml

@@ -162,7 +162,7 @@ secondary_entities:
         type: integer
         optional: true
   - entity: select
-    name: Display temperature unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 18
@@ -172,7 +172,6 @@ secondary_entities:
         mapping:
           - dps_val: c
             value: Celsius
-            icon: "mdi:temperature-celsius"
           - dps_val: f
             value: Fahrenheit
             icon: "mdi:temperature-fahrenheit"

+ 1 - 2
custom_components/tuya_local/devices/blumfeldt_cosmicbeam_heater.yaml

@@ -127,8 +127,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 101

+ 1 - 2
custom_components/tuya_local/devices/brade_mc6_thermostat.yaml

@@ -208,8 +208,7 @@ secondary_entities:
           - dps_val: f
             value: F
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 23

+ 1 - 2
custom_components/tuya_local/devices/carson_cb.yaml

@@ -79,8 +79,7 @@ primary_entity:
       optional: true
 secondary_entities:
   - entity: select
-    name: temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/della_airconditioner.yaml

@@ -104,8 +104,7 @@ secondary_entities:
         name: lock
         type: boolean
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/duux_blizzard_portable_aircon.yaml

@@ -135,8 +135,7 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 14

+ 1 - 2
custom_components/tuya_local/devices/eberg_cooly_c35hd.yaml

@@ -94,8 +94,7 @@ primary_entity:
 secondary_entities:
   - entity: select
     category: config
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 10
         type: boolean

+ 1 - 2
custom_components/tuya_local/devices/electric_panel_heater.yaml

@@ -145,8 +145,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 103

+ 1 - 1
custom_components/tuya_local/devices/electriq_airflex15w_heatpump.yaml

@@ -123,7 +123,7 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 109

+ 1 - 2
custom_components/tuya_local/devices/electriq_ecosilent14hpw_aircon.yaml

@@ -119,8 +119,7 @@ primary_entity:
 secondary_entities:
   - entity: select
     category: config
-    name: Temperature Unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 19
         name: option

+ 1 - 2
custom_components/tuya_local/devices/em3378_weather_station.yaml

@@ -164,8 +164,7 @@ secondary_entities:
           - dps_val: inHg
             value: inches of mercury
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 112

+ 1 - 3
custom_components/tuya_local/devices/etop_ch7100_thermostat.yaml

@@ -152,7 +152,7 @@ primary_entity:
       hidden: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 23
@@ -161,10 +161,8 @@ secondary_entities:
         mapping:
           - dps_val: c
             value: Celsius
-            icon: "mdi:temperature-celsius"
           - dps_val: f
             value: Fahrenheit
-            icon: "mdi:temperature-fahrenheit"
   - entity: sensor
     class: humidity
     dps:

+ 1 - 2
custom_components/tuya_local/devices/etop_fcu_thermostat.yaml

@@ -99,9 +99,8 @@ secondary_entities:
   # Temperature display unit
   ############################################################
   - entity: select
-    name: "Display unit"
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 19
         name: option

+ 1 - 2
custom_components/tuya_local/devices/evotherm_eti_heatpump.yaml

@@ -138,8 +138,7 @@ primary_entity:
       type: bitfield
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 6

+ 1 - 2
custom_components/tuya_local/devices/heatstorm_hs6000gc_heater.yaml

@@ -116,8 +116,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 1
custom_components/tuya_local/devices/holman_wx1_taptimer.yaml

@@ -100,7 +100,7 @@ secondary_entities:
       - id: 109
         optional: true
         type: integer
-        name: value
+        name: sensor
         unit: min
   - entity: sensor
     name: Start A encoded

+ 2 - 2
custom_components/tuya_local/devices/holman_wx2_taptimer.yaml

@@ -109,7 +109,7 @@ secondary_entities:
       - id: 109
         optional: true
         type: integer
-        name: value
+        name: sensor
         unit: min
   - entity: sensor
     name: Start A 1 encoded  # start time, duration and days for start A
@@ -558,7 +558,7 @@ secondary_entities:
       - id: 156
         optional: true
         type: integer
-        name: value
+        name: sensor
         unit: min
   - entity: sensor
     name: Start A 2 encoded  # start time, duration and days for start A

+ 1 - 4
custom_components/tuya_local/devices/hombli_thermostatic_radiator_valve.yaml

@@ -53,8 +53,7 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 23
@@ -64,10 +63,8 @@ secondary_entities:
         mapping:
           - dps_val: "c"
             value: Celsius
-            icon: "mdi:temperature-celsius"
           - dps_val: "f"
             value: Fahrenheit
-            icon: "mdi:temperature-fahrenheit"
   - entity: number
     name: Temperature calibration
     category: config

+ 1 - 2
custom_components/tuya_local/devices/hysen_hy08we2_thermostat.yaml

@@ -355,9 +355,8 @@ secondary_entities:
           - dps_val: 2days
             value: 5 + 2 day
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 101
         type: boolean

+ 1 - 2
custom_components/tuya_local/devices/inkbird_bbq4t_thermometer.yaml

@@ -81,8 +81,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/inkbird_bbq4t_thermometerv2.yaml

@@ -86,8 +86,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Display unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/inkbird_ibbq4bw_thermometer.yaml

@@ -69,8 +69,7 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/inkbird_itc306a_thermostat.yaml

@@ -202,8 +202,7 @@ secondary_entities:
         hidden: true
   - entity: select
     category: config
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 101
         name: option

+ 1 - 2
custom_components/tuya_local/devices/inkbird_itc308_thermostat.yaml

@@ -169,8 +169,7 @@ secondary_entities:
         hidden: true
   - entity: select
     category: config
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 101
         name: option

+ 1 - 2
custom_components/tuya_local/devices/inkbird_sousvide_cooker.yaml

@@ -88,9 +88,8 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Temperature display unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 108
         type: boolean

+ 1 - 2
custom_components/tuya_local/devices/inventor_tokenslegend_airconditioner.yaml

@@ -145,8 +145,7 @@ secondary_entities:
           min: 0
           max: 100
   - entity: select
-    name: Display units
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/jiahong_et72w_thermostat.yaml

@@ -157,7 +157,7 @@ secondary_entities:
         name: calibration
   - entity: select
     category: config
-    name: Temperature unit
+    translation_key: temperature_unit
     dps:
       - id: 107
         name: option
@@ -165,7 +165,6 @@ secondary_entities:
         mapping:
           - dps_val: false
             value: Celsius
-            icon: "mdi:temperature-celsius"
           - dps_val: true
             value: Fahrenheit
             icon: "mdi:temperature-fahrenheit"

+ 1 - 2
custom_components/tuya_local/devices/kogan_kawfpac12ya_airconditioner.yaml

@@ -94,8 +94,7 @@ primary_entity:
       type: integer
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature_celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/kogan_kawfpac16pya_airconditioner.yaml

@@ -92,8 +92,7 @@ primary_entity:
       type: integer
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature_celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/madimack_eco_heatpump.yaml

@@ -87,8 +87,7 @@ secondary_entities:
             value: false
             hidden: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 106

+ 1 - 2
custom_components/tuya_local/devices/me80_thermostat.yaml

@@ -192,9 +192,8 @@ secondary_entities:
                   min: 41
                   max: 68
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 23
         type: string

+ 1 - 3
custom_components/tuya_local/devices/minco_mh1823d_thermostat.yaml

@@ -117,7 +117,7 @@ secondary_entities:
           - dps_val: out
             value: External
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19
@@ -126,10 +126,8 @@ secondary_entities:
         mapping:
           - dps_val: c
             value: Celsius
-            icon: "mdi:temperature-celsius"
           - dps_val: f
             value: Fahrenheit
-            icon: "mdi:temperature-fahrenheit"
   - entity: number
     name: Calibration offset internal
     category: config

+ 1 - 2
custom_components/tuya_local/devices/modernflames_orion_fireplace.yaml

@@ -76,8 +76,7 @@ primary_entity:
       optional: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 1 - 2
custom_components/tuya_local/devices/mrc_magnum_floorheater.yaml

@@ -161,8 +161,7 @@ secondary_entities:
             value: true
           - value: false
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 107

+ 1 - 2
custom_components/tuya_local/devices/neo_coolcam_siren.yaml

@@ -161,8 +161,7 @@ secondary_entities:
           min: 0
           max: 100
   - entity: select
-    name: Temperature display units
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 112

+ 1 - 2
custom_components/tuya_local/devices/pgst_climate_sensor.yaml

@@ -40,8 +40,7 @@ secondary_entities:
           - dps_val: high
             value: 80
   - entity: select
-    name: Display unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 1 - 2
custom_components/tuya_local/devices/poolex_arctic_action.yaml

@@ -173,8 +173,7 @@ primary_entity:
 
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 13

+ 1 - 2
custom_components/tuya_local/devices/poolex_q7_heatpump.yaml

@@ -163,8 +163,7 @@ secondary_entities:
         hidden: true
         optional: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 13

+ 1 - 2
custom_components/tuya_local/devices/princess_panel_heater.yaml

@@ -53,8 +53,7 @@ primary_entity:
       hidden: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 13

+ 1 - 1
custom_components/tuya_local/devices/rotenso_ronir35wi_heatpump.yaml

@@ -104,7 +104,7 @@ primary_entity:
       hidden: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 103

+ 1 - 2
custom_components/tuya_local/devices/royal_airconditioner.yaml

@@ -101,8 +101,7 @@ primary_entity:
           value: "C"
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 103

+ 1 - 2
custom_components/tuya_local/devices/salcar_t9w_thermostat.yaml

@@ -113,8 +113,7 @@ secondary_entities:
           - dps_val: f
             value: F
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 23

+ 1 - 2
custom_components/tuya_local/devices/saswell_t29utk_thermostat.yaml

@@ -128,8 +128,7 @@ primary_entity:
       type: integer
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/sencor_air_conditioner.yaml

@@ -75,9 +75,8 @@ secondary_entities:
             value: false
           - value: true
   - entity: select
-    name: Display temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 19
         name: option

+ 1 - 2
custom_components/tuya_local/devices/setti_czajnik_kettle.yaml

@@ -200,8 +200,7 @@ secondary_entities:
           - dps_val: f
             value: F
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 12

+ 1 - 2
custom_components/tuya_local/devices/suntec_coolfix_airconditioner.yaml

@@ -132,8 +132,7 @@ secondary_entities:
             value: true
           - value: false
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/t5e_wf_thermostat.yaml

@@ -259,9 +259,8 @@ secondary_entities:
           - dps_val: f
             value: F
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 43
         type: string

+ 1 - 2
custom_components/tuya_local/devices/tesla_airconditioner.yaml

@@ -125,8 +125,7 @@ secondary_entities:
         type: boolean
         name: lock
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 1
custom_components/tuya_local/devices/th05_temp_humidity_sensor.yaml

@@ -23,7 +23,7 @@ secondary_entities:
         unit: "%"
         class: measurement
   - entity: select
-    name: Display Units
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 1 - 1
custom_components/tuya_local/devices/th08_temperature_and_humidity_sensor.yaml

@@ -38,7 +38,7 @@ secondary_entities:
           - dps_val: high
             value: high
   - entity: select
-    name: Display unit
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 1 - 1
custom_components/tuya_local/devices/th16_temp_humidity_sensor.yaml

@@ -22,7 +22,7 @@ secondary_entities:
         unit: "%"
         class: measurement
   - entity: select
-    name: Display Units
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 1 - 2
custom_components/tuya_local/devices/touchstone_sideline_fireplace.yaml

@@ -79,8 +79,7 @@ primary_entity:
       optional: true
 secondary_entities:
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 13

+ 1 - 2
custom_components/tuya_local/devices/tuya_000004rime_weather_station.yaml

@@ -178,8 +178,7 @@ secondary_entities:
         type: bitfield
         name: notifications_payload
   - entity: select
-    name: Display units
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 105

+ 1 - 2
custom_components/tuya_local/devices/tyte_d1_thermostat.yaml

@@ -166,9 +166,8 @@ secondary_entities:
         type: integer
         name: coefficient
   - entity: select
-    name: Temperature unit
+    translation_key: temperature_unit
     category: config
-    icon: "mdi:temperature-celsius"
     dps:
       - id: 20
         type: string

+ 1 - 2
custom_components/tuya_local/devices/ultenic_air_fryer.yaml

@@ -176,8 +176,7 @@ secondary_entities:
           - dps_val: false
             value: true
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 14

+ 1 - 2
custom_components/tuya_local/devices/vivax_heatpump.yaml

@@ -197,8 +197,7 @@ secondary_entities:
         type: boolean
         name: switch
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 19

+ 1 - 2
custom_components/tuya_local/devices/weeket_kettle.yaml

@@ -71,8 +71,7 @@ secondary_entities:
           - dps_val: true
             icon: "mdi:kettle-steam"
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 12

+ 1 - 2
custom_components/tuya_local/devices/wilfa_haze_hu400bc_humidifier.yaml

@@ -133,8 +133,7 @@ secondary_entities:
             icon: "mdi:led-on"
   - entity: select
     category: config
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     dps:
       - id: 18
         name: option

+ 1 - 2
custom_components/tuya_local/devices/zigbee_climate_alarm.yaml

@@ -41,8 +41,7 @@ secondary_entities:
         unit: "%"
         class: measurement
   - entity: select
-    name: Temperature unit
-    icon: "mdi:temperature-celsius"
+    translation_key: temperature_unit
     category: config
     dps:
       - id: 9

+ 6 - 0
custom_components/tuya_local/icons.json

@@ -16,6 +16,12 @@
         "select": {
             "timer": {
                 "default": "mdi:timer"
+            },
+            "temperature_unit": {
+                "default": "mdi:temperature-celsius",
+                "state": {
+                    "Fahrenheit": "mdi:temperature-fahrenheit"
+                }
             }
         }
     }

+ 164 - 2
custom_components/tuya_local/translations/bg.json

@@ -10,7 +10,8 @@
                     "device_id": "Device ID",
                     "local_key": "Локален ключ",
                     "protocol_version": "Версия на протокола (опитайте автоматична, ако не е известна)",
-                    "poll_only": "Само анкетиране (опитайте това, ако устройството ви не работи напълно)"
+                    "poll_only": "Само анкетиране (опитайте това, ако устройството ви не работи напълно)",
+                    "device_cid": "[bg] Sub device ID (for devices connected via gateway)"
                 }
             },
             "select_type": {
@@ -45,7 +46,8 @@
                     "host": "IP адрес или име на хост",
                     "local_key": "Локален ключ",
                     "protocol_version": "Версия на протокола (опитайте автоматична, ако не е известна)",
-                    "poll_only": "Само анкетиране (опитайте това, ако устройството ви не работи напълно)"
+                    "poll_only": "Само анкетиране (опитайте това, ако устройството ви не работи напълно)",
+                    "device_cid": "[bg] Sub device ID (for devices connected via gateway)"
                 }
             }
         },
@@ -55,5 +57,165 @@
         "abort": {
             "not_supported": "Съжаляваме, няма поддръжка за това устройство, все още"
         }
+    },
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Здрави",
+                            "medhigh": "Средна височина",
+                            "medlow": "Средно-нисък",
+                            "natural": "Естествено",
+                            "quiet": "Тихо",
+                            "sleep": "Сън",
+                            "strong": "Силен"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Най-отгоре",
+                            "top": "Връх",
+                            "middle": "Среден",
+                            "down": "Надолу",
+                            "downmost": "Най-долу"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Цикъл"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Ръководство",
+                            "program": "Програма",
+                            "temp_override": "Временна отмяна",
+                            "perm_override": "Постоянна отмяна"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Свеж въздух",
+                            "fan_only": "Вентилатор",
+                            "heat": "Топлинен въздух",
+                            "floor_cool": "Хладен под",
+                            "floor_heat": "Топъл под"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Ниво на отопление",
+                        "state": {
+                            "stop": "Спри",
+                            "auto": "Автоматичен"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Умен топлина",
+                            "quick_heat": "Бърза топлина",
+                            "quiet_heat": "Тиха топлина",
+                            "smart_cool": "Умен охлаждане",
+                            "quick_cool": "Бързо охлаждане",
+                            "quiet_cool": "Тихо охлаждане",
+                            "auto": "Автоматичен"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Пауза"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Сухо пране",
+                            "purify": "Пречистете"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Нормално",
+                            "nature": "Естествено",
+                            "sleep": "Сън",
+                            "baby": "Бебе",
+                            "fresh": "Свежо",
+                            "smart": "Умен",
+                            "strong": "Силен",
+                            "displayoff": "Дисплеят е изключен",
+                            "off": "Изключете дисплея"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Свеж въздух",
+                            "circulate": "Циркулирайте",
+                            "sleep": "Сън",
+                            "auto": "Автоматичен",
+                            "eco": "Еко",
+                            "anti-condensation": "Антиконденз"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Заключване за деца"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Таймер"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Таймер"
+            },
+            "temperature_unit": {
+                "name": "Температурна единица",
+                "state": {
+                    "Celsius": "Целзий",
+                    "Fahrenheit": "Фаренхайт"
+                }
+            }
+        }
     }
 }

+ 160 - 0
custom_components/tuya_local/translations/cz.json

@@ -57,5 +57,165 @@
         "abort": {
             "not_supported": "Omlouváme se, toto zažízení není podporováno."
         }
+    },
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Zdravý",
+                            "medhigh": "Středně vysoký",
+                            "medlow": "Středně nízký",
+                            "natural": "Přírodní",
+                            "quiet": "Klid",
+                            "sleep": "Spát",
+                            "strong": "Silný"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Nejvyšší",
+                            "top": "Horní",
+                            "middle": "Střední",
+                            "down": "Dolů",
+                            "downmost": "Nejspodnější"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Cyklus"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Manuál",
+                            "program": "Program",
+                            "temp_override": "Dočasné přepsání",
+                            "perm_override": "Trvalé přepsání"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Chladný vzduch",
+                            "fan_only": "Ventilátor",
+                            "heat": "Ohřejte vzduch",
+                            "floor_cool": "Chladná podlaha",
+                            "floor_heat": "Tepelná podlaha"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Úroveň vytápění",
+                        "state": {
+                            "stop": "Stop",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Chytré teplo",
+                            "quick_heat": "Rychlé teplo",
+                            "quiet_heat": "Tiché teplo",
+                            "smart_cool": "Chytré chlazení",
+                            "quick_cool": "Rychlé chlazení",
+                            "quiet_cool": "Tiché chlazení",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Pauza"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Suché prádlo",
+                            "purify": "Očistit"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Normální",
+                            "nature": "Přírodní",
+                            "sleep": "Spát",
+                            "baby": "Dítě",
+                            "fresh": "Svěží",
+                            "smart": "Chytrý",
+                            "strong": "Silný",
+                            "displayoff": "Vypněte displej",
+                            "off": "Vypnuto"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Čerstvý vzduch",
+                            "circulate": "Obíhat",
+                            "sleep": "Spát",
+                            "auto": "Auto",
+                            "eco": "Eco",
+                            "anti-condensation": "Proti kondenzaci"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Dětská pojistka"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Časovač"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Časovač"
+            },
+            "temperature_unit": {
+                "name": "Jednotka teploty",
+                "state": {
+                    "Celsius": "Celsia",
+                    "Fahrenheit": "Fahrenheita"
+                }
+            }
+        }
     }
 }

+ 7 - 0
custom_components/tuya_local/translations/en.json

@@ -208,6 +208,13 @@
         "select": {
             "timer": {
                 "name": "Timer"
+            },
+            "temperature_unit": {
+                "name": "Temperature unit",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
             }
         }
     }

+ 166 - 2
custom_components/tuya_local/translations/es.json

@@ -9,7 +9,9 @@
                     "host": "Dirección IP o nombre de host",
                     "device_id": "Identificación del dispositivo (device_id)",
                     "local_key": "Clave local (Local key)",
-                    "protocol_version": "Versión del protocolo (pruebe automático si no lo sabe)"
+                    "protocol_version": "Versión del protocolo (pruebe automático si no lo sabe)",
+                    "poll_only": "[es] Poll only (try this if your device does not work fully)",
+                    "device_cid": "[es] Sub device ID (for devices connected via gateway)"
                 }
             },
             "select_type": {
@@ -43,7 +45,9 @@
                 "data": {
                     "host": "Dirección IP o nombre de host",
                     "local_key": "Clave local (Local key)",
-                    "protocol_version": "Versión del protocolo (pruebe automático si no lo sabe)"
+                    "protocol_version": "Versión del protocolo (pruebe automático si no lo sabe)",
+                    "poll_only": "[es] Poll only (try this if your device does not work fully)",
+                    "device_cid": "[es] Sub device ID (for devices connected via gateway)"                    
                 }
             }
         },
@@ -53,5 +57,165 @@
         "abort": {
             "not_supported": "Lo sentimos, no hay soporte para este dispositivo."
         }
+    },
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Saludable",
+                            "medhigh": "Altura media",
+                            "medlow": "Medio-bajo",
+                            "natural": "Natural",
+                            "quiet": "Tranquilo",
+                            "sleep": "Dormir",
+                            "strong": "Fuerte"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Más alto",
+                            "top": "Alto",
+                            "middle": "Medio",
+                            "down": "Abajo",
+                            "downmost": "Más abajo"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Ciclo"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Manual",
+                            "program": "Programa",
+                            "temp_override": "Anulación temporal",
+                            "perm_override": "Anulación permanente"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Aire fresco",
+                            "fan_only": "Ventilador",
+                            "heat": "Calentar aire",
+                            "floor_cool": "Piso fresco",
+                            "floor_heat": "Piso caliente"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Nivel de calefacción",
+                        "state": {
+                            "stop": "Detener",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Calor inteligente",
+                            "quick_heat": "Calor rapido",
+                            "quiet_heat": "Calor tranquilo",
+                            "smart_cool": "Fresco inteligente",
+                            "quick_cool": "Fresco rapido",
+                            "quiet_cool": "Fresco tranquilo",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Pausa"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Ropa seca",
+                            "purify": "Purificar"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Normal",
+                            "nature": "Natural",
+                            "sleep": "Dormir",
+                            "baby": "Bebé",
+                            "fresh": "Fresco",
+                            "smart": "Inteligente",
+                            "strong": "Fuerte",
+                            "displayoff": "Pantalla apagada",
+                            "off": "Apagado"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Aire fresco",
+                            "circulate": "Circular",
+                            "sleep": "Dormir",
+                            "auto": "Auto",
+                            "eco": "Ecológico",
+                            "anti-condensation": "Anticondensación"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Bloqueo infantil"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Temporizador"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Temporizador"
+            },
+            "temperature_unit": {
+                "name": "Unidad de temperatura",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
+            }
+        }
     }
 }

+ 7 - 0
custom_components/tuya_local/translations/fr.json

@@ -175,6 +175,13 @@
         "select": {
             "timer": {
                 "name": "Minuteur"
+            },
+            "temperature_unit": {
+                "name": "Unité de température",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
             }
         }
     }

+ 12 - 2
custom_components/tuya_local/translations/hu.json

@@ -10,7 +10,9 @@
                     "device_id": "Eszköz azonosító (device_id)",
                     "local_key": "Helyi kulcs (local_key)",
                     "protocol_version": "Protokol verzió (hagyd auto-n, ha nem tudod)",
-                    "poll_only": "Csak olvasás (próbáld ki ezt, ha az eszköz nem működik rendesen)"
+                    "poll_only": "Csak olvasás (próbáld ki ezt, ha az eszköz nem működik rendesen)",
+                    "device_cid": "[hu] Sub device ID (for devices connected via gateway)"
+                    
                 }
             },
             "select_type": {
@@ -45,7 +47,8 @@
                     "host": "IP cím vagy állomásnév",
                     "local_key": "Helyi kulcs (local_key)",
                     "protocol_version": "Protokol verzió (hagyd auto-n, ha nem tudod)",
-                    "poll_only": "Csak olvasás (próbáld ki ezt, ha az eszköz nem működik rendesen)"
+                    "poll_only": "Csak olvasás (próbáld ki ezt, ha az eszköz nem működik rendesen)",
+                    "device_cid": "[hu] Sub device ID (for devices connected via gateway)"
                 }
             }
         },
@@ -205,6 +208,13 @@
         "select": {
             "timer": {
                 "name": "Időzítő"
+            },
+            "temperature_unit": {
+                "name": "Hőmérséklet mértékegysége",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
             }
         }
    }

+ 6 - 0
custom_components/tuya_local/translations/id.json

@@ -208,6 +208,12 @@
         "select": {
             "timer": {
                 "name": "Pengatur waktu"
+            },
+            "temperature_unit": {
+                "name": "Satuan suhu",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
             }
         }
     }

+ 164 - 2
custom_components/tuya_local/translations/it.json

@@ -10,7 +10,8 @@
                     "device_id": "Device ID",
                     "local_key": "Local key",
                     "protocol_version": "Versione protocollo (prova 'auto' in caso di dubbi)",
-                    "poll_only": "Poll only (prova questa opzione se il dispositivo non funziona correttamente)"
+                    "poll_only": "Poll only (prova questa opzione se il dispositivo non funziona correttamente)",
+                    "device_cid": "[it] Sub device ID (for devices connected via gateway)"
                 }
             },
             "select_type": {
@@ -45,7 +46,8 @@
                     "host": "Indirizzo IP o nome host",
                     "local_key": "Local key",
                     "protocol_version": "Versione protocollo (prova 'auto' in caso di dubbi)",
-                    "poll_only": "Poll only (prova questa opzione se il dispositivo non funziona correttamente)"
+                    "poll_only": "Poll only (prova questa opzione se il dispositivo non funziona correttamente)",
+                    "device_cid": "[it] Sub device ID (for devices connected via gateway)"
                 }
             }
         },
@@ -55,5 +57,165 @@
         "abort": {
             "not_supported": "Spiacente, il dispositivo non è supportato."
         }
+    },
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Salutare",
+                            "medhigh": "Media altezza",
+                            "medlow": "Medio basso",
+                            "natural": "Naturale",
+                            "quiet": "Tranquillo",
+                            "sleep": "Sonno",
+                            "strong": "Forte"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Più in alto",
+                            "top": "In alto",
+                            "middle": "Mezzo",
+                            "down": "In basso",
+                            "downmost": "Il più basso"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Ciclo"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Manuale",
+                            "program": "Programma",
+                            "temp_override": "Override temporaneo",
+                            "perm_override": "Override permanente"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Aria fresca",
+                            "fan_only": "Fan",
+                            "heat": "Aria riscaldata",
+                            "floor_cool": "Pavimento fresco",
+                            "floor_heat": "Pavimento riscaldato"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Livello di riscaldamento",
+                        "state": {
+                            "stop": "Fermare",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Calore intelligente",
+                            "quick_heat": "Calore rapido",
+                            "quiet_heat": "Caldo tranquillo",
+                            "smart_cool": "Raffreddamento intelligente",
+                            "quick_cool": "Raffreddamento rapido",
+                            "quiet_cool": "Raffreddamento tranquillo",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Pausa"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Biancheria asciutta",
+                            "purify": "Puricare"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Normale",
+                            "nature": "Naturale",
+                            "sleep": "Sonno",
+                            "baby": "Bambino",
+                            "fresh": "Fresco",
+                            "smart": "Inteligente",
+                            "strong": "Forte",
+                            "displayoff": "Display spento",
+                            "off": "Spento"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Aria fresca",
+                            "circulate": "Circolare",
+                            "sleep": "Sonno",
+                            "auto": "Auto",
+                            "eco": "Eco",
+                            "anti-condensation": "Anticondensa"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Blocco bambini"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Timer"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Timer"
+            },
+            "temperature_unit": {
+                "name": "Unità di temperatura",
+                "state": {
+                    "Celsius": "Centigrado",
+                    "Fahrenheit": "Fahrenheit"
+                }
+            }
+        }
     }
 }

+ 7 - 0
custom_components/tuya_local/translations/no-NB.json

@@ -192,6 +192,13 @@
         "select": {
             "timer": {
                 "name": "Timer"
+            },
+            "temperature_unit": {
+                "name": "Temperaturenhet",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
             }
         }
     }

+ 7 - 1
custom_components/tuya_local/translations/pl.json

@@ -207,7 +207,13 @@
         "select": {
             "timer": {
                 "name": "Regulator czasowy"
-            }
+            },
+            "temperature_unit": {
+                "name": "Jednostka temperatury",
+                "state": {
+                    "Celsius": "Celsjusz",
+                    "Fahrenheit": "Fahrenheita"
+                }
         }
     }
 }

+ 164 - 2
custom_components/tuya_local/translations/pt-BR.json

@@ -10,7 +10,8 @@
                     "device_id": "Device ID",
                     "local_key": "Chave Local",
                     "protocol_version": "Versão do protocolo (tente auto se não souber)",
-                    "poll_only": "Pesquisar (tente isto se o seu dispositivo não funcionar totalmente)"
+                    "poll_only": "Pesquisar (tente isto se o seu dispositivo não funcionar totalmente)",
+                    "device_cid": "[pt-BR] Sub device ID (for devices connected via gateway)"
                 }
             },
             "select_type": {
@@ -45,7 +46,8 @@
                     "host": "Endereço IP ou nome do host",
                     "local_key": "Chave Local",
                     "protocol_version": "Versão do protocolo (tente auto se não souber)",
-                    "poll_only": "Pesquisar (tente isto se o seu dispositivo não funcionar totalmente)"
+                    "poll_only": "Pesquisar (tente isto se o seu dispositivo não funcionar totalmente)",
+                    "device_cid": "[pt-BR] Sub device ID (for devices connected via gateway)"
                 }
             }
         },
@@ -55,5 +57,165 @@
         "abort": {
             "not_supported": "Desculpe, não há suporte para este dispositivo."
         }
+    },
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Saudável",
+                            "medhigh": "Médio-alto",
+                            "medlow": "Médio-baixo",
+                            "natural": "Natural",
+                            "quiet": "Quieto",
+                            "sleep": "Dormir",
+                            "strong": "Forte"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Mais alto",
+                            "top": "Alto",
+                            "middle": "Meio",
+                            "down": "Abaixo",
+                            "downmost": "Mais abaixo"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Ciclo"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Manual",
+                            "program": "Programa",
+                            "temp_override": "Substituição temporária",
+                            "perm_override": "Substituição permanente"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Ar fresco",
+                            "fan_only": "Ventilador",
+                            "heat": "Ar aquecido",
+                            "floor_cool": "Chão fresco",
+                            "floor_heat": "Chão aquecido"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Nível de calor",
+                        "state": {
+                            "stop": "Parar",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Calor inteligente",
+                            "quick_heat": "Calor rápido",
+                            "quiet_heat": "Calor silencioso",
+                            "smart_cool": "Resfriamento inteligente",
+                            "quick_cool": "Resfriamento rápido",
+                            "quiet_cool": "Resfriamento silencioso",
+                            "auto": "Auto"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Pausa"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Roupa seca",
+                            "purify": "Purificar"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Normal",
+                            "nature": "Natural",
+                            "sleep": "Dormir",
+                            "baby": "Bebê",
+                            "fresh": "Fresco",
+                            "smart": "Inteligente",
+                            "strong": "Forte",
+                            "displayoff": "Exibição desligada",
+                            "off": "Desligado"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Ar fresco",
+                            "circulate": "Circular",
+                            "sleep": "Dormir",
+                            "auto": "Auto",
+                            "eco": "Ecológico",
+                            "anti-condensation": "Anti-condensação"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Bloqueio infantil"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Cronômetro"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Cronômetro"
+            },
+            "temperature_unit": {
+                "name": "Unidade de temperatura",
+                "state": {
+                    "Celsius": "Celsius",
+                    "Fahrenheit": "Fahrenheit"
+                }
+            }
+        }
     }
 }

+ 7 - 0
custom_components/tuya_local/translations/ru.json

@@ -208,6 +208,13 @@
     "select": {
       "timer": {
         "name": "Таймер"
+      },
+      "temperature_unit": {
+        "name": "Единица измерения температуры",
+        "state": {
+          "Celsius": "Цельсия",
+          "Fahrenheit": "Фаренгейт"
+        }
       }
     }
   }

+ 165 - 3
custom_components/tuya_local/translations/uk.json

@@ -10,7 +10,8 @@
 					"device_id": "Ідентифікатор пристрою",
 					"local_key": "Локальний ключ (local_key)",
 					"protocol_version": "Версія протоколу (якщо не знаєте, спробуйте 'auto')",
-					"poll_only": "Виключно опитування (спробуйте це, якщо ваш пристрій не зовсім працює)"
+					"poll_only": "Виключно опитування (спробуйте це, якщо ваш пристрій не зовсім працює)",
+					"device_cid": "[uk] Sub device ID (for devices connected via gateway)"
 				}
 			},
 			"select_type": {
@@ -45,7 +46,8 @@
 					"host": "IP-адреса або ім'я хоста",
 					"local_key": "Локальний ключ (local_key)",
 					"protocol_version": "Версія протоколу (якщо не знаєте, спробуйте 'auto')",
-					"poll_only": "Виключно опитування (спробуйте це, якщо ваш пристрій не зовсім працює)"
+					"poll_only": "Виключно опитування (спробуйте це, якщо ваш пристрій не зовсім працює)",
+					"device_cid": "[uk] Sub device ID (for devices connected via gateway)"
 				}
 			}
 		},
@@ -55,5 +57,165 @@
 		"abort": {
 			"not_supported": "На жаль, цей пристрій не підтримується."
 		}
-	}
+	},
+    "entity": {
+        "climate": {
+            "aircon_extra": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "health": "Здоровий",
+                            "medhigh": "Середньо-високий",
+                            "medlow": "Середньо-низький",
+                            "natural": "Природні",
+                            "quiet": "Спокійно",
+                            "sleep": "Сон",
+                            "strong": "Сильний"
+                        }
+                    },
+                    "swing_mode": {
+                        "state": {
+                            "topmost": "Самий верхній",
+                            "top": "Верхній",
+                            "middle": "Середній",
+                            "down": "Низький",
+                            "downmost": "Самий низький"
+                        }
+                    }
+                }
+            },
+            "thermostat": {
+                "state_attributes": {
+                    "fan_mode": {
+                        "state": {
+                            "cycle": "Цикл"
+                        }
+                    },
+                    "preset_mode": {
+                        "state": {
+                            "manual": "Інструкція",
+                            "program": "Програма",
+                            "temp_override": "Тимчасове перевизначення",
+                            "perm_override": "Постійне перевизначення"
+                        }
+                    }
+                }
+            },
+            "combo_floor": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "cool": "Прохолодне повітря",
+                            "fan_only": "Вентилятор",
+                            "heat": "Підігріте повітря",
+                            "floor_cool": "Прохолодна підлога",
+                            "floor_heat": "Тепла підлога"
+                        }
+                    }
+                }
+            },
+            "swing_as_powerlevel": {
+                "state_attributes": {
+                    "swing_mode": {
+                        "name": "Рівень нагріву",
+                        "state": {
+                            "stop": "Стій",
+                            "auto": "Авто"
+                        }
+                    }
+                }
+            },
+            "pool_heatpump": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "smart_heat": "Розумне тепло",
+                            "quick_heat": "Швидке тепло",
+                            "quiet_heat": "Тихе тепло",
+                            "smart_cool": "Розумне холонути",
+                            "quick_cool": "Швидке холонути",
+                            "quiet_cool": "Тихе холонути",
+                            "auto": "Авто"
+                        }
+                    }
+                }
+            },
+            "thermo_switch": {
+                "state_attributes": {
+                    "hvac_mode": {
+                        "state": {
+                            "fan_only": "Пауза"
+                        }
+                    }
+                }
+            }
+        },
+        "humidifier": {
+            "dehumidifier": {
+                "state_attributes": {
+                    "mode": {
+                        "state": {
+                            "laundry": "Висушити білизну",
+                            "purify": "Очистити"
+                        }
+                    }
+                }
+            }
+        },
+        "fan": {
+            "fan_with_presets": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "normal": "Нормальний",
+                            "nature": "Природні",
+                            "sleep": "Сон",
+                            "baby": "Дитина",
+                            "fresh": "Свіжий",
+                            "smart": "Розумний",
+                            "strong": "Сильний",
+                            "displayoff": "Дисплей вимк",
+                            "off": "Вимк"
+                        }
+                    }
+                }
+            },
+            "ventilation": {
+                "state_attributes": {
+                    "preset_mode": {
+                        "state": {
+                            "fresh": "Свіже повітря",
+                            "circulate": "Циркулювати",
+                            "sleep": "Сон",
+                            "auto": "Авто",
+                            "eco": "Еко",
+                            "anti-condensation": "Антиконденсат"
+                        }
+                    }
+                }
+            }
+        },
+        "lock": {
+            "child_lock": {
+                "name": "Блокування від дітей"
+            }
+        },
+        "number": {
+            "timer": {
+                "name": "Таймер"
+            }
+        },
+        "select": {
+            "timer": {
+                "name": "Таймер"
+            },
+            "temperature_unit": {
+                "name": "Температурна одиниця",
+                "state": {
+                    "Celsius": "Цельсія",
+                    "Fahrenheit": "Фаренгейт"
+                }
+            }
+        }
+    }
 }

+ 7 - 0
custom_components/tuya_local/translations/ur.json

@@ -208,6 +208,13 @@
         "select": {
             "timer": {
                 "name": "ٹائمر"
+            },
+            "temperature_unit": {
+                "name": "درجہ حرارت یونٹ",
+                "state": {
+                    "Celsius": "سیلسیس",
+                    "Fahrenheit": "فارن ہائیٹ"
+                }
             }
         }
     }

+ 2 - 2
tests/devices/test_inkbird_sousvide.py

@@ -79,7 +79,7 @@ class TestInkbirdSousVideCooker(
         )
         self.setUpBasicSelect(
             UNIT_DPS,
-            self.entities.get("select_temperature_display_unit"),
+            self.entities.get("select_temperature_unit"),
             {
                 False: "Fahrenheit",
                 True: "Celsius",
@@ -97,7 +97,7 @@ class TestInkbirdSousVideCooker(
                 "number_recipe",
                 "number_temperature_calibration",
                 "binary_sensor_fault",
-                "select_temperature_display_unit",
+                "select_temperature_unit",
                 "sensor_remaining_time",
             ]
         )

+ 2 - 0
tests/devices/test_m027_curtain.py

@@ -1,6 +1,7 @@
 """Tests for the M027 curtain module."""
 
 from homeassistant.components.cover import CoverDeviceClass, CoverEntityFeature
+from homeassistant.components.sensor import SensorDeviceClass
 from homeassistant.const import UnitOfTime
 
 from ..const import M027_CURTAIN_PAYLOAD
@@ -38,6 +39,7 @@ class TestM027Curtains(MultiSensorTests, BasicSelectTests, TuyaDeviceTestCase):
                 {
                     "dps": TIMER_DPS,
                     "name": "sensor_time_remaining",
+                    "device_class": SensorDeviceClass.DURATION,
                     "min": 0,
                     "max": 86400,
                     "unit": UnitOfTime.SECONDS,