me80_thermostat.yaml 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. name: ME80 thermostat
  2. primary_entity:
  3. entity: climate
  4. translation_only_key: thermostat
  5. dps:
  6. - id: 1
  7. type: boolean
  8. name: hvac_mode
  9. mapping:
  10. - dps_val: true
  11. constraint: preset_mode
  12. conditions:
  13. - dps_val: auto
  14. value: auto
  15. - dps_val: manual
  16. value: heat
  17. # in case of unknown presets
  18. - value: heat
  19. - dps_val: false
  20. value: "off"
  21. - id: 2
  22. type: string
  23. name: preset_mode
  24. mapping:
  25. - dps_val: auto
  26. value: program
  27. - dps_val: manual
  28. value: manual
  29. - id: 16
  30. type: integer
  31. name: temperature
  32. range:
  33. min: 5
  34. max: 95
  35. mapping:
  36. - constraint: temperature_unit
  37. conditions:
  38. - dps_val: f
  39. value_redirect: target_temp_f
  40. range:
  41. min: 41
  42. max: 203
  43. - id: 17
  44. type: integer
  45. name: target_temp_f
  46. range:
  47. min: 41
  48. max: 203
  49. hidden: true
  50. optional: true
  51. - id: 18
  52. type: integer
  53. name: max_temp_f
  54. hidden: true
  55. optional: true
  56. - id: 19
  57. type: integer
  58. name: max_temperature
  59. mapping:
  60. - constraint: temperature_unit
  61. conditions:
  62. - dps_val: f
  63. value_redirect: max_temp_f
  64. - id: 20
  65. type: integer
  66. name: min_temp_f
  67. hidden: true
  68. optional: true
  69. - id: 23
  70. type: string
  71. name: temperature_unit
  72. mapping:
  73. - dps_val: c
  74. value: C
  75. - dps_val: f
  76. value: F
  77. - id: 24
  78. type: integer
  79. name: current_temperature
  80. mapping:
  81. - constraint: temperature_unit
  82. conditions:
  83. - dps_val: f
  84. value_redirect: current_temp_f
  85. - id: 26
  86. type: integer
  87. name: min_temperature
  88. mapping:
  89. - constraint: temperature_unit
  90. conditions:
  91. - dps_val: f
  92. value_redirect: min_temp_f
  93. - id: 29
  94. type: integer
  95. name: current_temp_f
  96. hidden: true
  97. optional: true
  98. - id: 36
  99. type: string
  100. name: hvac_action
  101. mapping:
  102. - dps_val: close
  103. value: idle
  104. constraint: hvac_mode
  105. conditions:
  106. - dps_val: false
  107. value: "off"
  108. - dps_val: open
  109. value: heating
  110. constraint: hvac_mode
  111. conditions:
  112. - dps_val: false
  113. value: "off"
  114. # 39 = factory reset (boolean but seems write only)
  115. - id: 45
  116. type: bitfield
  117. name: fault_code
  118. - id: 104
  119. type: string
  120. name: program
  121. secondary_entities:
  122. - entity: number
  123. name: Maximum Temperature
  124. category: config
  125. class: temperature
  126. icon: "mdi:thermometer-chevron-up"
  127. dps:
  128. - id: 18
  129. type: integer
  130. name: max_temp_f
  131. range:
  132. min: 86
  133. max: 203
  134. hidden: true
  135. optional: true
  136. - id: 19
  137. type: integer
  138. name: value
  139. range:
  140. min: 30
  141. max: 95
  142. mapping:
  143. - constraint: unit
  144. conditions:
  145. - dps_val: f
  146. value_redirect: max_temp_f
  147. range:
  148. min: 86
  149. max: 203
  150. - id: 23
  151. type: string
  152. name: unit
  153. mapping:
  154. - dps_val: c
  155. value: C
  156. - dps_val: f
  157. value: F
  158. - entity: number
  159. name: Minimum temperature
  160. category: config
  161. class: temperature
  162. icon: "mdi:thermometer-chevron-down"
  163. dps:
  164. - id: 20
  165. type: integer
  166. name: min_temp_f
  167. range:
  168. min: 41
  169. max: 68
  170. hidden: true
  171. optional: true
  172. - id: 23
  173. type: string
  174. name: unit
  175. mapping:
  176. - dps_val: c
  177. value: C
  178. - dps_val: f
  179. value: F
  180. - id: 26
  181. type: integer
  182. name: value
  183. range:
  184. min: 5
  185. max: 20
  186. mapping:
  187. - constraint: unit
  188. conditions:
  189. - dps_val: f
  190. value_redirect: min_temp_f
  191. range:
  192. min: 41
  193. max: 68
  194. - entity: select
  195. translation_key: temperature_unit
  196. category: config
  197. dps:
  198. - id: 23
  199. type: string
  200. name: option
  201. mapping:
  202. - dps_val: c
  203. value: celsius
  204. - dps_val: f
  205. value: fahrenheit
  206. - entity: number
  207. name: Temperature calibration
  208. category: config
  209. icon: "mdi:format-vertical-align-center"
  210. dps:
  211. - id: 27
  212. type: integer
  213. name: value
  214. range:
  215. min: -9
  216. max: 9
  217. mapping:
  218. - constraint: temperature_unit
  219. conditions:
  220. - dps_val: f
  221. value_redirect: temp_calib_f
  222. range:
  223. min: -16
  224. max: 16
  225. - id: 23
  226. type: string
  227. name: temperature_unit
  228. hidden: true
  229. - id: 105
  230. type: integer
  231. name: temp_calib_f
  232. hidden: true
  233. optional: true
  234. range:
  235. min: -16
  236. max: 16
  237. - entity: lock
  238. translation_key: child_lock
  239. category: config
  240. dps:
  241. - id: 40
  242. type: boolean
  243. name: lock
  244. - entity: select
  245. name: Sensor
  246. category: config
  247. icon: "mdi:home-thermometer"
  248. dps:
  249. - id: 43
  250. type: string
  251. name: option
  252. mapping:
  253. - dps_val: in
  254. value: Internal
  255. - dps_val: out
  256. value: External
  257. - dps_val: both
  258. value: Both
  259. - entity: binary_sensor
  260. name: Fault
  261. category: diagnostic
  262. class: problem
  263. dps:
  264. - id: 45
  265. type: bitfield
  266. name: sensor
  267. mapping:
  268. - dps_val: 0
  269. value: false
  270. - value: true
  271. - entity: sensor
  272. name: Floor temperature
  273. category: diagnostic
  274. class: temperature
  275. dps:
  276. - id: 101
  277. type: integer
  278. name: sensor
  279. mapping:
  280. - constraint: unit
  281. conditions:
  282. - dps_val: f
  283. value_redirect: floor_temp_f
  284. - id: 102
  285. type: integer
  286. name: floor_temp_f
  287. hidden: true
  288. optional: true
  289. - id: 23
  290. type: string
  291. name: unit
  292. mapping:
  293. - dps_val: c
  294. value: C
  295. - dps_val: f
  296. value: F
  297. - entity: switch
  298. name: Anti-frost
  299. category: config
  300. icon: "mdi:snowflake"
  301. dps:
  302. - id: 103
  303. type: boolean
  304. name: switch
  305. - entity: number
  306. name: Temperature difference start
  307. category: config
  308. icon: "mdi:arrow-collapse-vertical"
  309. dps:
  310. - id: 106
  311. type: integer
  312. name: value
  313. range:
  314. min: 1
  315. max: 5
  316. mapping:
  317. - constraint: temperature_unit
  318. conditions:
  319. - dps_val: f
  320. value_redirect: temp_diff_start_f
  321. range:
  322. min: 1
  323. max: 9
  324. - id: 107
  325. type: integer
  326. name: temp_diff_start_f
  327. hidden: true
  328. optional: true
  329. range:
  330. min: 1
  331. max: 9
  332. - id: 23
  333. type: string
  334. name: temperature_unit
  335. hidden: true