me80_thermostat.yaml 7.3 KB

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