me80_thermostat.yaml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  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. icon: "mdi:thermometer-chevron-up"
  125. dps:
  126. - id: 18
  127. type: integer
  128. name: max_temp_f
  129. range:
  130. min: 86
  131. max: 203
  132. hidden: true
  133. optional: true
  134. - id: 19
  135. type: integer
  136. name: value
  137. range:
  138. min: 30
  139. max: 95
  140. mapping:
  141. - constraint: unit
  142. conditions:
  143. - dps_val: f
  144. value_redirect: max_temp_f
  145. range:
  146. min: 86
  147. max: 203
  148. - id: 23
  149. type: string
  150. name: unit
  151. mapping:
  152. - dps_val: c
  153. value: C
  154. - dps_val: f
  155. value: F
  156. - entity: number
  157. name: Minimum temperature
  158. category: config
  159. icon: "mdi:thermometer-chevron-down"
  160. dps:
  161. - id: 20
  162. type: integer
  163. name: min_temp_f
  164. range:
  165. min: 41
  166. max: 68
  167. hidden: true
  168. optional: true
  169. - id: 23
  170. type: string
  171. name: unit
  172. mapping:
  173. - dps_val: c
  174. value: C
  175. - dps_val: f
  176. value: F
  177. - id: 26
  178. type: integer
  179. name: value
  180. range:
  181. min: 5
  182. max: 20
  183. mapping:
  184. - constraint: unit
  185. conditions:
  186. - dps_val: f
  187. value_redirect: min_temp_f
  188. range:
  189. min: 41
  190. max: 68
  191. - entity: select
  192. name: Temperature unit
  193. category: config
  194. icon: "mdi:temperature-celsius"
  195. dps:
  196. - id: 23
  197. type: string
  198. name: option
  199. mapping:
  200. - dps_val: c
  201. value: Celsius
  202. - dps_val: f
  203. value: Fahrenheit
  204. - entity: number
  205. name: Temperature calibration
  206. category: config
  207. icon: "mdi:format-vertical-align-center"
  208. dps:
  209. - id: 27
  210. type: integer
  211. name: value
  212. range:
  213. min: -9
  214. max: 9
  215. mapping:
  216. - constraint: temperature_unit
  217. conditions:
  218. - dps_val: f
  219. value_redirect: temp_calib_f
  220. range:
  221. min: -16
  222. max: 16
  223. - id: 23
  224. type: string
  225. name: temperature_unit
  226. hidden: true
  227. - id: 105
  228. type: integer
  229. name: temp_calib_f
  230. hidden: true
  231. optional: true
  232. range:
  233. min: -16
  234. max: 16
  235. - entity: lock
  236. name: Child lock
  237. category: config
  238. icon: "mdi:hand-back-right-off"
  239. dps:
  240. - id: 40
  241. type: boolean
  242. name: lock
  243. - entity: select
  244. name: Sensor
  245. category: config
  246. icon: "mdi:home-thermometer"
  247. dps:
  248. - id: 43
  249. type: string
  250. name: option
  251. mapping:
  252. - dps_val: in
  253. value: Internal
  254. - dps_val: out
  255. value: External
  256. - dps_val: both
  257. value: Both
  258. - entity: binary_sensor
  259. name: Fault
  260. category: diagnostic
  261. class: problem
  262. dps:
  263. - id: 45
  264. type: bitfield
  265. name: sensor
  266. mapping:
  267. - dps_val: 0
  268. value: false
  269. - value: true
  270. - entity: sensor
  271. name: Floor temperature
  272. category: diagnostic
  273. class: temperature
  274. dps:
  275. - id: 101
  276. type: integer
  277. name: sensor
  278. mapping:
  279. - constraint: unit
  280. conditions:
  281. - dps_val: f
  282. value_redirect: floor_temp_f
  283. - id: 102
  284. type: integer
  285. name: floor_temp_f
  286. hidden: true
  287. optional: true
  288. - id: 23
  289. type: string
  290. name: unit
  291. mapping:
  292. - dps_val: c
  293. value: C
  294. - dps_val: f
  295. value: F
  296. - entity: switch
  297. name: Anti-frost
  298. category: config
  299. icon: "mdi:snowflake"
  300. dps:
  301. - id: 103
  302. type: boolean
  303. name: switch
  304. - entity: number
  305. name: Temperature difference start
  306. category: config
  307. icon: "mdi:arrow-collapse-vertical"
  308. dps:
  309. - id: 106
  310. type: integer
  311. name: value
  312. range:
  313. min: 1
  314. max: 5
  315. mapping:
  316. - constraint: temperature_unit
  317. conditions:
  318. - dps_val: f
  319. value_redirect: temp_diff_start_f
  320. range:
  321. min: 1
  322. max: 9
  323. - id: 107
  324. type: integer
  325. name: temp_diff_start_f
  326. hidden: true
  327. optional: true
  328. range:
  329. min: 1
  330. max: 9
  331. - id: 23
  332. type: string
  333. name: temperature_unit
  334. hidden: true