Advertisement
Guest User

Untitled

a guest
Jan 10th, 2024
178
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 102.26 KB | None | 0 0
  1. substitutions:
  2. devicename: heatpump
  3. description: Heatpump Controller
  4. entity_prefix: Heatpump
  5.  
  6. globals:
  7. - id: unmasked_value_water_temperature_t1s
  8. type: int
  9. restore_value: no
  10. initial_value: '0'
  11. - id: unmasked_curve_selection
  12. type: int
  13. restore_value: no
  14. initial_value: '0'
  15.  
  16. esphome:
  17. name: "${devicename}"
  18. comment: "${description}"
  19. friendly_name: "${description}"
  20.  
  21. esp32:
  22. board: esp32dev
  23. framework:
  24. type: arduino
  25.  
  26. # Enable logging
  27. logger:
  28. level: VERBOSE
  29. baud_rate: 115200
  30.  
  31. dallas:
  32. - pin: GPIO15
  33.  
  34.  
  35.  
  36. # sensor:
  37. # - platform: dallas
  38. # address: 0xd7041700247fff28
  39. # name: "temperature"
  40.  
  41. # Enable Home Assistant API
  42. api:
  43.  
  44. web_server:
  45. port: 80
  46.  
  47. ota:
  48.  
  49. ethernet:
  50. type: LAN8720
  51. mdc_pin: GPIO23
  52. mdio_pin: GPIO18
  53. clk_mode: GPIO17_OUT
  54. phy_addr: 0
  55.  
  56. i2c:
  57. - id: bus_a
  58. sda: 16
  59. scl: 5
  60. scan: true
  61. frequency: 400kHz
  62.  
  63. pcf8574:
  64. - id: 'pcf8574_hub_out_1' # for output channel 1-12 CS1-CS3
  65. i2c_id: bus_a
  66. address: 0x21
  67. pcf8575: true
  68.  
  69. - id: 'pcf8574_hub_out_2' # for output channel 13-24
  70. i2c_id: bus_a
  71. address: 0x22
  72. pcf8575: true
  73.  
  74. - id: 'pcf8574_hub_in_1' # for input channel 1-16
  75. i2c_id: bus_a
  76. address: 0x24
  77. pcf8575: true
  78.  
  79. - id: 'pcf8574_hub_in_2' # for a24--input channel 17-32
  80. i2c_id: bus_a
  81. address: 0x25
  82. pcf8575: true
  83.  
  84. # wifi:
  85. # power_save_mode: none
  86. # ssid: !secret wifi_ssid
  87. # password: !secret wifi_password
  88. #
  89. # # Enable fallback hotspot (captive portal) in case wifi connection fails
  90. # ap:
  91. # ssid: "${devicename}-setup"
  92. # password: "heatpump"
  93.  
  94. # captive_portal:
  95.  
  96. uart:
  97. id: mod_bus
  98. tx_pin: 33
  99. rx_pin: 32
  100. baud_rate: 9600
  101. stop_bits: 1
  102. parity: EVEN
  103.  
  104. modbus:
  105. id: heatpump_modbus
  106. uart_id: mod_bus
  107.  
  108. modbus_controller:
  109. - id: "${devicename}"
  110. ## the Modbus device addr
  111. address: 0x1
  112. modbus_id: heatpump_modbus
  113. setup_priority: -10
  114. update_interval: 10s
  115.  
  116. - id: "fancoil"
  117. ## the Modbus device addr
  118. address: 0x2
  119. modbus_id: heatpump_modbus
  120. setup_priority: -10
  121. update_interval: 10s
  122.  
  123. spi:
  124. - id: spi_bus0
  125. clk_pin: 14
  126. miso_pin: 12
  127.  
  128. gp8403:
  129. id: my_gp8403
  130. voltage: 10V
  131.  
  132. output:
  133. - platform: gp8403
  134. id: gp8403_output_1
  135. gp8403_id: my_gp8403
  136. channel: 0
  137. - platform: gp8403
  138. id: gp8403_output_2
  139. gp8403_id: my_gp8403
  140. channel: 1
  141.  
  142. light:
  143. - platform: monochromatic
  144. name: "A24-DAC-1"
  145. output: gp8403_output_1
  146. - platform: monochromatic
  147. name: "A24-DAC-2"
  148. output: gp8403_output_2
  149.  
  150. sensor:
  151. - platform: dallas
  152. address: 0xd7041700247fff28
  153. name: "temperature"
  154. - platform: template
  155. name: "Heatpump_Atlag_COP"
  156. unit_of_measurement: "COP"
  157. lambda: |-
  158. return ( (id(${devicename}_power_output).state / id(${devicename}_electricity_consumption).state ) );
  159. accuracy_decimals: 4
  160. update_interval: 15s
  161. - platform: template
  162. name: "Heatpump_Pillanatnyi_COP"
  163. unit_of_measurement: "COP"
  164. lambda: |-
  165. return ( (id(${devicename}_ability_of_hydraulic_module).state / id(${devicename}_outdoor_unit_current).state * id(${devicename}_outdoor_unit_voltage).state /100 ) );
  166. accuracy_decimals: 4
  167. update_interval: 15s
  168. # fancoil Register: 1
  169. - platform: modbus_controller
  170. modbus_controller_id: "fancoil"
  171. name: "Fancoil Operational Mode"
  172. id: "fancoil_operational_mode"
  173. register_type: holding
  174. address: 1601
  175. value_type: U_WORD
  176. # fancoil Register: 4
  177. - platform: modbus_controller
  178. modbus_controller_id: "fancoil"
  179. name: "Fancoil indoor Temp"
  180. id: "fancoil_indoor_temp"
  181. register_type: holding
  182. address: 1604
  183. value_type: U_WORD
  184. unit_of_measurement: "°C"
  185. # fancoil Register: 5
  186. - platform: modbus_controller
  187. modbus_controller_id: "fancoil"
  188. name: "Fancoil CW temp"
  189. id: "fancoil_cw_temp"
  190. register_type: holding
  191. address: 1605
  192. value_type: U_WORD
  193. unit_of_measurement: "°C"
  194. # fancoil Register: 6
  195. - platform: modbus_controller
  196. modbus_controller_id: "fancoil"
  197. name: "Fancoil HW temp"
  198. id: "fancoil_hw_temp"
  199. register_type: holding
  200. address: 1606
  201. value_type: U_WORD
  202. unit_of_measurement: "°C"
  203. # fancoil Register: 13
  204. - platform: modbus_controller
  205. modbus_controller_id: "fancoil"
  206. name: "Fancoil water pump status"
  207. id: "fancoil_waterpump_status"
  208. register_type: holding
  209. address: 1613
  210. value_type: U_WORD
  211.  
  212.  
  213. - platform: adc
  214. pin: 35
  215. name: "A24 A1 Voltage"
  216. update_interval: 10s
  217. attenuation: 11db
  218. filters:
  219. - lambda:
  220. if (x >= 3.11) {
  221. return x * 1.60256;
  222. } else if (x <= 0.15) {
  223. return 0;
  224. } else {
  225. return x * 1.51;
  226. }
  227. - platform: adc
  228. pin: 34
  229. name: "A24 A2 Voltage"
  230. update_interval: 10s
  231. attenuation: 11db
  232. filters:
  233. # - multiply: 1.51515
  234. - lambda:
  235. if (x >= 3.11) {
  236. return x * 1.60256;
  237. } else if (x <= 0.15) {
  238. return 0;
  239. } else {
  240. return x * 1.51;
  241. }
  242. - platform: adc
  243. pin: 39
  244. name: "A24 A3 Current"
  245. update_interval: 10s
  246. unit_of_measurement: mA
  247. attenuation: 11db
  248. filters:
  249. - multiply: 6.66666666
  250. - platform: adc
  251. pin: 36
  252. name: "A24 A4 Current"
  253. update_interval: 10s
  254. unit_of_measurement: mA
  255. attenuation: 11db
  256. filters:
  257. - multiply: 6.66666666
  258.  
  259. - platform: max31855
  260. name: "K-Type Thermocouple-1"
  261. cs_pin:
  262. pcf8574: pcf8574_hub_out_1
  263. number: 13
  264. mode: OUTPUT
  265. inverted: false
  266. update_interval: 5s
  267.  
  268. - platform: max31855
  269. name: "K-Type Thermocouple-2"
  270. cs_pin:
  271. pcf8574: pcf8574_hub_out_1
  272. number: 14
  273. mode: OUTPUT
  274. inverted: false
  275. update_interval: 5s
  276.  
  277. - platform: max31855
  278. name: "K-Type Thermocouple-3"
  279. cs_pin:
  280. pcf8574: pcf8574_hub_out_1
  281. number: 15
  282. mode: OUTPUT
  283. inverted: false
  284. update_interval: 5s
  285.  
  286. - platform: uptime
  287. name: "${entity_prefix} Uptime"
  288. # Register: 1
  289. - platform: modbus_controller
  290. modbus_controller_id: "${devicename}"
  291. name: "${entity_prefix} Operational Mode"
  292. id: "${devicename}_operational_mode"
  293. register_type: holding
  294. address: 0x1
  295. value_type: U_WORD
  296. # Register: 2 -> Is present in this config as a 'number'
  297. # Register: 3
  298. - platform: modbus_controller
  299. modbus_controller_id: "${devicename}"
  300. name: "${entity_prefix} Air Temperature Ts"
  301. id: "${devicename}_air_temperature_ts"
  302. register_type: holding
  303. address: 0x3
  304. value_type: U_WORD
  305. unit_of_measurement: "°C"
  306. filters:
  307. - multiply: 0.5
  308. # Register: 4
  309. - platform: modbus_controller
  310. modbus_controller_id: "${devicename}"
  311. name: "${entity_prefix} DHW Tank Temperature T5s"
  312. id: "${devicename}_dhw_tank_temperature_t5s"
  313. register_type: holding
  314. address: 0x4
  315. value_type: U_WORD
  316. unit_of_measurement: "°C"
  317. # Register: 6 -> Is present in this config as a 'number'
  318. # Register: 7
  319. - platform: modbus_controller
  320. modbus_controller_id: "${devicename}"
  321. name: "${entity_prefix} Forced Water Tank Heating"
  322. id: "${devicename}_forced_water_tank_heating"
  323. register_type: holding
  324. address: 0x7
  325. value_type: U_WORD
  326. # Register: 8
  327. - platform: modbus_controller
  328. modbus_controller_id: "${devicename}"
  329. name: "${entity_prefix} Forced Tank Backup Heater"
  330. id: "${devicename}_forced_tbh"
  331. register_type: holding
  332. address: 0x8
  333. value_type: U_WORD
  334. # Register: 9
  335. - platform: modbus_controller
  336. modbus_controller_id: "${devicename}"
  337. name: "${entity_prefix} Forced Hydraulic Module Rear Electric Heater 1"
  338. id: "${devicename}_forced_hydraulic_module_rear_electric_heater_1"
  339. register_type: holding
  340. address: 0x9
  341. value_type: U_WORD
  342. # Register: 10
  343. - platform: modbus_controller
  344. modbus_controller_id: "${devicename}"
  345. name: "${entity_prefix} t_SG_MAX"
  346. id: "${devicename}_t_sg_max"
  347. register_type: holding
  348. address: 0xa
  349. value_type: U_WORD
  350. unit_of_measurement: hr
  351.  
  352. # Register: 100
  353. - platform: modbus_controller
  354. modbus_controller_id: "${devicename}"
  355. name: "${entity_prefix} Compressor Operating Frequency"
  356. id: "${devicename}_compressor_operating_frequency"
  357. register_type: holding
  358. address: 0x64
  359. value_type: U_WORD
  360. unit_of_measurement: Hz
  361. # Register: 101
  362. - platform: modbus_controller
  363. modbus_controller_id: "${devicename}"
  364. name: "${entity_prefix} Operating Mode"
  365. id: "${devicename}_operating_mode"
  366. register_type: holding
  367. address: 0x65
  368. value_type: U_WORD
  369. # Register: 102
  370. - platform: modbus_controller
  371. modbus_controller_id: "${devicename}"
  372. name: "${entity_prefix} Fan Speed"
  373. id: "${devicename}_fan_speed"
  374. register_type: holding
  375. address: 0x66
  376. unit_of_measurement: "r/min"
  377. value_type: U_WORD
  378. icon: mdi:fan
  379. # Register: 103
  380. - platform: modbus_controller
  381. modbus_controller_id: "${devicename}"
  382. name: "${entity_prefix} PMV Openness"
  383. id: "${devicename}_pmv_openness"
  384. register_type: holding
  385. address: 0x67
  386. value_type: U_WORD
  387. unit_of_measurement: "Pa"
  388. # Register: 104
  389. - platform: modbus_controller
  390. modbus_controller_id: "${devicename}"
  391. name: "${entity_prefix} Water Inlet Temperature"
  392. id: "${devicename}_water_inlet_temperature"
  393. register_type: holding
  394. address: 0x68
  395. value_type: U_WORD
  396. unit_of_measurement: "°C"
  397. # Register: 105
  398. - platform: modbus_controller
  399. modbus_controller_id: "${devicename}"
  400. name: "${entity_prefix} Water Outlet Temperature"
  401. id: "${devicename}_water_outlet_temperature"
  402. register_type: holding
  403. address: 0x69
  404. value_type: U_WORD
  405. unit_of_measurement: "°C"
  406. # Register: 106
  407. - platform: modbus_controller
  408. modbus_controller_id: "${devicename}"
  409. name: "${entity_prefix} Condensor Temperature T3"
  410. id: "${devicename}_condensor_temperature_t3"
  411. register_type: holding
  412. address: 0x6a
  413. value_type: S_WORD
  414. unit_of_measurement: "°C"
  415. # Register: 107
  416. - platform: modbus_controller
  417. modbus_controller_id: "${devicename}"
  418. name: "${entity_prefix} Outdoor Ambient Temperature"
  419. id: "${devicename}_outdoor_ambient_temperature"
  420. register_type: holding
  421. address: 0x6B
  422. unit_of_measurement: "°C"
  423. value_type: S_WORD
  424. # Register: 108
  425. - platform: modbus_controller
  426. modbus_controller_id: "${devicename}"
  427. name: "${entity_prefix} Discharge Temperature"
  428. id: "${devicename}_discharge_temperature"
  429. register_type: holding
  430. address: 0x6c
  431. value_type: U_WORD
  432. unit_of_measurement: "°C"
  433. # Register: 109
  434. - platform: modbus_controller
  435. modbus_controller_id: "${devicename}"
  436. name: "${entity_prefix} Return Air Temperature"
  437. id: "${devicename}_return_air_temperature"
  438. register_type: holding
  439. address: 0x6d
  440. value_type: S_WORD
  441. unit_of_measurement: "°C"
  442. # Register: 110
  443. - platform: modbus_controller
  444. modbus_controller_id: "${devicename}"
  445. name: "${entity_prefix} Total Water Outlet Temperature T1"
  446. id: "${devicename}_total_water_outlet_temperature_t1"
  447. register_type: holding
  448. address: 0x6e
  449. value_type: U_WORD
  450. unit_of_measurement: "°C"
  451. # Register: 111
  452. - platform: modbus_controller
  453. modbus_controller_id: "${devicename}"
  454. name: "${entity_prefix} System Total Water Outlet Temperature T1B"
  455. id: "${devicename}_system_total_water_outlet_temperature_t1b"
  456. register_type: holding
  457. address: 0x6f
  458. value_type: U_WORD
  459. unit_of_measurement: "°C"
  460. # Register: 112
  461. - platform: modbus_controller
  462. modbus_controller_id: "${devicename}"
  463. name: "${entity_prefix} Refrigerant Liquid Side Temperature T2"
  464. id: "${devicename}_refrigerant_liquid_side_temperature_t2"
  465. register_type: holding
  466. address: 0x70
  467. value_type: U_WORD
  468. unit_of_measurement: "°C"
  469. # Register: 113
  470. - platform: modbus_controller
  471. modbus_controller_id: "${devicename}"
  472. name: "${entity_prefix} Refrigerant Gas Side Temperature T2B"
  473. id: "${devicename}_refrigerant_gas_side_temperature_t2b"
  474. register_type: holding
  475. address: 0x71
  476. value_type: U_WORD
  477. unit_of_measurement: "°C"
  478. # Register: 114
  479. - platform: modbus_controller
  480. modbus_controller_id: "${devicename}"
  481. name: "${entity_prefix} Room Temperature Ta"
  482. id: "${devicename}_room_temperature_ta"
  483. register_type: holding
  484. address: 0x72
  485. value_type: U_WORD
  486. unit_of_measurement: "°C"
  487. # Register: 115
  488. - platform: modbus_controller
  489. modbus_controller_id: "${devicename}"
  490. name: "${entity_prefix} Water Tank Temperature T5"
  491. id: "${devicename}_water_tank_temperature_t5"
  492. register_type: holding
  493. address: 0x73
  494. unit_of_measurement: "°C"
  495. value_type: U_WORD
  496. icon: mdi:thermometer-water
  497. # Register: 116
  498. - platform: modbus_controller
  499. modbus_controller_id: "${devicename}"
  500. name: "${entity_prefix} Outdoor Unit High Pressure"
  501. id: "${devicename}_outdoor_unit_high_pressure"
  502. register_type: holding
  503. address: 0x74
  504. value_type: U_WORD
  505. unit_of_measurement: kPA
  506. # Register: 117
  507. - platform: modbus_controller
  508. modbus_controller_id: "${devicename}"
  509. name: "${entity_prefix} Outdoor Unit Low Pressure"
  510. id: "${devicename}_outdoor_unit_low_pressure"
  511. register_type: holding
  512. address: 0x75
  513. value_type: U_WORD
  514. unit_of_measurement: kPA
  515. # Register: 118
  516. - platform: modbus_controller
  517. modbus_controller_id: "${devicename}"
  518. name: "${entity_prefix} Outdoor Unit Current"
  519. id: "${devicename}_outdoor_unit_current"
  520. register_type: holding
  521. address: 0x76
  522. value_type: U_WORD
  523. unit_of_measurement: A
  524. # Register: 119
  525. - platform: modbus_controller
  526. modbus_controller_id: "${devicename}"
  527. name: "${entity_prefix} Outdoor Unit Voltage"
  528. id: "${devicename}_outdoor_unit_voltage"
  529. register_type: holding
  530. address: 0x77
  531. value_type: U_WORD
  532. unit_of_measurement: V
  533. # Register: 120
  534. # Midea: Tbt1
  535. - platform: modbus_controller
  536. modbus_controller_id: "${devicename}"
  537. name: "${entity_prefix} Hydraulic Module Current 1"
  538. id: "${devicename}_hydraulic_module_current_1"
  539. register_type: holding
  540. address: 0x78
  541. value_type: U_WORD
  542. # Register: 121
  543. # Midea: Tbt2
  544. - platform: modbus_controller
  545. modbus_controller_id: "${devicename}"
  546. name: "${entity_prefix} Hydraulic Module Current 2"
  547. id: "${devicename}_hydraulic_module_current_2"
  548. register_type: holding
  549. address: 0x79
  550. value_type: U_WORD
  551. # Register: 122
  552. - platform: modbus_controller
  553. modbus_controller_id: "${devicename}"
  554. name: "${entity_prefix} Compressor Operation Time"
  555. id: "${devicename}_compressor_operation_time"
  556. register_type: holding
  557. address: 0x7a
  558. value_type: U_WORD
  559. unit_of_measurement: hr
  560. # Register: 123
  561. - platform: modbus_controller
  562. modbus_controller_id: "${devicename}"
  563. name: "${entity_prefix} Unit Capacity"
  564. id: "${devicename}_unit_capacity"
  565. register_type: holding
  566. address: 0x7b
  567. value_type: U_WORD
  568. # Register: 124
  569. - platform: modbus_controller
  570. modbus_controller_id: "${devicename}"
  571. name: "${entity_prefix} Current Fault"
  572. id: "${devicename}_current_fault"
  573. register_type: holding
  574. entity_category: diagnostic
  575. address: 0x7c
  576. value_type: U_WORD
  577. # Register: 125
  578. - platform: modbus_controller
  579. modbus_controller_id: "${devicename}"
  580. name: "${entity_prefix} Fault 1"
  581. id: "${devicename}_fault_1"
  582. register_type: holding
  583. entity_category: diagnostic
  584. address: 0x7d
  585. value_type: U_WORD
  586. # Register: 126
  587. - platform: modbus_controller
  588. modbus_controller_id: "${devicename}"
  589. name: "${entity_prefix} Fault 2"
  590. id: "${devicename}_fault_2"
  591. register_type: holding
  592. entity_category: diagnostic
  593. address: 0x7e
  594. value_type: U_WORD
  595. # Register: 127
  596. - platform: modbus_controller
  597. modbus_controller_id: "${devicename}"
  598. name: "${entity_prefix} Fault 3"
  599. id: "${devicename}_fault_3"
  600. register_type: holding
  601. entity_category: diagnostic
  602. address: 0x7f
  603. value_type: U_WORD
  604. # Register: 130
  605. - platform: modbus_controller
  606. modbus_controller_id: "${devicename}"
  607. name: "${entity_prefix} Software Version"
  608. id: "${devicename}_software_version"
  609. register_type: holding
  610. address: 0x82
  611. value_type: U_WORD
  612. # Register: 131
  613. - platform: modbus_controller
  614. modbus_controller_id: "${devicename}"
  615. name: "${entity_prefix} Wired Controller Version Number"
  616. id: "${devicename}_wired_controller_version_number"
  617. register_type: holding
  618. address: 0x83
  619. value_type: U_WORD
  620. # Register: 132
  621. - platform: modbus_controller
  622. modbus_controller_id: "${devicename}"
  623. name: "${entity_prefix} Compressor Target Frequency"
  624. id: "${devicename}_compressor_target_frequency"
  625. register_type: holding
  626. address: 0x84
  627. value_type: U_WORD
  628. unit_of_measurement: Hz
  629. # Register: 133
  630. - platform: modbus_controller
  631. modbus_controller_id: "${devicename}"
  632. name: "${entity_prefix} DC Bus Current"
  633. id: "${devicename}_dc_bus_current"
  634. register_type: holding
  635. address: 0x85
  636. value_type: U_WORD
  637. unit_of_measurement: A
  638. # Register: 134
  639. - platform: modbus_controller
  640. modbus_controller_id: "${devicename}"
  641. name: "${entity_prefix} DC Bus Voltage"
  642. id: "${devicename}_dc_bus_voltage"
  643. register_type: holding
  644. address: 0x86
  645. value_type: U_WORD
  646. unit_of_measurement: V
  647. filters:
  648. - multiply: 10
  649. # Register: 135
  650. - platform: modbus_controller
  651. modbus_controller_id: "${devicename}"
  652. name: "${entity_prefix} TF module temperature"
  653. id: "${devicename}_tf_module_temperature"
  654. register_type: holding
  655. address: 0x87
  656. unit_of_measurement: "°C"
  657. value_type: U_WORD
  658. # Register: 136
  659. - platform: modbus_controller
  660. modbus_controller_id: "${devicename}"
  661. name: "${entity_prefix} Climate Curve T1S Calculated Value 1"
  662. id: "${devicename}_climate_curve_t1s_calculated_value_1"
  663. register_type: holding
  664. address: 0x88
  665. value_type: U_WORD
  666. unit_of_measurement: "°C"
  667. # Register: 137
  668. - platform: modbus_controller
  669. modbus_controller_id: "${devicename}"
  670. name: "${entity_prefix} Climate Curve T1S Calculated Value 2"
  671. id: "${devicename}_climate_curve_t1s_calculated_value_2"
  672. register_type: holding
  673. address: 0x89
  674. value_type: U_WORD
  675. # Register: 138
  676. - platform: modbus_controller
  677. modbus_controller_id: "${devicename}"
  678. name: "${entity_prefix} Water Flow"
  679. id: "${devicename}_water_flow"
  680. register_type: holding
  681. address: 0x8a
  682. value_type: U_WORD
  683. unit_of_measurement: m3/H
  684. accuracy_decimals: 2
  685. filters:
  686. - lambda: return x * 0.01;
  687. # Register: 139
  688. - platform: modbus_controller
  689. modbus_controller_id: "${devicename}"
  690. name: "${entity_prefix} Limit Scheme Of Outdoor Unit Current"
  691. id: "${devicename}_limit_scheme_of_outdoor_unit_current"
  692. register_type: holding
  693. address: 0x8b
  694. value_type: U_WORD
  695. # Register: 140
  696. - platform: modbus_controller
  697. modbus_controller_id: "${devicename}"
  698. name: "${entity_prefix} Ability Of Hydraulic Module"
  699. id: "${devicename}_ability_of_hydraulic_module"
  700. register_type: holding
  701. address: 0x8c
  702. value_type: U_WORD
  703. unit_of_measurement: kW
  704. accuracy_decimals: 2
  705. filters:
  706. - lambda: return x * 0.01;
  707. # Register: 141
  708. - platform: modbus_controller
  709. modbus_controller_id: "${devicename}"
  710. name: "${entity_prefix} Tsolar"
  711. id: "${devicename}_tsolar"
  712. register_type: holding
  713. address: 0x8d
  714. value_type: U_WORD
  715. # Register: 143 and 144
  716. # U_DWORD combines this register with the next one
  717. - platform: modbus_controller
  718. modbus_controller_id: "${devicename}"
  719. name: "${entity_prefix} Electricity Consumption"
  720. id: "${devicename}_electricity_consumption"
  721. register_type: holding
  722. unit_of_measurement: "kWh"
  723. state_class: total_increasing
  724. address: 0x8f
  725. value_type: U_DWORD
  726. # Register: 145 and 146
  727. # U_DWORD combines this register with the next one
  728. - platform: modbus_controller
  729. modbus_controller_id: "${devicename}"
  730. name: "${entity_prefix} Power Output"
  731. id: "${devicename}_power_output"
  732. register_type: holding
  733. unit_of_measurement: "kWh"
  734. state_class: total_increasing
  735. address: 0x91
  736. value_type: U_DWORD
  737.  
  738. # Register: 200 (High byte)
  739. - platform: modbus_controller
  740. modbus_controller_id: "${devicename}"
  741. name: "${entity_prefix} Home Appliance Type"
  742. id: "${devicename}_home_appliance_type"
  743. register_type: holding
  744. address: 0xc8
  745. value_type: U_WORD
  746. bitmask: 0x00FF
  747. # Register: 200 (Low byte, first 4 bits)
  748. - platform: modbus_controller
  749. modbus_controller_id: "${devicename}"
  750. name: "${entity_prefix} Home Appliance Sub Type"
  751. id: "${devicename}_home_appliance_sub_type"
  752. register_type: holding
  753. address: 0xc8
  754. value_type: U_WORD
  755. bitmask: 0xF000
  756. # Register: 200 (Low byte, second 4 bits)
  757. - platform: modbus_controller
  758. modbus_controller_id: "${devicename}"
  759. name: "${entity_prefix} Home Appliance Product Code"
  760. id: "${devicename}_home_appliance_product_code"
  761. register_type: holding
  762. address: 0xc8
  763. value_type: U_WORD
  764. bitmask: 0x0F00
  765. # Register: 201 (Low)
  766. - platform: modbus_controller
  767. modbus_controller_id: "${devicename}"
  768. name: "${entity_prefix} Temperature Upper Limit Of T1S Cooling Zone 1"
  769. id: "${devicename}_temperature_upper_limit_of_t1s_cooling_zone_1"
  770. register_type: holding
  771. address: 0xc9
  772. value_type: U_WORD
  773. unit_of_measurement: "°C"
  774. bitmask: 0x00FF
  775. # Register: 201 (High)
  776. - platform: modbus_controller
  777. modbus_controller_id: "${devicename}"
  778. name: "${entity_prefix} Temperature Upper Limit Of T1S Cooling Zone 2"
  779. id: "${devicename}_temperature_upper_limit_of_t1s_cooling_zone_2"
  780. register_type: holding
  781. address: 0xc9
  782. value_type: U_WORD
  783. unit_of_measurement: "°C"
  784. bitmask: 0xFF00
  785. # Register: 202 (Low)
  786. - platform: modbus_controller
  787. modbus_controller_id: "${devicename}"
  788. name: "${entity_prefix} Temperature Lower Limit Of T1S Cooling Zone 1"
  789. id: "${devicename}_temperature_lower_limit_of_t1s_cooling_zone_1"
  790. register_type: holding
  791. address: 0xca
  792. value_type: U_WORD
  793. unit_of_measurement: "°C"
  794. bitmask: 0x00FF
  795. # Register: 202 (High)
  796. - platform: modbus_controller
  797. modbus_controller_id: "${devicename}"
  798. name: "${entity_prefix} Temperature Lower Limit Of T1S Cooling Zone 2"
  799. id: "${devicename}_temperature_lower_limit_of_t1s_cooling_zone_2"
  800. register_type: holding
  801. address: 0xca
  802. value_type: U_WORD
  803. unit_of_measurement: "°C"
  804. bitmask: 0xFF00
  805. # Register: 203 (Low)
  806. - platform: modbus_controller
  807. modbus_controller_id: "${devicename}"
  808. name: "${entity_prefix} Temperature Upper Limit Of T1S Heating Zone 1"
  809. id: "${devicename}_temperature_upper_limit_of_t1s_heating_zone_1"
  810. register_type: holding
  811. address: 0xcb
  812. value_type: U_WORD
  813. unit_of_measurement: "°C"
  814. bitmask: 0x00FF
  815. # Register: 203 (High)
  816. - platform: modbus_controller
  817. modbus_controller_id: "${devicename}"
  818. name: "${entity_prefix} Temperature Upper Limit Of T1S Heating Zone 2"
  819. id: "${devicename}_temperature_upper_limit_of_t1s_heating_zone_2"
  820. register_type: holding
  821. address: 0xcb
  822. value_type: U_WORD
  823. unit_of_measurement: "°C"
  824. bitmask: 0xFF00
  825. # Register: 204 (Low)
  826. - platform: modbus_controller
  827. modbus_controller_id: "${devicename}"
  828. name: "${entity_prefix} Temperature Lower Limit Of T1S Heating Zone 1"
  829. id: "${devicename}_temperature_lower_limit_of_t1s_heating_zone_1"
  830. register_type: holding
  831. address: 0xcc
  832. value_type: U_WORD
  833. unit_of_measurement: "°C"
  834. bitmask: 0x00FF
  835. # Register: 204 (High)
  836. - platform: modbus_controller
  837. modbus_controller_id: "${devicename}"
  838. name: "${entity_prefix} Temperature Lower Limit Of T1S Heating Zone 2"
  839. id: "${devicename}_temperature_lower_limit_of_t1s_heating_zone_2"
  840. register_type: holding
  841. address: 0xcc
  842. value_type: U_WORD
  843. unit_of_measurement: "°C"
  844. bitmask: 0xFF00
  845. # Register: 205
  846. - platform: modbus_controller
  847. modbus_controller_id: "${devicename}"
  848. name: "${entity_prefix} Temperature Upper Limit Of TS Setting"
  849. id: "${devicename}_temperature_upper_limit_of_ts_setting"
  850. register_type: holding
  851. address: 0xcd
  852. value_type: U_WORD
  853. unit_of_measurement: "°C"
  854. # Register: 206
  855. - platform: modbus_controller
  856. modbus_controller_id: "${devicename}"
  857. name: "${entity_prefix} Temperature Lower Limit Of TS Setting"
  858. id: "${devicename}_temperature_lower_limit_of_ts_setting"
  859. register_type: holding
  860. address: 0xce
  861. value_type: U_WORD
  862. unit_of_measurement: "°C"
  863. # Register: 207
  864. - platform: modbus_controller
  865. modbus_controller_id: "${devicename}"
  866. name: "${entity_prefix} Temperature Upper Limit Of water Heating"
  867. id: "${devicename}_temperature_upper_limit_of_water_heating"
  868. register_type: holding
  869. address: 0xcf
  870. value_type: U_WORD
  871. unit_of_measurement: "°C"
  872. # Register: 208
  873. - platform: modbus_controller
  874. modbus_controller_id: "${devicename}"
  875. name: "${entity_prefix} Temperature Lower Limit Of Water Heating"
  876. id: "${devicename}_temperature_lower_limit_of_water_heating"
  877. register_type: holding
  878. address: 0xd0
  879. value_type: U_WORD
  880. unit_of_measurement: "°C"
  881. # Register: 209
  882. - platform: modbus_controller
  883. modbus_controller_id: "${devicename}"
  884. name: "${entity_prefix} DHW Pump Return Running Time"
  885. id: "${devicename}_dhw_pump_return_running_time"
  886. register_type: holding
  887. address: 0xd1
  888. value_type: U_WORD
  889. unit_of_measurement: min
  890. # Register: 212
  891. - platform: modbus_controller
  892. modbus_controller_id: "${devicename}"
  893. name: "${entity_prefix} dT5_On"
  894. id: "${devicename}_dt5_on"
  895. register_type: holding
  896. address: 0xd4
  897. value_type: U_WORD
  898. unit_of_measurement: "°C"
  899. # Register: 213
  900. - platform: modbus_controller
  901. modbus_controller_id: "${devicename}"
  902. name: "${entity_prefix} dT1S5"
  903. id: "${devicename}_dt1s5"
  904. register_type: holding
  905. address: 0xd5
  906. value_type: U_WORD
  907. unit_of_measurement: "°C"
  908. # Register: 214
  909. - platform: modbus_controller
  910. modbus_controller_id: "${devicename}"
  911. name: "${entity_prefix} T Interval DHW"
  912. id: "${devicename}_t_interval_dhw"
  913. register_type: holding
  914. address: 0xd6
  915. value_type: U_WORD
  916. unit_of_measurement: min
  917. # Register: 215
  918. - platform: modbus_controller
  919. modbus_controller_id: "${devicename}"
  920. name: "${entity_prefix} T4 DHW max"
  921. id: "${devicename}_t4dhwmax"
  922. register_type: holding
  923. address: 0xd7
  924. value_type: U_WORD
  925. unit_of_measurement: "°C"
  926. # Register: 216
  927. - platform: modbus_controller
  928. modbus_controller_id: "${devicename}"
  929. name: "${entity_prefix} T4 DHW min"
  930. id: "${devicename}_t4dhwmin"
  931. register_type: holding
  932. address: 0xd8
  933. value_type: S_WORD
  934. unit_of_measurement: "°C"
  935. # Register: 217
  936. - platform: modbus_controller
  937. modbus_controller_id: "${devicename}"
  938. name: "${entity_prefix} t TBH Delay"
  939. id: "${devicename}_t_tbh_delay"
  940. register_type: holding
  941. address: 0xd9
  942. value_type: U_WORD
  943. unit_of_measurement: min
  944. # Register: 218
  945. - platform: modbus_controller
  946. modbus_controller_id: "${devicename}"
  947. name: "${entity_prefix} dT5S TBH Off"
  948. id: "${devicename}_dt5_tbh_off"
  949. register_type: holding
  950. address: 0xda
  951. value_type: U_WORD
  952. unit_of_measurement: "°C"
  953. # Register: 219
  954. - platform: modbus_controller
  955. modbus_controller_id: "${devicename}"
  956. name: "${entity_prefix} T4 TBH On"
  957. id: "${devicename}_t4_tbh_on"
  958. register_type: holding
  959. address: 0xdb
  960. value_type: U_WORD
  961. unit_of_measurement: "°C"
  962. # Register: 220
  963. - platform: modbus_controller
  964. modbus_controller_id: "${devicename}"
  965. name: "${entity_prefix} Temperature For Disinfection Operation"
  966. id: "${devicename}_t5s_di"
  967. register_type: holding
  968. address: 0xdc
  969. value_type: U_WORD
  970. unit_of_measurement: "°C"
  971. # Register: 221
  972. - platform: modbus_controller
  973. modbus_controller_id: "${devicename}"
  974. name: "${entity_prefix} Maximum Disinfection Duration"
  975. id: "${devicename}_t_di_max"
  976. register_type: holding
  977. address: 0xdd
  978. value_type: U_WORD
  979. unit_of_measurement: min
  980. # Register: 222
  981. - platform: modbus_controller
  982. modbus_controller_id: "${devicename}"
  983. name: "${entity_prefix} Disinfection High Temperature Duration"
  984. id: "${devicename}_t_di_hightemp"
  985. register_type: holding
  986. address: 0xde
  987. value_type: U_WORD
  988. unit_of_measurement: min
  989. # Register: 223
  990. - platform: modbus_controller
  991. modbus_controller_id: "${devicename}"
  992. name: "${entity_prefix} Time Interval Of Compressor Startup In Cooling mode"
  993. id: "${devicename}_t_interval_c"
  994. register_type: holding
  995. address: 0xdf
  996. value_type: U_WORD
  997. unit_of_measurement: min
  998. # Register: 224
  999. - platform: modbus_controller
  1000. modbus_controller_id: "${devicename}"
  1001. name: "${entity_prefix} dT1SC"
  1002. id: "${devicename}_dt1sc"
  1003. register_type: holding
  1004. address: 0xe0
  1005. value_type: U_WORD
  1006. unit_of_measurement: "°C"
  1007. # Register: 225
  1008. - platform: modbus_controller
  1009. modbus_controller_id: "${devicename}"
  1010. name: "${entity_prefix} dTSC"
  1011. id: "${devicename}_dtsc"
  1012. register_type: holding
  1013. address: 0xe1
  1014. value_type: U_WORD
  1015. unit_of_measurement: "°C"
  1016. # Register: 226
  1017. - platform: modbus_controller
  1018. modbus_controller_id: "${devicename}"
  1019. name: "${entity_prefix} T4cmax"
  1020. id: "${devicename}_t4cmax"
  1021. register_type: holding
  1022. address: 0xe2
  1023. value_type: U_WORD
  1024. unit_of_measurement: "°C"
  1025. # Register: 227
  1026. - platform: modbus_controller
  1027. modbus_controller_id: "${devicename}"
  1028. name: "${entity_prefix} T4cmin"
  1029. id: "${devicename}_t4cmin"
  1030. register_type: holding
  1031. address: 0xe3
  1032. value_type: U_WORD
  1033. unit_of_measurement: "°C"
  1034. # Register: 228
  1035. - platform: modbus_controller
  1036. modbus_controller_id: "${devicename}"
  1037. name: "${entity_prefix} Time Interval Of Compressor Startup In Heating mode"
  1038. id: "${devicename}_t_interval_h"
  1039. register_type: holding
  1040. address: 0xe4
  1041. value_type: U_WORD
  1042. unit_of_measurement: min
  1043. # Register: 229 -> Is present in this config as a 'number'
  1044. # Register: 230 -> Is present in this config as a 'number'
  1045. # Register: 231 -> Is present in this config as a 'number'
  1046. # Register: 232 -> Is present in this config as a 'number'
  1047. # Register: 233
  1048. - platform: modbus_controller
  1049. modbus_controller_id: "${devicename}"
  1050. name: "${entity_prefix} Ambient Temperature For Enabling Hydraulic Module Auxiliary Electric Heating IBH"
  1051. id: "${devicename}_t4_ibh_on"
  1052. register_type: holding
  1053. address: 0xe9
  1054. value_type: S_WORD
  1055. unit_of_measurement: "°C"
  1056. # Register: 234
  1057. - platform: modbus_controller
  1058. modbus_controller_id: "${devicename}"
  1059. name: "${entity_prefix} Temperature Return Difference For Enabling The Hydraulic Module Auxiliary IBH"
  1060. id: "${devicename}_dt1_ibh_on"
  1061. register_type: holding
  1062. address: 0xea
  1063. value_type: U_WORD
  1064. unit_of_measurement: "°C"
  1065. # Register: 235
  1066. - platform: modbus_controller
  1067. modbus_controller_id: "${devicename}"
  1068. name: "${entity_prefix} Delay Time Of Enabling The Hydraulic Module Auxiliary Electric Heating IBH"
  1069. id: "${devicename}_t_ibh_delay"
  1070. register_type: holding
  1071. address: 0xeb
  1072. value_type: U_WORD
  1073. unit_of_measurement: min
  1074. # Register: 237
  1075. - platform: modbus_controller
  1076. modbus_controller_id: "${devicename}"
  1077. name: "${entity_prefix} Ambient Temperature Trigger For AHS"
  1078. id: "${devicename}_t4_ahs_on"
  1079. register_type: holding
  1080. address: 0xed
  1081. value_type: S_WORD
  1082. unit_of_measurement: "°C"
  1083. # Register: 238
  1084. - platform: modbus_controller
  1085. modbus_controller_id: "${devicename}"
  1086. name: "${entity_prefix} Trigger Temperature Difference Between T1S And Current Heat for AHS"
  1087. id: "${devicename}_dt1_ahs_on"
  1088. register_type: holding
  1089. address: 0xee
  1090. value_type: U_WORD
  1091. unit_of_measurement: "°C"
  1092. # Register: 240
  1093. - platform: modbus_controller
  1094. modbus_controller_id: "${devicename}"
  1095. name: "${entity_prefix} Delay Time for Enabling AHS"
  1096. id: "${devicename}_t_ahs_delay"
  1097. register_type: holding
  1098. address: 0xf0
  1099. value_type: U_WORD
  1100. unit_of_measurement: min
  1101. # Register: 241
  1102. - platform: modbus_controller
  1103. modbus_controller_id: "${devicename}"
  1104. name: "${entity_prefix} Water Heating Max Duration"
  1105. id: "${devicename}_t_dhwhp_max"
  1106. register_type: holding
  1107. address: 0xf1
  1108. value_type: U_WORD
  1109. unit_of_measurement: min
  1110. # Register: 242
  1111. - platform: modbus_controller
  1112. modbus_controller_id: "${devicename}"
  1113. name: "${entity_prefix} T DHWHP Restrict"
  1114. id: "${devicename}_t_dhwhp_restrict"
  1115. register_type: holding
  1116. address: 0xf2
  1117. value_type: U_WORD
  1118. unit_of_measurement: min
  1119. # Register: 243
  1120. - platform: modbus_controller
  1121. modbus_controller_id: "${devicename}"
  1122. name: "${entity_prefix} T4autocmin"
  1123. id: "${devicename}_t4autocmin"
  1124. register_type: holding
  1125. address: 0xf3
  1126. value_type: U_WORD
  1127. unit_of_measurement: "°C"
  1128. # Register: 244
  1129. - platform: modbus_controller
  1130. modbus_controller_id: "${devicename}"
  1131. name: "${entity_prefix} T4autohmax"
  1132. id: "${devicename}_t4autohmax"
  1133. register_type: holding
  1134. address: 0xf4
  1135. value_type: U_WORD
  1136. unit_of_measurement: "°C"
  1137. # Register: 245
  1138. - platform: modbus_controller
  1139. modbus_controller_id: "${devicename}"
  1140. name: "${entity_prefix} Heating Or Cooling Temperature When Holiday Mode Is Active"
  1141. id: "${devicename}_t1s_h_a_h"
  1142. register_type: holding
  1143. address: 0xf5
  1144. value_type: U_WORD
  1145. unit_of_measurement: "°C"
  1146. # Register: 246
  1147. - platform: modbus_controller
  1148. modbus_controller_id: "${devicename}"
  1149. name: "${entity_prefix} Domestic Hot Water Temperature When Holiday Mode is Active"
  1150. id: "${devicename}_t5s_h_a_dhw"
  1151. register_type: holding
  1152. address: 0xf6
  1153. value_type: U_WORD
  1154. unit_of_measurement: "°C"
  1155. # Register: 247
  1156. - platform: modbus_controller
  1157. modbus_controller_id: "${devicename}"
  1158. name: "${entity_prefix} PER START Ratio"
  1159. id: "${devicename}_per_start_ratio"
  1160. register_type: holding
  1161. address: 0xf7
  1162. value_type: U_WORD
  1163. # Register: 248
  1164. - platform: modbus_controller
  1165. modbus_controller_id: "${devicename}"
  1166. name: "${entity_prefix} TIME ADJUST"
  1167. id: "${devicename}_time_adjust"
  1168. register_type: holding
  1169. address: 0xf8
  1170. value_type: U_WORD
  1171. # Register: 249
  1172. - platform: modbus_controller
  1173. modbus_controller_id: "${devicename}"
  1174. name: "${entity_prefix} DTbt2"
  1175. id: "${devicename}_dtbt2"
  1176. register_type: holding
  1177. address: 0xf9
  1178. value_type: U_WORD
  1179. # Register: 250
  1180. - platform: modbus_controller
  1181. modbus_controller_id: "${devicename}"
  1182. name: "${entity_prefix} IBH1 Power"
  1183. id: "${devicename}_ibh1_power"
  1184. register_type: holding
  1185. address: 0xfa
  1186. value_type: U_WORD
  1187. unit_of_measurement: W
  1188. # Register: 251
  1189. - platform: modbus_controller
  1190. modbus_controller_id: "${devicename}"
  1191. name: "${entity_prefix} IBH2 Power"
  1192. id: "${devicename}_ibh2_power"
  1193. register_type: holding
  1194. address: 0xfb
  1195. value_type: U_WORD
  1196. unit_of_measurement: W
  1197. # Register: 252
  1198. - platform: modbus_controller
  1199. modbus_controller_id: "${devicename}"
  1200. name: "${entity_prefix} TBH Power"
  1201. id: "${devicename}_tbh_power"
  1202. register_type: holding
  1203. address: 0xfc
  1204. value_type: U_WORD
  1205. unit_of_measurement: W
  1206. # Register: 253
  1207. - platform: modbus_controller
  1208. modbus_controller_id: "${devicename}"
  1209. name: "${entity_prefix} Comfort Parameter Reserved 3"
  1210. id: "${devicename}_comfort_parameter_3"
  1211. register_type: holding
  1212. address: 0xfd
  1213. value_type: U_WORD
  1214. # Register: 254
  1215. - platform: modbus_controller
  1216. modbus_controller_id: "${devicename}"
  1217. name: "${entity_prefix} Comfort Parameter Reserved 4"
  1218. id: "${devicename}_comfort_parameter_4"
  1219. register_type: holding
  1220. address: 0xfe
  1221. value_type: U_WORD
  1222. # Register: 255
  1223. - platform: modbus_controller
  1224. modbus_controller_id: "${devicename}"
  1225. name: "${entity_prefix} Temperature Rise Day Number"
  1226. id: "${devicename}_t_dryup"
  1227. register_type: holding
  1228. address: 0xff
  1229. value_type: U_WORD
  1230. # Register: 256
  1231. - platform: modbus_controller
  1232. modbus_controller_id: "${devicename}"
  1233. name: "${entity_prefix} Drying Day Number"
  1234. id: "${devicename}_t_highpeak"
  1235. register_type: holding
  1236. address: 0x100
  1237. value_type: U_WORD
  1238. # Register: 257
  1239. - platform: modbus_controller
  1240. modbus_controller_id: "${devicename}"
  1241. name: "${entity_prefix} Temperature Drop Day Number"
  1242. id: "${devicename}_t_dryd"
  1243. register_type: holding
  1244. address: 0x101
  1245. value_type: U_WORD
  1246. # Register: 258
  1247. - platform: modbus_controller
  1248. modbus_controller_id: "${devicename}"
  1249. name: "${entity_prefix} Highest Drying Temperature"
  1250. id: "${devicename}_t_drypeak"
  1251. register_type: holding
  1252. address: 0x102
  1253. value_type: U_WORD
  1254. unit_of_measurement: "°C"
  1255. # Register: 259
  1256. - platform: modbus_controller
  1257. modbus_controller_id: "${devicename}"
  1258. name: "${entity_prefix} Running Time Of Floor Heating For The First Time"
  1259. id: "${devicename}_t_firstfh"
  1260. register_type: holding
  1261. address: 0x103
  1262. value_type: U_WORD
  1263. unit_of_measurement: hr
  1264. # Register: 260
  1265. - platform: modbus_controller
  1266. modbus_controller_id: "${devicename}"
  1267. name: "${entity_prefix} T1S Of Floor Heating For The First Time"
  1268. id: "${devicename}_t1s_firstfh"
  1269. register_type: holding
  1270. address: 0x104
  1271. value_type: U_WORD
  1272. unit_of_measurement: "°C"
  1273. # Register: 261
  1274. - platform: modbus_controller
  1275. modbus_controller_id: "${devicename}"
  1276. name: "${entity_prefix} T1SetC1"
  1277. id: "${devicename}_t1setc1"
  1278. register_type: holding
  1279. address: 0x105
  1280. value_type: U_WORD
  1281. unit_of_measurement: "°C"
  1282. # Register: 262
  1283. - platform: modbus_controller
  1284. modbus_controller_id: "${devicename}"
  1285. name: "${entity_prefix} T1SetC2"
  1286. id: "${devicename}_t1setc2"
  1287. register_type: holding
  1288. address: 0x106
  1289. value_type: U_WORD
  1290. unit_of_measurement: "°C"
  1291. # Register: 263
  1292. - platform: modbus_controller
  1293. modbus_controller_id: "${devicename}"
  1294. name: "${entity_prefix} T4C1"
  1295. id: "${devicename}_t4c1"
  1296. register_type: holding
  1297. address: 0x107
  1298. value_type: S_WORD
  1299. unit_of_measurement: "°C"
  1300. # Register: 264
  1301. - platform: modbus_controller
  1302. modbus_controller_id: "${devicename}"
  1303. name: "${entity_prefix} T4C2"
  1304. id: "${devicename}_t4c2"
  1305. register_type: holding
  1306. address: 0x108
  1307. value_type: S_WORD
  1308. unit_of_measurement: "°C"
  1309. # Register: 265 -> Is present in this config as a 'number'
  1310. # Register: 266 -> Is present in this config as a 'number'
  1311. # Register: 267 -> Is present in this config as a 'number'
  1312. # Register: 268 -> Is present in this config as a 'number'
  1313. # Register: 269
  1314. - platform: modbus_controller
  1315. modbus_controller_id: "${devicename}"
  1316. name: "${entity_prefix} Power Input Limitation Type"
  1317. id: "${devicename}_power_input_limitation_type"
  1318. register_type: holding
  1319. address: 0x10d
  1320. value_type: U_WORD
  1321. # Register: 270 (Low)
  1322. - platform: modbus_controller
  1323. modbus_controller_id: "${devicename}"
  1324. name: "${entity_prefix} t_T4 FRESH_H"
  1325. id: "${devicename}_t_t4_fresh_h"
  1326. register_type: holding
  1327. address: 0x10e
  1328. value_type: U_WORD
  1329. unit_of_measurement: hr
  1330. accuracy_decimals: 1
  1331. bitmask: 0x00FF
  1332. filters:
  1333. - multiply: 0.5
  1334. # Register: 270 (High)
  1335. - platform: modbus_controller
  1336. modbus_controller_id: "${devicename}"
  1337. name: "${entity_prefix} t_T4 FRESH_C"
  1338. id: "${devicename}_t_t4_fresh_c"
  1339. register_type: holding
  1340. address: 0x10e
  1341. value_type: U_WORD
  1342. unit_of_measurement: hr
  1343. accuracy_decimals: 1
  1344. bitmask: 0xFF00
  1345. filters:
  1346. - multiply: 0.5
  1347. # Register: 271
  1348. - platform: modbus_controller
  1349. modbus_controller_id: "${devicename}"
  1350. name: "${entity_prefix} Built-in Circulating Pump Delay"
  1351. id: "${devicename}_t_pumpi_delay"
  1352. register_type: holding
  1353. address: 0x10f
  1354. value_type: U_WORD
  1355. unit_of_measurement: hr
  1356. filters:
  1357. - multiply: 0.5
  1358. # Register: 272 (Low, first 4 bits)
  1359. - platform: modbus_controller
  1360. modbus_controller_id: "${devicename}"
  1361. name: "${entity_prefix} Zone 1 End Heating Mode Emission Type"
  1362. id: "${devicename}_zone_1_end_heating_mod_emission_type"
  1363. register_type: holding
  1364. address: 0x110
  1365. value_type: U_WORD
  1366. bitmask: 0xF000
  1367. # Register: 272 (Low, second 4 bits)
  1368. - platform: modbus_controller
  1369. modbus_controller_id: "${devicename}"
  1370. name: "${entity_prefix} Zone 2 End Heating Mode Emission Type"
  1371. id: "${devicename}_zone_2_end_heating_mod_emission_type"
  1372. register_type: holding
  1373. address: 0x110
  1374. value_type: U_WORD
  1375. bitmask: 0x0F00
  1376. # Register: 272 (High, first 4 bits)
  1377. - platform: modbus_controller
  1378. modbus_controller_id: "${devicename}"
  1379. name: "${entity_prefix} Zone 1 End Cooling Mode Emission Type"
  1380. id: "${devicename}_zone_1_end_cooling_mod_emission_type"
  1381. register_type: holding
  1382. address: 0x110
  1383. value_type: U_WORD
  1384. bitmask: 0x00F0
  1385. # Register: 272 (High, second 4 bits)
  1386. - platform: modbus_controller
  1387. modbus_controller_id: "${devicename}"
  1388. name: "${entity_prefix} Zone 2 End Cooling Mode Emission Type"
  1389. id: "${devicename}_zone_2_end_cooling_mod_emission_type"
  1390. register_type: holding
  1391. address: 0x110
  1392. value_type: U_WORD
  1393. bitmask: 0x000F
  1394.  
  1395. binary_sensor:
  1396. - platform: gpio
  1397. name: "a24--input1"
  1398. pin:
  1399. pcf8574: pcf8574_hub_in_1
  1400. number: 0
  1401. mode: INPUT
  1402. inverted: true
  1403.  
  1404. - platform: gpio
  1405. name: "a24--input2"
  1406. pin:
  1407. pcf8574: pcf8574_hub_in_1
  1408. number: 1
  1409. mode: INPUT
  1410. inverted: true
  1411.  
  1412. - platform: gpio
  1413. name: "a24--input3"
  1414. pin:
  1415. pcf8574: pcf8574_hub_in_1
  1416. number: 2
  1417. mode: INPUT
  1418. inverted: true
  1419.  
  1420. - platform: gpio
  1421. name: "a24--input4"
  1422. pin:
  1423. pcf8574: pcf8574_hub_in_1
  1424. number: 3
  1425. mode: INPUT
  1426. inverted: true
  1427.  
  1428. - platform: gpio
  1429. name: "a24--input5"
  1430. pin:
  1431. pcf8574: pcf8574_hub_in_1
  1432. number: 4
  1433. mode: INPUT
  1434. inverted: true
  1435.  
  1436. - platform: gpio
  1437. name: "a24--input6"
  1438. pin:
  1439. pcf8574: pcf8574_hub_in_1
  1440. number: 5
  1441. mode: INPUT
  1442. inverted: true
  1443.  
  1444. - platform: gpio
  1445. name: "a24--input7"
  1446. pin:
  1447. pcf8574: pcf8574_hub_in_1
  1448. number: 6
  1449. mode: INPUT
  1450. inverted: true
  1451.  
  1452. - platform: gpio
  1453. name: "a24--input8"
  1454. pin:
  1455. pcf8574: pcf8574_hub_in_1
  1456. number: 7
  1457. mode: INPUT
  1458. inverted: true
  1459.  
  1460.  
  1461. - platform: gpio
  1462. name: "a24--input9"
  1463. pin:
  1464. pcf8574: pcf8574_hub_in_1
  1465. number: 8
  1466. mode: INPUT
  1467. inverted: true
  1468.  
  1469. - platform: gpio
  1470. name: "a24--input10"
  1471. pin:
  1472. pcf8574: pcf8574_hub_in_1
  1473. number: 9
  1474. mode: INPUT
  1475. inverted: true
  1476.  
  1477. - platform: gpio
  1478. name: "a24--input11"
  1479. pin:
  1480. pcf8574: pcf8574_hub_in_1
  1481. number: 10
  1482. mode: INPUT
  1483. inverted: true
  1484.  
  1485. - platform: gpio
  1486. name: "a24--input12"
  1487. pin:
  1488. pcf8574: pcf8574_hub_in_1
  1489. number: 11
  1490. mode: INPUT
  1491. inverted: true
  1492.  
  1493. - platform: gpio
  1494. name: "a24--input13"
  1495. pin:
  1496. pcf8574: pcf8574_hub_in_1
  1497. number: 12
  1498. mode: INPUT
  1499. inverted: true
  1500.  
  1501. - platform: gpio
  1502. name: "a24--input14"
  1503. pin:
  1504. pcf8574: pcf8574_hub_in_1
  1505. number: 13
  1506. mode: INPUT
  1507. inverted: true
  1508.  
  1509. - platform: gpio
  1510. name: "a24--input15"
  1511. pin:
  1512. pcf8574: pcf8574_hub_in_1
  1513. number: 14
  1514. mode: INPUT
  1515. inverted: true
  1516.  
  1517. - platform: gpio
  1518. name: "a24--input16"
  1519. pin:
  1520. pcf8574: pcf8574_hub_in_1
  1521. number: 15
  1522. mode: INPUT
  1523. inverted: true
  1524.  
  1525.  
  1526. - platform: gpio
  1527. name: "a24--input17"
  1528. pin:
  1529. pcf8574: pcf8574_hub_in_2
  1530. number: 0
  1531. mode: INPUT
  1532. inverted: true
  1533.  
  1534. - platform: gpio
  1535. name: "a24--input18"
  1536. pin:
  1537. pcf8574: pcf8574_hub_in_2
  1538. number: 1
  1539. mode: INPUT
  1540. inverted: true
  1541.  
  1542. - platform: gpio
  1543. name: "a24--input19"
  1544. pin:
  1545. pcf8574: pcf8574_hub_in_2
  1546. number: 2
  1547. mode: INPUT
  1548. inverted: true
  1549.  
  1550. - platform: gpio
  1551. name: "a24--input20"
  1552. pin:
  1553. pcf8574: pcf8574_hub_in_2
  1554. number: 3
  1555. mode: INPUT
  1556. inverted: true
  1557.  
  1558. - platform: gpio
  1559. name: "a24--input21"
  1560. pin:
  1561. pcf8574: pcf8574_hub_in_2
  1562. number: 4
  1563. mode: INPUT
  1564. inverted: true
  1565.  
  1566. - platform: gpio
  1567. name: "a24--input22"
  1568. pin:
  1569. pcf8574: pcf8574_hub_in_2
  1570. number: 5
  1571. mode: INPUT
  1572. inverted: true
  1573.  
  1574. - platform: gpio
  1575. name: "a24--input23"
  1576. pin:
  1577. pcf8574: pcf8574_hub_in_2
  1578. number: 6
  1579. mode: INPUT
  1580. inverted: true
  1581.  
  1582. - platform: gpio
  1583. name: "a24--input24"
  1584. pin:
  1585. pcf8574: pcf8574_hub_in_2
  1586. number: 7
  1587. mode: INPUT
  1588. inverted: true
  1589.  
  1590. # Register: 0
  1591. # Bit: 0
  1592. - platform: modbus_controller
  1593. modbus_controller_id: "${devicename}"
  1594. name: "${entity_prefix} Power Floor Heating Zone 1"
  1595. id: "${devicename}_power_floor_heating_zone_1"
  1596. register_type: holding
  1597. address: 0x0
  1598. bitmask: 0x1
  1599. # Bit: 1
  1600. - platform: modbus_controller
  1601. modbus_controller_id: "${devicename}"
  1602. name: "${entity_prefix} Power Air Conditioner Zone 1"
  1603. id: "${devicename}_power_air_conditioner_zone_1"
  1604. register_type: holding
  1605. address: 0x0
  1606. bitmask: 0x2
  1607. # Bit: 2 -> Is present in this config as a 'switch'
  1608. # Bit: 3
  1609. - platform: modbus_controller
  1610. modbus_controller_id: "${devicename}"
  1611. name: "${entity_prefix} Power Air Conditioner Zone 2"
  1612. id: "${devicename}_power_air_conditioner_zone_2"
  1613. register_type: holding
  1614. address: 0x0
  1615. bitmask: 0x8
  1616. # Bit: 4
  1617. - platform: modbus_controller
  1618. modbus_controller_id: "${devicename}"
  1619. name: "${entity_prefix} Power Reserved BIT 4"
  1620. id: "${devicename}_power_reserved_bit_4"
  1621. register_type: holding
  1622. address: 0x0
  1623. bitmask: 0x10
  1624. # Bit: 5
  1625. - platform: modbus_controller
  1626. modbus_controller_id: "${devicename}"
  1627. name: "${entity_prefix} Power Reserved BIT 5"
  1628. id: "${devicename}_power_reserved_bit_5"
  1629. register_type: holding
  1630. address: 0x0
  1631. bitmask: 0x20
  1632. # Bit: 6
  1633. - platform: modbus_controller
  1634. modbus_controller_id: "${devicename}"
  1635. name: "${entity_prefix} Power Reserved BIT 6"
  1636. id: "${devicename}_power_reserved_bit_6"
  1637. register_type: holding
  1638. address: 0x0
  1639. bitmask: 0x40
  1640. # Bit: 7
  1641. - platform: modbus_controller
  1642. modbus_controller_id: "${devicename}"
  1643. name: "${entity_prefix} Power Reserved BIT 7"
  1644. id: "${devicename}_power_reserved_bit_7"
  1645. register_type: holding
  1646. address: 0x0
  1647. bitmask: 0x80
  1648. # Bit: 8
  1649. - platform: modbus_controller
  1650. modbus_controller_id: "${devicename}"
  1651. name: "${entity_prefix} Power Reserved BIT 8"
  1652. id: "${devicename}_power_reserved_bit_8"
  1653. register_type: holding
  1654. address: 0x0
  1655. bitmask: 0x100
  1656. # Bit: 9
  1657. - platform: modbus_controller
  1658. modbus_controller_id: "${devicename}"
  1659. name: "${entity_prefix} Power Reserved BIT 9"
  1660. id: "${devicename}_power_reserved_bit_9"
  1661. register_type: holding
  1662. address: 0x0
  1663. bitmask: 0x200
  1664. # Bit: 10
  1665. - platform: modbus_controller
  1666. modbus_controller_id: "${devicename}"
  1667. name: "${entity_prefix} Power Reserved BIT 10"
  1668. id: "${devicename}_power_reserved_bit_10"
  1669. register_type: holding
  1670. address: 0x0
  1671. bitmask: 0x400
  1672. # Bit: 11
  1673. - platform: modbus_controller
  1674. modbus_controller_id: "${devicename}"
  1675. name: "${entity_prefix} Power Reserved BIT 11"
  1676. id: "${devicename}_power_reserved_bit_11"
  1677. register_type: holding
  1678. address: 0x0
  1679. bitmask: 0x800
  1680. # Bit: 12
  1681. - platform: modbus_controller
  1682. modbus_controller_id: "${devicename}"
  1683. name: "${entity_prefix} Power Reserved BIT 12"
  1684. id: "${devicename}_power_reserved_bit_12"
  1685. register_type: holding
  1686. address: 0x0
  1687. bitmask: 0x1000
  1688. # Bit: 13
  1689. - platform: modbus_controller
  1690. modbus_controller_id: "${devicename}"
  1691. name: "${entity_prefix} Power Reserved BIT 13"
  1692. id: "${devicename}_power_reserved_bit_13"
  1693. register_type: holding
  1694. address: 0x0
  1695. bitmask: 0x2000
  1696. # Bit: 14
  1697. - platform: modbus_controller
  1698. modbus_controller_id: "${devicename}"
  1699. name: "${entity_prefix} Power Reserved BIT 14"
  1700. id: "${devicename}_power_reserved_bit_14"
  1701. register_type: holding
  1702. address: 0x0
  1703. bitmask: 0x4000
  1704. # Bit: 15
  1705. - platform: modbus_controller
  1706. modbus_controller_id: "${devicename}"
  1707. name: "${entity_prefix} Power Reserved BIT 15"
  1708. id: "${devicename}_power_reserved_bit_15"
  1709. register_type: holding
  1710. address: 0x0
  1711. bitmask: 0x8000
  1712.  
  1713. # Register: 5
  1714. # Bit: 0
  1715. - platform: modbus_controller
  1716. modbus_controller_id: "${devicename}"
  1717. name: "${entity_prefix} Function Setting Reserved BIT 0"
  1718. id: "${devicename}_function_setting_reserved_bit_0"
  1719. register_type: holding
  1720. address: 0x5
  1721. bitmask: 0x1
  1722. # Bit: 1
  1723. - platform: modbus_controller
  1724. modbus_controller_id: "${devicename}"
  1725. name: "${entity_prefix} Function Setting Reserved BIT 1"
  1726. id: "${devicename}_function_setting_reserved_bit_1"
  1727. register_type: holding
  1728. address: 0x5
  1729. bitmask: 0x2
  1730. # Bit: 2
  1731. - platform: modbus_controller
  1732. modbus_controller_id: "${devicename}"
  1733. name: "${entity_prefix} Function Setting Reserved BIT 2"
  1734. id: "${devicename}_function_setting_reserved_bit_2"
  1735. register_type: holding
  1736. address: 0x5
  1737. bitmask: 0x4
  1738. # Bit: 3
  1739. - platform: modbus_controller
  1740. modbus_controller_id: "${devicename}"
  1741. name: "${entity_prefix} Function Setting Reserved BIT 3"
  1742. id: "${devicename}_function_setting_reserved_bit_3"
  1743. register_type: holding
  1744. address: 0x5
  1745. bitmask: 0x8
  1746. # Bit: 4
  1747. - platform: modbus_controller
  1748. modbus_controller_id: "${devicename}"
  1749. name: "${entity_prefix} Function Setting Disinfect"
  1750. id: "${devicename}_function_setting_disinfect"
  1751. register_type: holding
  1752. address: 0x5
  1753. bitmask: 0x10
  1754. # Bit: 5
  1755. - platform: modbus_controller
  1756. modbus_controller_id: "${devicename}"
  1757. name: "${entity_prefix} Function Setting Holiday Away"
  1758. id: "${devicename}_function_setting_holiday_away"
  1759. register_type: holding
  1760. address: 0x5
  1761. bitmask: 0x20
  1762. # Bit: 6
  1763. - platform: modbus_controller
  1764. modbus_controller_id: "${devicename}"
  1765. name: "${entity_prefix} Function Setting Silent Mode"
  1766. id: "${devicename}_function_setting_silent_mode"
  1767. register_type: holding
  1768. address: 0x5
  1769. bitmask: 0x40
  1770. # Bit: 7
  1771. - platform: modbus_controller
  1772. modbus_controller_id: "${devicename}"
  1773. name: "${entity_prefix} Function Setting Silent Mode Level"
  1774. id: "${devicename}_function_setting_silent_mode_level"
  1775. register_type: holding
  1776. address: 0x5
  1777. bitmask: 0x80
  1778. # Bit: 8
  1779. - platform: modbus_controller
  1780. modbus_controller_id: "${devicename}"
  1781. name: "${entity_prefix} Function Setting Holiday Home"
  1782. id: "${devicename}_function_setting_holiday_home"
  1783. register_type: holding
  1784. address: 0x5
  1785. bitmask: 0x100
  1786. # Bit: 9
  1787. - platform: modbus_controller
  1788. modbus_controller_id: "${devicename}"
  1789. name: "${entity_prefix} Function Setting Reserved BIT 9"
  1790. id: "${devicename}_function_setting_reserved_bit_9"
  1791. register_type: holding
  1792. address: 0x5
  1793. bitmask: 0x200
  1794. # Bit: 10
  1795. - platform: modbus_controller
  1796. modbus_controller_id: "${devicename}"
  1797. name: "${entity_prefix} Function Setting ECO Mode"
  1798. id: "${devicename}_function_setting_eco_mode"
  1799. register_type: holding
  1800. address: 0x5
  1801. bitmask: 0x400
  1802. # Bit: 11
  1803. - platform: modbus_controller
  1804. modbus_controller_id: "${devicename}"
  1805. name: "${entity_prefix} Function Setting DHW Pumps Running Constant Temperature Water Recycling"
  1806. id: "${devicename}_function_setting_dhw_pumps_running_constant_temperature_water_recycling"
  1807. register_type: holding
  1808. address: 0x5
  1809. bitmask: 0x800
  1810. # Bit: 12 -> Is present in this config as a 'switch'
  1811. # Bit: 13 -> Is present in this config as a 'switch'
  1812. # Bit: 14
  1813. - platform: modbus_controller
  1814. modbus_controller_id: "${devicename}"
  1815. name: "${entity_prefix} Function Setting Reserved BIT 14"
  1816. id: "${devicename}_function_setting_reserved_bit_14"
  1817. register_type: holding
  1818. address: 0x5
  1819. bitmask: 0x4000
  1820. # Bit: 15
  1821. - platform: modbus_controller
  1822. modbus_controller_id: "${devicename}"
  1823. name: "${entity_prefix} Function Setting Reserved BIT 15"
  1824. id: "${devicename}_function_setting_reserved_bit_15"
  1825. register_type: holding
  1826. address: 0x5
  1827. bitmask: 0x8000
  1828.  
  1829. # Register: 128
  1830. # Bit: 0
  1831. - platform: modbus_controller
  1832. modbus_controller_id: "${devicename}"
  1833. name: "${entity_prefix} Status BIT 1 Reserved BIT 0"
  1834. id: "${devicename}_status_bit_1_reserved_bit_0"
  1835. register_type: holding
  1836. address: 0x80
  1837. bitmask: 0x1
  1838. # Bit: 1
  1839. - platform: modbus_controller
  1840. modbus_controller_id: "${devicename}"
  1841. name: "${entity_prefix} Status BIT 1 Defrosting"
  1842. id: "${devicename}_status_bit_1_defrosting"
  1843. register_type: holding
  1844. address: 0x80
  1845. bitmask: 0x2
  1846. # Bit: 2
  1847. - platform: modbus_controller
  1848. modbus_controller_id: "${devicename}"
  1849. name: "${entity_prefix} Status BIT 1 Anti Freezing"
  1850. id: "${devicename}_status_bit_1_anti_freezing"
  1851. register_type: holding
  1852. address: 0x80
  1853. bitmask: 0x4
  1854. # Bit: 3
  1855. - platform: modbus_controller
  1856. modbus_controller_id: "${devicename}"
  1857. name: "${entity_prefix} Status BIT 1 Oil Return"
  1858. id: "${devicename}_status_bit_1_oil_return"
  1859. register_type: holding
  1860. address: 0x80
  1861. bitmask: 0x8
  1862. # Bit: 4
  1863. - platform: modbus_controller
  1864. modbus_controller_id: "${devicename}"
  1865. name: "${entity_prefix} Status BIT 1 Remote On/Off"
  1866. id: "${devicename}_status_bit_1_remote_on_off"
  1867. register_type: holding
  1868. address: 0x80
  1869. bitmask: 0x10
  1870. # Bit: 5
  1871. - platform: modbus_controller
  1872. modbus_controller_id: "${devicename}"
  1873. name: "${entity_prefix} Status BIT 1 Outdoor Unit Test Mode Mark"
  1874. id: "${devicename}_status_bit_1_outdoor_unit_test_mode_mark"
  1875. register_type: holding
  1876. address: 0x80
  1877. bitmask: 0x20
  1878. # Bit: 6
  1879. - platform: modbus_controller
  1880. modbus_controller_id: "${devicename}"
  1881. name: "${entity_prefix} Status BIT 1 Heating Mode Set By Room Thermostat"
  1882. id: "${devicename}_status_bit_1_heating_mode_set_by_room_thermostat"
  1883. register_type: holding
  1884. address: 0x80
  1885. bitmask: 0x40
  1886. # Bit: 7
  1887. - platform: modbus_controller
  1888. modbus_controller_id: "${devicename}"
  1889. name: "${entity_prefix} Status BIT 1 Cooling Mode Set By Room Thermostat"
  1890. id: "${devicename}_status_bit_1_cooling_mode_set_by_room_thermostat"
  1891. register_type: holding
  1892. address: 0x80
  1893. bitmask: 0x80
  1894. # Bit: 8
  1895. - platform: modbus_controller
  1896. modbus_controller_id: "${devicename}"
  1897. name: "${entity_prefix} Status BIT 1 Solar Energy Signal Input"
  1898. id: "${devicename}_status_bit_1_solar_energy_signal_input"
  1899. register_type: holding
  1900. address: 0x80
  1901. bitmask: 0x100
  1902. # Bit: 9
  1903. - platform: modbus_controller
  1904. modbus_controller_id: "${devicename}"
  1905. name: "${entity_prefix} Status BIT 1 Anti Freezing Operation For Water Tank"
  1906. id: "${devicename}_status_bit_1_anti_freezing_operation_for_water_tank"
  1907. register_type: holding
  1908. address: 0x80
  1909. bitmask: 0x200
  1910. # Bit: 10
  1911. - platform: modbus_controller
  1912. modbus_controller_id: "${devicename}"
  1913. name: "${entity_prefix} Status BIT 1 SG"
  1914. id: "${devicename}_status_bit_1_sg"
  1915. register_type: holding
  1916. address: 0x80
  1917. bitmask: 0x400
  1918. # Bit: 11
  1919. - platform: modbus_controller
  1920. modbus_controller_id: "${devicename}"
  1921. name: "${entity_prefix} Status BIT 1 EUV"
  1922. id: "${devicename}_status_bit_1_euv"
  1923. register_type: holding
  1924. address: 0x80
  1925. bitmask: 0x800
  1926. # Bit: 12
  1927. - platform: modbus_controller
  1928. name: "${entity_prefix} Status BIT 1 Reserved BIT 12"
  1929. modbus_controller_id: "${devicename}"
  1930. id: "${devicename}_status_bit_1_reserved_bit_12"
  1931. register_type: holding
  1932. address: 0x80
  1933. bitmask: 0x1000
  1934. # Bit: 13
  1935. - platform: modbus_controller
  1936. modbus_controller_id: "${devicename}"
  1937. name: "${entity_prefix} Status BIT 1 Request Serial Number Code"
  1938. id: "${devicename}_status_bit_1_request_serial_number_code"
  1939. register_type: holding
  1940. address: 0x80
  1941. bitmask: 0x2000
  1942. # Bit: 14
  1943. - platform: modbus_controller
  1944. modbus_controller_id: "${devicename}"
  1945. name: "${entity_prefix} Status BIT 1 Request Software Version"
  1946. id: "${devicename}_status_bit_1_request_software_version"
  1947. register_type: holding
  1948. address: 0x80
  1949. bitmask: 0x4000
  1950. # Bit: 15
  1951. - platform: modbus_controller
  1952. modbus_controller_id: "${devicename}"
  1953. name: "${entity_prefix} Status BIT 1 Request Operation Parameter"
  1954. id: "${devicename}_status_bit_1_request_operation_parameter"
  1955. register_type: holding
  1956. address: 0x80
  1957. bitmask: 0x8000
  1958.  
  1959. # Register: 129
  1960. # Bit: 0
  1961. - platform: modbus_controller
  1962. modbus_controller_id: "${devicename}"
  1963. name: "${entity_prefix} Load Output Electric Heater IBH 1"
  1964. id: "${devicename}_load_output_electric_heater_ibh1"
  1965. register_type: holding
  1966. address: 0x81
  1967. bitmask: 0x1
  1968. # Bit: 1
  1969. - platform: modbus_controller
  1970. modbus_controller_id: "${devicename}"
  1971. name: "${entity_prefix} Load Output Electric Heater IBH 2"
  1972. id: "${devicename}_load_output_reserved"
  1973. register_type: holding
  1974. address: 0x81
  1975. bitmask: 0x2
  1976. # Bit: 2
  1977. - platform: modbus_controller
  1978. modbus_controller_id: "${devicename}"
  1979. name: "${entity_prefix} Load Output Electric Heater TBH"
  1980. id: "${devicename}_load_output_electric_heater_tbh"
  1981. register_type: holding
  1982. address: 0x81
  1983. bitmask: 0x4
  1984. # Bit: 3
  1985. - platform: modbus_controller
  1986. modbus_controller_id: "${devicename}"
  1987. name: "${entity_prefix} Load Output Water Pump PUMP_I"
  1988. id: "${devicename}_load_output_water_pump_pump_i"
  1989. register_type: holding
  1990. address: 0x81
  1991. bitmask: 0x8
  1992. # Bit: 4
  1993. - platform: modbus_controller
  1994. modbus_controller_id: "${devicename}"
  1995. name: "${entity_prefix} Load Output SV 1"
  1996. id: "${devicename}_load_output_sv1"
  1997. register_type: holding
  1998. address: 0x81
  1999. bitmask: 0x10
  2000. # Bit: 5
  2001. - platform: modbus_controller
  2002. modbus_controller_id: "${devicename}"
  2003. name: "${entity_prefix} Load Output Reserved BIT 5"
  2004. id: "${devicename}_load_output_reserved_bit_5"
  2005. register_type: holding
  2006. address: 0x81
  2007. bitmask: 0x20
  2008. # Bit: 6
  2009. - platform: modbus_controller
  2010. modbus_controller_id: "${devicename}"
  2011. name: "${entity_prefix} Load Output External Water Pump P_o"
  2012. id: "${devicename}_load_output_external_water_pump_p_o"
  2013. register_type: holding
  2014. address: 0x81
  2015. bitmask: 0x40
  2016. # Bit: 7
  2017. - platform: modbus_controller
  2018. modbus_controller_id: "${devicename}"
  2019. name: "${entity_prefix} Load Output Water Return Water P_d"
  2020. id: "${devicename}_load_output_water_return_water_p_d"
  2021. register_type: holding
  2022. address: 0x81
  2023. bitmask: 0x80
  2024. # Bit: 8
  2025. - platform: modbus_controller
  2026. modbus_controller_id: "${devicename}"
  2027. name: "${entity_prefix} Load Output Mixed Water Pump P_c"
  2028. id: "${devicename}_load_output_mixed_water_pump_p_c"
  2029. register_type: holding
  2030. address: 0x81
  2031. bitmask: 0x100
  2032. # Bit: 9
  2033. - platform: modbus_controller
  2034. modbus_controller_id: "${devicename}"
  2035. name: "${entity_prefix} Load Output SV 2"
  2036. id: "${devicename}_load_output_sv2"
  2037. register_type: holding
  2038. address: 0x81
  2039. bitmask: 0x200
  2040. # Bit: 10
  2041. - platform: modbus_controller
  2042. modbus_controller_id: "${devicename}"
  2043. name: "${entity_prefix} Load Output HEAT 4"
  2044. id: "${devicename}_load_output_heat4"
  2045. register_type: holding
  2046. address: 0x81
  2047. bitmask: 0x400
  2048. # Bit: 11
  2049. - platform: modbus_controller
  2050. modbus_controller_id: "${devicename}"
  2051. name: "${entity_prefix} Load Output Solar Water Pump"
  2052. id: "${devicename}_load_output_solar_water_pump"
  2053. register_type: holding
  2054. address: 0x81
  2055. bitmask: 0x800
  2056. # Bit: 12
  2057. - platform: modbus_controller
  2058. modbus_controller_id: "${devicename}"
  2059. name: "${entity_prefix} Load Output ALARM"
  2060. id: "${devicename}_load_output_alarm"
  2061. register_type: holding
  2062. entity_category: diagnostic
  2063. address: 0x81
  2064. bitmask: 0x1000
  2065. # Bit: 13
  2066. - platform: modbus_controller
  2067. modbus_controller_id: "${devicename}"
  2068. name: "${entity_prefix} Load Output RUN"
  2069. id: "${devicename}_load_output_run"
  2070. register_type: holding
  2071. address: 0x81
  2072. bitmask: 0x2000
  2073. # Bit: 14
  2074. - platform: modbus_controller
  2075. modbus_controller_id: "${devicename}"
  2076. name: "${entity_prefix} Load Output Auxiliary Heat Source"
  2077. id: "${devicename}_load_output_auxiliary_heat_source"
  2078. register_type: holding
  2079. address: 0x81
  2080. bitmask: 0x4000
  2081. # Bit: 15
  2082. - platform: modbus_controller
  2083. modbus_controller_id: "${devicename}"
  2084. name: "${entity_prefix} Load Output DEFROST"
  2085. id: "${devicename}_load_output_defrost"
  2086. register_type: holding
  2087. address: 0x81
  2088. bitmask: 0x8000
  2089. # Bit: 0
  2090.  
  2091. # Register: 142
  2092. # Bit: 0
  2093. - platform: modbus_controller
  2094. modbus_controller_id: "${devicename}"
  2095. name: "${entity_prefix} Slave Unit Online Status: Reserved BIT 0"
  2096. id: "${devicename}_slave_unit_online_status_reserved_bit_0"
  2097. register_type: holding
  2098. address: 0x8e
  2099. bitmask: 0x1
  2100. # Bit: 1
  2101. - platform: modbus_controller
  2102. modbus_controller_id: "${devicename}"
  2103. name: "${entity_prefix} Slave Unit 1 Online Status"
  2104. id: "${devicename}_slave_unit_1_online_status"
  2105. register_type: holding
  2106. address: 0x8e
  2107. bitmask: 0x2
  2108. # Bit: 2
  2109. - platform: modbus_controller
  2110. modbus_controller_id: "${devicename}"
  2111. name: "${entity_prefix} Slave Unit 2 Online Status"
  2112. id: "${devicename}_slave_unit_2_online_status"
  2113. register_type: holding
  2114. address: 0x8e
  2115. bitmask: 0x4
  2116. # Bit: 3
  2117. - platform: modbus_controller
  2118. modbus_controller_id: "${devicename}"
  2119. name: "${entity_prefix} Slave Unit 3 Online Status"
  2120. id: "${devicename}_slave_unit_3_online_status"
  2121. register_type: holding
  2122. address: 0x8e
  2123. bitmask: 0x8
  2124. # Bit: 4
  2125. - platform: modbus_controller
  2126. modbus_controller_id: "${devicename}"
  2127. name: "${entity_prefix} Slave Unit 4 Online Status"
  2128. id: "${devicename}_slave_unit_4_online_status"
  2129. register_type: holding
  2130. address: 0x8e
  2131. bitmask: 0x10
  2132. # Bit: 5
  2133. - platform: modbus_controller
  2134. modbus_controller_id: "${devicename}"
  2135. name: "${entity_prefix} Slave Unit 5 Online Status"
  2136. id: "${devicename}_slave_unit_5_online_status"
  2137. register_type: holding
  2138. address: 0x8e
  2139. bitmask: 0x20
  2140. # Bit: 6
  2141. - platform: modbus_controller
  2142. modbus_controller_id: "${devicename}"
  2143. name: "${entity_prefix} Slave Unit 6 Online Status"
  2144. id: "${devicename}_slave_unit_6_online_status"
  2145. register_type: holding
  2146. address: 0x8e
  2147. bitmask: 0x40
  2148. # Bit: 7
  2149. - platform: modbus_controller
  2150. modbus_controller_id: "${devicename}"
  2151. name: "${entity_prefix} Slave Unit 7 Online Status"
  2152. id: "${devicename}_slave_unit_7_online_status"
  2153. register_type: holding
  2154. address: 0x8e
  2155. bitmask: 0x80
  2156. # Bit: 8
  2157. - platform: modbus_controller
  2158. modbus_controller_id: "${devicename}"
  2159. name: "${entity_prefix} Slave Unit 8 Online Status"
  2160. id: "${devicename}_slave_unit_8_online_status"
  2161. register_type: holding
  2162. address: 0x8e
  2163. bitmask: 0x100
  2164. # Bit: 9
  2165. - platform: modbus_controller
  2166. modbus_controller_id: "${devicename}"
  2167. name: "${entity_prefix} Slave Unit 9 Online Status"
  2168. id: "${devicename}_slave_unit_9_online_status"
  2169. register_type: holding
  2170. address: 0x8e
  2171. bitmask: 0x200
  2172. # Bit: 10
  2173. - platform: modbus_controller
  2174. modbus_controller_id: "${devicename}"
  2175. name: "${entity_prefix} Slave Unit 10 Online Status"
  2176. id: "${devicename}_slave_unit_10_online_status"
  2177. register_type: holding
  2178. address: 0x8e
  2179. bitmask: 0x400
  2180. # Bit: 11
  2181. - platform: modbus_controller
  2182. modbus_controller_id: "${devicename}"
  2183. name: "${entity_prefix} Slave Unit 11 Online Status"
  2184. id: "${devicename}_slave_unit_11_online_status"
  2185. register_type: holding
  2186. address: 0x8e
  2187. bitmask: 0x800
  2188. # Bit: 12
  2189. - platform: modbus_controller
  2190. modbus_controller_id: "${devicename}"
  2191. name: "${entity_prefix} Slave Unit 12 Online Status"
  2192. id: "${devicename}_slave_unit_12_online_status"
  2193. register_type: holding
  2194. address: 0x8e
  2195. bitmask: 0x1000
  2196. # Bit: 13
  2197. - platform: modbus_controller
  2198. modbus_controller_id: "${devicename}"
  2199. name: "${entity_prefix} Slave Unit 13 Online Status"
  2200. id: "${devicename}_slave_unit_13_online_status"
  2201. register_type: holding
  2202. address: 0x8e
  2203. bitmask: 0x2000
  2204. # Bit: 14
  2205. - platform: modbus_controller
  2206. modbus_controller_id: "${devicename}"
  2207. name: "${entity_prefix} Slave Unit 14 Online Status"
  2208. id: "${devicename}_slave_unit_14_online_status"
  2209. register_type: holding
  2210. address: 0x8e
  2211. bitmask: 0x4000
  2212. # Bit: 15
  2213. - platform: modbus_controller
  2214. modbus_controller_id: "${devicename}"
  2215. name: "${entity_prefix} Slave Unit 15 Online Status"
  2216. id: "${devicename}_slave_unit_15_online_status"
  2217. register_type: holding
  2218. address: 0x8e
  2219. bitmask: 0x8000
  2220.  
  2221. # Register: 210
  2222. # Bit: 0
  2223. - platform: modbus_controller
  2224. modbus_controller_id: "${devicename}"
  2225. name: "${entity_prefix} Parameter Setting 1 Heating And Cooling First Or Water First"
  2226. id: "${devicename}_parameter_setting_1_heating_and_cooling_first_or_water_first"
  2227. register_type: holding
  2228. address: 0xd2
  2229. bitmask: 0x1
  2230. # Bit: 1
  2231. - platform: modbus_controller
  2232. modbus_controller_id: "${devicename}"
  2233. name: "${entity_prefix} Parameter Setting 1 Dual Room Thermostat Supported"
  2234. id: "${devicename}_parameter_setting_1_dual_room_thermostat_supported"
  2235. register_type: holding
  2236. address: 0xd2
  2237. bitmask: 0x2
  2238. # Bit: 2
  2239. - platform: modbus_controller
  2240. modbus_controller_id: "${devicename}"
  2241. name: "${entity_prefix} Parameter Setting 1 Room Thermostat"
  2242. id: "${devicename}_parameter_setting_1_room_thermostat"
  2243. register_type: holding
  2244. address: 0xd2
  2245. bitmask: 0x4
  2246. # Bit: 3
  2247. - platform: modbus_controller
  2248. modbus_controller_id: "${devicename}"
  2249. name: "${entity_prefix} Parameter Setting 1 Supports Room Thermostat"
  2250. id: "${devicename}_parameter_setting_1_supports_room_thermostat"
  2251. register_type: holding
  2252. address: 0xd2
  2253. bitmask: 0x8
  2254. # Bit: 4
  2255. - platform: modbus_controller
  2256. modbus_controller_id: "${devicename}"
  2257. name: "${entity_prefix} Parameter Setting 1 Supports Room Temperature Sensor Ta"
  2258. id: "${devicename}_parameter_setting_1_supports_room_temperature_sensor_ta"
  2259. register_type: holding
  2260. address: 0xd2
  2261. bitmask: 0x10
  2262. # Bit: 5
  2263. # Midea: PUMPI silent mode, 1; valid, 0: invalid
  2264. - platform: modbus_controller
  2265. modbus_controller_id: "${devicename}"
  2266. name: "${entity_prefix} Parameter Setting 1 Supports T1 Sensor"
  2267. id: "${devicename}_parameter_setting_1_supports_t1_sensor"
  2268. register_type: holding
  2269. address: 0xd2
  2270. bitmask: 0x20
  2271. # Bit: 6
  2272. - platform: modbus_controller
  2273. modbus_controller_id: "${devicename}"
  2274. name: "${entity_prefix} Parameter Setting 1 T1S Heating High Low Temperature Settings"
  2275. id: "${devicename}_parameter_setting_1_t1s_heating_high_low_temperature_settings"
  2276. register_type: holding
  2277. address: 0xd2
  2278. bitmask: 0x40
  2279. # Bit: 7
  2280. - platform: modbus_controller
  2281. modbus_controller_id: "${devicename}"
  2282. name: "${entity_prefix} Parameter Setting 1 Enable Heating"
  2283. id: "${devicename}_parameter_setting_1_enable_heating"
  2284. register_type: holding
  2285. address: 0xd2
  2286. bitmask: 0x80
  2287. # Bit: 8
  2288. - platform: modbus_controller
  2289. modbus_controller_id: "${devicename}"
  2290. name: "${entity_prefix} Parameter Setting 1 T1s Cooling High Low Temperature Settings"
  2291. id: "${devicename}_parameter_setting_1_t1s_cooling_high_low_temperature_settings"
  2292. register_type: holding
  2293. address: 0xd2
  2294. bitmask: 0x100
  2295. # Bit: 9
  2296. - platform: modbus_controller
  2297. modbus_controller_id: "${devicename}"
  2298. name: "${entity_prefix} Parameter Setting 1 Enable Cooling"
  2299. id: "${devicename}_parameter_setting_1_enable_cooling"
  2300. register_type: holding
  2301. address: 0xd2
  2302. bitmask: 0x200
  2303. # Bit: 10
  2304. - platform: modbus_controller
  2305. modbus_controller_id: "${devicename}"
  2306. name: "${entity_prefix} Parameter Setting 1 DHW Pump Supports Pipe Disinfect"
  2307. id: "${devicename}_parameter_setting_1_dhw_pump_supports_pipe_disinfect"
  2308. register_type: holding
  2309. address: 0xd2
  2310. bitmask: 0x400
  2311. # Bit: 11
  2312. - platform: modbus_controller
  2313. modbus_controller_id: "${devicename}"
  2314. name: "${entity_prefix} Parameter Setting 1 Reserved BIT 11"
  2315. id: "${devicename}_parameter_setting_1_reserved_bit_11"
  2316. register_type: holding
  2317. address: 0xd2
  2318. bitmask: 0x800
  2319. # Bit: 12
  2320. - platform: modbus_controller
  2321. modbus_controller_id: "${devicename}"
  2322. name: "${entity_prefix} Parameter Setting 1 DHW Pump Supported"
  2323. id: "${devicename}_parameter_setting_1_dhw_pump_supported"
  2324. register_type: holding
  2325. address: 0xd2
  2326. bitmask: 0x1000
  2327. # Bit: 13
  2328. - platform: modbus_controller
  2329. modbus_controller_id: "${devicename}"
  2330. name: "${entity_prefix} Parameter Setting 1 Supports Disinfection"
  2331. id: "${devicename}_parameter_setting_1_supports_disinfection"
  2332. register_type: holding
  2333. address: 0xd2
  2334. bitmask: 0x2000
  2335. # Bit: 14
  2336. - platform: modbus_controller
  2337. modbus_controller_id: "${devicename}"
  2338. name: "${entity_prefix} Parameter Setting 1 Supports Water Tank Electric Heater TBH"
  2339. id: "${devicename}_parameter_setting_1_supports_water_tank_electric_heater_tbh"
  2340. register_type: holding
  2341. address: 0xd2
  2342. bitmask: 0x4000
  2343. # Bit: 15
  2344. - platform: modbus_controller
  2345. modbus_controller_id: "${devicename}"
  2346. name: "${entity_prefix} Parameter Setting 1 Enable Water Heating"
  2347. id: "${devicename}_parameter_setting_1_enable_water_heating"
  2348. register_type: holding
  2349. address: 0xd2
  2350. bitmask: 0x8000
  2351.  
  2352. # Register: 211
  2353. # Bit: 0
  2354. - platform: modbus_controller
  2355. modbus_controller_id: "${devicename}"
  2356. name: "${entity_prefix} Parameter Setting 2 IBH AHS Installation Position"
  2357. id: "${devicename}_parameter_setting_2_ibh_ahs_installation_position"
  2358. register_type: holding
  2359. address: 0xd3
  2360. bitmask: 0x1
  2361. # Bit: 1
  2362. - platform: modbus_controller
  2363. modbus_controller_id: "${devicename}"
  2364. name: "${entity_prefix} Parameter Setting 2 Tbt Sensor Enable"
  2365. id: "${devicename}_parameter_setting_2_tbt_sensor_enable"
  2366. register_type: holding
  2367. address: 0xd3
  2368. bitmask: 0x2
  2369. # Bit: 2
  2370. - platform: modbus_controller
  2371. modbus_controller_id: "${devicename}"
  2372. name: "${entity_prefix} Parameter Setting 2 Ta Sensor Position"
  2373. id: "${devicename}_parameter_setting_2_ta_sensor_position"
  2374. register_type: holding
  2375. address: 0xd3
  2376. bitmask: 0x4
  2377. # Bit: 3
  2378. - platform: modbus_controller
  2379. modbus_controller_id: "${devicename}"
  2380. name: "${entity_prefix} Parameter Setting 2 Double Zone Setting Is Valid"
  2381. id: "${devicename}_parameter_setting_2_double_zone_setting_is_valid"
  2382. register_type: holding
  2383. address: 0xd3
  2384. bitmask: 0x8
  2385. # Bit: 4
  2386. - platform: modbus_controller
  2387. modbus_controller_id: "${devicename}"
  2388. name: "${entity_prefix} Parameter Setting 2 Setting The High Low Temperature Of Heating Mode T1S"
  2389. id: "${devicename}_parameter_setting_2_setting_the_high_low_temperature_of_heating_mode_t1s"
  2390. register_type: holding
  2391. address: 0xd3
  2392. bitmask: 0x10
  2393. # Bit: 5
  2394. - platform: modbus_controller
  2395. modbus_controller_id: "${devicename}"
  2396. name: "${entity_prefix} Parameter Setting 2 Setting The High Low Temperature Of Cooling Mode T1S"
  2397. id: "${devicename}_parameter_setting_2_setting_the_high_low_temperature_of_cooling_mode_t1s"
  2398. register_type: holding
  2399. address: 0xd3
  2400. bitmask: 0x20
  2401. # Bit: 6
  2402. # Midea: T1B sensor enable
  2403. - platform: modbus_controller
  2404. modbus_controller_id: "${devicename}"
  2405. name: "${entity_prefix} Parameter Setting 2 Tw2 Enabled"
  2406. id: "${devicename}_parameter_setting_2_tw2_enabled"
  2407. register_type: holding
  2408. address: 0xd3
  2409. bitmask: 0x40
  2410. # Bit: 7
  2411. - platform: modbus_controller
  2412. modbus_controller_id: "${devicename}"
  2413. name: "${entity_prefix} Parameter Setting 2 Smart Grid"
  2414. id: "${devicename}_parameter_setting_2_smart_grid"
  2415. register_type: holding
  2416. address: 0xd3
  2417. bitmask: 0x80
  2418. # Bit: 8
  2419. - platform: modbus_controller
  2420. modbus_controller_id: "${devicename}"
  2421. name: "${entity_prefix} Parameter Setting 2 Port Definition"
  2422. id: "${devicename}_parameter_setting_2_port_definition"
  2423. register_type: holding
  2424. address: 0xd3
  2425. bitmask: 0x100
  2426. # Bit: 9
  2427. - platform: modbus_controller
  2428. modbus_controller_id: "${devicename}"
  2429. name: "${entity_prefix} Parameter Setting 2 Solar Energy Kit Enable"
  2430. id: "${devicename}_parameter_setting_2_solar_energy_kit_enable"
  2431. register_type: holding
  2432. address: 0xd3
  2433. bitmask: 0x200
  2434. # Bit: 10
  2435. - platform: modbus_controller
  2436. modbus_controller_id: "${devicename}"
  2437. name: "${entity_prefix} Parameter Setting 2 Solar Energy Input Port"
  2438. id: "${devicename}_parameter_setting_2_solar_energy_input_port"
  2439. register_type: holding
  2440. address: 0xd3
  2441. bitmask: 0x400
  2442. # Bit: 11
  2443. - platform: modbus_controller
  2444. modbus_controller_id: "${devicename}"
  2445. name: "${entity_prefix} Parameter Setting 2 Piping Length Selection"
  2446. id: "${devicename}_parameter_setting_2_piping_length_selection"
  2447. register_type: holding
  2448. address: 0xd3
  2449. bitmask: 0x800
  2450. # Bit: 12
  2451. - platform: modbus_controller
  2452. modbus_controller_id: "${devicename}"
  2453. name: "${entity_prefix} Parameter Setting 2 Tbt2 Sensor Is Valid"
  2454. id: "${devicename}_parameter_setting_2_tbt2_sensor_is_valid"
  2455. register_type: holding
  2456. address: 0xd3
  2457. bitmask: 0x1000
  2458. # Bit: 13
  2459. - platform: modbus_controller
  2460. modbus_controller_id: "${devicename}"
  2461. name: "${entity_prefix} Parameter Setting 2 Enable Temperature Collection Kit"
  2462. id: "${devicename}_parameter_setting_2_enable_temperature_collection_kit"
  2463. register_type: holding
  2464. address: 0xd3
  2465. bitmask: 0x2000
  2466. # Bit: 14
  2467. - platform: modbus_controller
  2468. modbus_controller_id: "${devicename}"
  2469. name: "${entity_prefix} Parameter Setting 2 M1M2 Is Used For AHS Control"
  2470. id: "${devicename}_parameter_setting_2_m1m2_is_used_for_ahs_control"
  2471. register_type: holding
  2472. address: 0xd3
  2473. bitmask: 0x4000
  2474. # Bit: 15
  2475. - platform: modbus_controller
  2476. modbus_controller_id: "${devicename}"
  2477. name: "${entity_prefix} Parameter Setting 2 Reserved BIT 15"
  2478. id: "${devicename}_parameter_setting_2_reserved_bit_15"
  2479. register_type: holding
  2480. address: 0xd3
  2481. bitmask: 0x8000
  2482. # Template binary sensor which shows if the heat pump is running
  2483. - platform: template
  2484. name: "${entity_prefix} Heat pump running"
  2485. id: "${devicename}_heat_pump_running"
  2486. lambda: |-
  2487. int fan_speed = id(${devicename}_fan_speed).state;
  2488.  
  2489. if (fan_speed > 0) {
  2490. // Fan is running
  2491. return true;
  2492. } else {
  2493. // Fan is not running
  2494. return false;
  2495. }
  2496.  
  2497. switch:
  2498.  
  2499. - platform: gpio
  2500. name: "a24--light1"
  2501. pin:
  2502. pcf8574: pcf8574_hub_out_1
  2503. number: 0
  2504. mode: OUTPUT
  2505. inverted: true
  2506.  
  2507. - platform: gpio
  2508. name: "a24--light2"
  2509. pin:
  2510. pcf8574: pcf8574_hub_out_1
  2511. number: 1
  2512. mode: OUTPUT
  2513. inverted: true
  2514.  
  2515. - platform: gpio
  2516. name: "a24--light3"
  2517. pin:
  2518. pcf8574: pcf8574_hub_out_1
  2519. number: 2
  2520. mode: OUTPUT
  2521. inverted: true
  2522.  
  2523. - platform: gpio
  2524. name: "a24--light4"
  2525. pin:
  2526. pcf8574: pcf8574_hub_out_1
  2527. number: 3
  2528. mode: OUTPUT
  2529. inverted: true
  2530.  
  2531. - platform: gpio
  2532. name: "a24--light5"
  2533. pin:
  2534. pcf8574: pcf8574_hub_out_1
  2535. number: 4
  2536. mode: OUTPUT
  2537. inverted: true
  2538.  
  2539. - platform: gpio
  2540. name: "a24--light6"
  2541. pin:
  2542. pcf8574: pcf8574_hub_out_1
  2543. number: 5
  2544. mode: OUTPUT
  2545. inverted: true
  2546.  
  2547. - platform: gpio
  2548. name: "a24--light7"
  2549. pin:
  2550. pcf8574: pcf8574_hub_out_1
  2551. number: 6
  2552. mode: OUTPUT
  2553. inverted: true
  2554.  
  2555. - platform: gpio
  2556. name: "a24--light8"
  2557. pin:
  2558. pcf8574: pcf8574_hub_out_1
  2559. number: 7
  2560. mode: OUTPUT
  2561. inverted: true
  2562.  
  2563.  
  2564. - platform: gpio
  2565. name: "a24--light9"
  2566. pin:
  2567. pcf8574: pcf8574_hub_out_1
  2568. number: 8
  2569. mode: OUTPUT
  2570. inverted: true
  2571.  
  2572. - platform: gpio
  2573. name: "a24--light10"
  2574. pin:
  2575. pcf8574: pcf8574_hub_out_1
  2576. number: 9
  2577. mode: OUTPUT
  2578. inverted: true
  2579.  
  2580. - platform: gpio
  2581. name: "a24--light11"
  2582. pin:
  2583. pcf8574: pcf8574_hub_out_1
  2584. number: 10
  2585. mode: OUTPUT
  2586. inverted: true
  2587.  
  2588. - platform: gpio
  2589. name: "a24--light12"
  2590. pin:
  2591. pcf8574: pcf8574_hub_out_1
  2592. number: 11
  2593. mode: OUTPUT
  2594. inverted: true
  2595.  
  2596.  
  2597.  
  2598. - platform: gpio
  2599. name: "a24--light13"
  2600. pin:
  2601. pcf8574: pcf8574_hub_out_2
  2602. number: 0
  2603. mode: OUTPUT
  2604. inverted: true
  2605.  
  2606. - platform: gpio
  2607. name: "a24--light14"
  2608. pin:
  2609. pcf8574: pcf8574_hub_out_2
  2610. number: 1
  2611. mode: OUTPUT
  2612. inverted: true
  2613.  
  2614. - platform: gpio
  2615. name: "a24--light15"
  2616. pin:
  2617. pcf8574: pcf8574_hub_out_2
  2618. number: 2
  2619. mode: OUTPUT
  2620. inverted: true
  2621.  
  2622. - platform: gpio
  2623. name: "a24--light16"
  2624. pin:
  2625. pcf8574: pcf8574_hub_out_2
  2626. number: 3
  2627. mode: OUTPUT
  2628. inverted: true
  2629.  
  2630.  
  2631. - platform: gpio
  2632. name: "a24--light17"
  2633. pin:
  2634. pcf8574: pcf8574_hub_out_2
  2635. number: 4
  2636. mode: OUTPUT
  2637. inverted: true
  2638.  
  2639. - platform: gpio
  2640. name: "a24--light18"
  2641. pin:
  2642. pcf8574: pcf8574_hub_out_2
  2643. number: 5
  2644. mode: OUTPUT
  2645. inverted: true
  2646.  
  2647. - platform: gpio
  2648. name: "a24--light19"
  2649. pin:
  2650. pcf8574: pcf8574_hub_out_2
  2651. number: 6
  2652. mode: OUTPUT
  2653. inverted: true
  2654.  
  2655. - platform: gpio
  2656. name: "a24--light20"
  2657. pin:
  2658. pcf8574: pcf8574_hub_out_2
  2659. number: 7
  2660. mode: OUTPUT
  2661. inverted: true
  2662.  
  2663. - platform: gpio
  2664. name: "a24--light21"
  2665. pin:
  2666. pcf8574: pcf8574_hub_out_2
  2667. number: 8
  2668. mode: OUTPUT
  2669. inverted: true
  2670.  
  2671. - platform: gpio
  2672. name: "a24--light22"
  2673. pin:
  2674. pcf8574: pcf8574_hub_out_2
  2675. number: 9
  2676. mode: OUTPUT
  2677. inverted: true
  2678.  
  2679. - platform: gpio
  2680. name: "a24--light23"
  2681. pin:
  2682. pcf8574: pcf8574_hub_out_2
  2683. number: 10
  2684. mode: OUTPUT
  2685. inverted: true
  2686.  
  2687. - platform: gpio
  2688. name: "a24--light24"
  2689. pin:
  2690. pcf8574: pcf8574_hub_out_2
  2691. number: 11
  2692. mode: OUTPUT
  2693. inverted: true
  2694.  
  2695. - platform: factory_reset
  2696. name: Restart with Factory Default Settings
  2697. # Register: 0 -> Bit 2
  2698. - platform: modbus_controller
  2699. modbus_controller_id: "${devicename}"
  2700. name: "${entity_prefix} Power DHW T5S"
  2701. id: "${devicename}_power_dhw_t5s"
  2702. register_type: holding
  2703. entity_category: config
  2704. address: 0x0
  2705. bitmask: 0x4
  2706. # Register: 5 -> Bit 12
  2707. - platform: modbus_controller
  2708. modbus_controller_id: "${devicename}"
  2709. name: "${entity_prefix} Weather Compensation Zone 1"
  2710. id: "${devicename}_weather_compensation_zone_1"
  2711. register_type: holding
  2712. entity_category: config
  2713. address: 0x5
  2714. bitmask: 0x1000
  2715. # Register: 5 -> Bit 13
  2716. - platform: modbus_controller
  2717. modbus_controller_id: "${devicename}"
  2718. name: "${entity_prefix} Weather Compensation Zone 2"
  2719. id: "${devicename}_weather_compensation_zone_2"
  2720. register_type: holding
  2721. entity_category: config
  2722. address: 0x5
  2723. bitmask: 0x2000
  2724.  
  2725. # Register: 7
  2726. - platform: modbus_controller
  2727. modbus_controller_id: "${devicename}"
  2728. name: "${entity_prefix} Forced Water Tank Heating On/Off"
  2729. id: "${devicename}_forced_water_tank_heating_on_off"
  2730. icon: mdi:fire-alert
  2731. address: 0x7
  2732. register_type: holding
  2733. entity_category: config
  2734. write_lambda: |-
  2735. uint16_t value = 0;
  2736.  
  2737. if (x == 1) {
  2738. ESP_LOGI("main", "Set forced water tank heating ON");
  2739. value = 1;
  2740. } else {
  2741. ESP_LOGI("main", "Set forced water tank heating OFF");
  2742. value = 2;
  2743. }
  2744.  
  2745. esphome::modbus_controller::ModbusCommandItem set_payload_command = esphome::modbus_controller::ModbusCommandItem::create_write_single_command(${devicename}, 0x7, value);
  2746. ${devicename}->queue_command(set_payload_command);
  2747.  
  2748. return {};
  2749.  
  2750.  
  2751. number:
  2752. # Register: 2 (Zone 1, Low)
  2753. - platform: modbus_controller
  2754. modbus_controller_id: "${devicename}"
  2755. name: "${entity_prefix} Set Water Temperature T1S Zone 1"
  2756. id: "${devicename}_set_water_temperature_t1s_zone_1"
  2757. register_type: holding
  2758. address: 0x2
  2759. value_type: U_WORD
  2760. unit_of_measurement: "°C"
  2761. entity_category: config
  2762. min_value: 5
  2763. max_value: 60
  2764. mode: slider
  2765. lambda: |-
  2766. // Update the global var unmasked_value_water_temperature_t1s
  2767. id(unmasked_value_water_temperature_t1s) = x;
  2768.  
  2769. // ESP_LOGI("","unmasked_value_water_temperature_t1s: %d",id(unmasked_value_water_temperature_t1s));
  2770.  
  2771. uint8_t value_bytes[2];
  2772. uint16_t value = x;
  2773. value_bytes[0] = value >> 8; // high byte (zone 2)
  2774. value_bytes[1] = value & 0x00FF; // low byte (zone 1)
  2775.  
  2776. // ESP_LOGI("","Zone 1 is %d", value_bytes[1]);
  2777. // ESP_LOGI("","Zone 2 is %d", value_bytes[0]);
  2778.  
  2779. return value_bytes[1];
  2780. write_lambda: |-
  2781. uint16_t value = id(unmasked_value_water_temperature_t1s); // The original unmasked value
  2782. uint8_t value_byte = x; // New byte value with the new temp for zone 1
  2783.  
  2784. value &= 0xFF00; // Clear the lower byte of the value
  2785. value |= value_byte; // Update the lower byte with the new byte value
  2786.  
  2787. // ESP_LOGI("main", "Original value: %d", id(unmasked_value_water_temperature_t1s));
  2788. // ESP_LOGI("main", "New value: %d", value);
  2789.  
  2790. esphome::modbus_controller::ModbusCommandItem set_payload_command = esphome::modbus_controller::ModbusCommandItem::create_write_single_command(${devicename}, 0x2, value);
  2791. ${devicename}->queue_command(set_payload_command);
  2792.  
  2793. return {};
  2794.  
  2795. # Register: 2 (Zone 2, High)
  2796. - platform: modbus_controller
  2797. modbus_controller_id: "${devicename}"
  2798. name: "${entity_prefix} Set Water Temperature T1S Zone 2"
  2799. id: "${devicename}_set_water_temperature_t1s_zone_2"
  2800. register_type: holding
  2801. address: 0x2
  2802. value_type: U_WORD
  2803. unit_of_measurement: "°C"
  2804. entity_category: config
  2805. min_value: 5
  2806. max_value: 60
  2807. mode: slider
  2808. lambda: |-
  2809. // The global var unmasked_value_water_temperature_t1s is already
  2810. // updated in the previous, where the low byte variant is executed
  2811. // id(unmasked_value_water_temperature_t1s) = x;
  2812.  
  2813. uint8_t value_bytes[2];
  2814. uint16_t value = x;
  2815. value_bytes[0] = value >> 8; // high byte (zone 2)
  2816. value_bytes[1] = value & 0x00FF; // low byte (zone 1)
  2817.  
  2818. return value_bytes[0];
  2819. write_lambda: |-
  2820. uint16_t value = id(unmasked_value_water_temperature_t1s); // The original unmasked value
  2821. uint8_t value_byte = x; // New byte value with the new temp for zone 2
  2822.  
  2823. value &= 0x00FF; // Clear the upper byte of the value
  2824. value |= (value_byte << 8); // Update the upper byte with the new byte value
  2825.  
  2826. esphome::modbus_controller::ModbusCommandItem set_payload_command = esphome::modbus_controller::ModbusCommandItem::create_write_single_command(${devicename}, 0x2, value);
  2827. ${devicename}->queue_command(set_payload_command);
  2828.  
  2829. return {};
  2830.  
  2831. # Register: 4
  2832. - platform: modbus_controller
  2833. modbus_controller_id: "${devicename}"
  2834. name: "${entity_prefix} Set DHW Tank Temperature T5s"
  2835. id: "${devicename}_set_dhw_tank_temperature_t5s"
  2836. register_type: holding
  2837. address: 0x4
  2838. value_type: U_WORD
  2839. unit_of_measurement: "°C"
  2840. entity_category: config
  2841. min_value: 20
  2842. max_value: 60
  2843. mode: slider
  2844.  
  2845. # Register: 6 (Zone 1, Low)
  2846. - platform: modbus_controller
  2847. modbus_controller_id: "${devicename}"
  2848. name: "${entity_prefix} Weather Compensation Curve Zone 1"
  2849. id: "${devicename}_weather_compensation_curve_zone_1"
  2850. register_type: holding
  2851. address: 0x6
  2852. value_type: U_WORD
  2853. entity_category: config
  2854. min_value: 1
  2855. max_value: 9
  2856. mode: slider
  2857. lambda: |-
  2858. // Update the global var unmasked_curve_selection
  2859. id(unmasked_curve_selection) = x;
  2860.  
  2861. // ESP_LOGI("","unmasked_curve_selection: %d",id(unmasked_curve_selection));
  2862.  
  2863. uint8_t value_bytes[2];
  2864. uint16_t value = x;
  2865. value_bytes[0] = value >> 8; // high byte (zone 2)
  2866. value_bytes[1] = value & 0x00FF; // low byte (zone 1)
  2867.  
  2868. // ESP_LOGI("","Zone 1 is %d", value_bytes[1]);
  2869. // ESP_LOGI("","Zone 2 is %d", value_bytes[0]);
  2870.  
  2871. return value_bytes[1];
  2872. write_lambda: |-
  2873. uint16_t value = id(unmasked_curve_selection); // The original unmasked value
  2874. uint8_t value_byte = x; // New byte value with the new temp for zone 1
  2875.  
  2876. value &= 0xFF00; // Clear the lower byte of the value
  2877. value |= value_byte; // Update the lower byte with the new byte value
  2878.  
  2879. // ESP_LOGI("main", "Original value: %d", id(unmasked_curve_selection));
  2880. // ESP_LOGI("main", "New value: %d", value);
  2881.  
  2882. esphome::modbus_controller::ModbusCommandItem set_payload_command = esphome::modbus_controller::ModbusCommandItem::create_write_single_command(${devicename}, 0x6, value);
  2883. ${devicename}->queue_command(set_payload_command);
  2884.  
  2885. return {};
  2886. # Register: 6 (Zone 2, High)
  2887. - platform: modbus_controller
  2888. modbus_controller_id: "${devicename}"
  2889. name: "${entity_prefix} Weather Compensation Curve Zone 2"
  2890. id: "${devicename}_weather_compensation_curve_zone_2"
  2891. register_type: holding
  2892. address: 0x6
  2893. value_type: U_WORD
  2894. entity_category: config
  2895. min_value: 1
  2896. max_value: 9
  2897. mode: slider
  2898. lambda: |-
  2899. // The global var unmasked_curve_selection is already
  2900. // updated in the previous, where the low byte variant is executed
  2901. // id(unmasked_curve_selection) = x;
  2902.  
  2903. uint8_t value_bytes[2];
  2904. uint16_t value = x;
  2905. value_bytes[0] = value >> 8; // high byte (zone 2)
  2906. value_bytes[1] = value & 0x00FF; // low byte (zone 1)
  2907.  
  2908. return value_bytes[0];
  2909. write_lambda: |-
  2910. uint16_t value = id(unmasked_curve_selection); // The original unmasked value
  2911. uint8_t value_byte = x; // New byte value with the new temp for zone 2
  2912.  
  2913. value &= 0x00FF; // Clear the upper byte of the value
  2914. value |= (value_byte << 8); // Update the upper byte with the new byte value
  2915.  
  2916. esphome::modbus_controller::ModbusCommandItem set_payload_command = esphome::modbus_controller::ModbusCommandItem::create_write_single_command(${devicename}, 0x6, value);
  2917. ${devicename}->queue_command(set_payload_command);
  2918.  
  2919. return {};
  2920.  
  2921. # Register: 229
  2922. - platform: modbus_controller
  2923. modbus_controller_id: "${devicename}"
  2924. name: "${entity_prefix} dT1SH"
  2925. id: "${devicename}_dt1sh"
  2926. register_type: holding
  2927. address: 0xe5
  2928. value_type: U_WORD
  2929. unit_of_measurement: "°C"
  2930. entity_category: config
  2931. min_value: 2
  2932. max_value: 10
  2933. # Register: 230
  2934. - platform: modbus_controller
  2935. modbus_controller_id: "${devicename}"
  2936. name: "${entity_prefix} dTSH"
  2937. id: "${devicename}_dtsh"
  2938. register_type: holding
  2939. address: 0xe6
  2940. value_type: U_WORD
  2941. unit_of_measurement: "°C"
  2942. entity_category: config
  2943. min_value: 1
  2944. max_value: 10
  2945. # Register: 231
  2946. - platform: modbus_controller
  2947. modbus_controller_id: "${devicename}"
  2948. name: "${entity_prefix} T4hmax"
  2949. id: "${devicename}_t4hmax"
  2950. register_type: holding
  2951. address: 0xe7
  2952. value_type: U_WORD
  2953. unit_of_measurement: "°C"
  2954. entity_category: config
  2955. min_value: 20
  2956. max_value: 35
  2957. # Register: 232
  2958. - platform: modbus_controller
  2959. modbus_controller_id: "${devicename}"
  2960. name: "${entity_prefix} T4hmin"
  2961. id: "${devicename}_t4hmin"
  2962. register_type: holding
  2963. address: 0xe8
  2964. value_type: S_WORD
  2965. unit_of_measurement: "°C"
  2966. entity_category: config
  2967. min_value: -25
  2968. max_value: 5
  2969. # Register: 265
  2970. - platform: modbus_controller
  2971. modbus_controller_id: "${devicename}"
  2972. name: "${entity_prefix} T1SetH1"
  2973. id: "${devicename}_t1seth1"
  2974. register_type: holding
  2975. address: 0x109
  2976. value_type: U_WORD
  2977. unit_of_measurement: "°C"
  2978. entity_category: config
  2979. min_value: 25
  2980. max_value: 60
  2981. # Register: 266
  2982. - platform: modbus_controller
  2983. modbus_controller_id: "${devicename}"
  2984. name: "${entity_prefix} T1SetH2"
  2985. id: "${devicename}_t1seth2"
  2986. register_type: holding
  2987. address: 0x10a
  2988. value_type: U_WORD
  2989. unit_of_measurement: "°C"
  2990. entity_category: config
  2991. min_value: 25
  2992. max_value: 60
  2993. # Register: 267
  2994. - platform: modbus_controller
  2995. modbus_controller_id: "${devicename}"
  2996. name: "${entity_prefix} T4H1"
  2997. id: "${devicename}_t4h1"
  2998. register_type: holding
  2999. address: 0x10b
  3000. value_type: S_WORD
  3001. unit_of_measurement: "°C"
  3002. entity_category: config
  3003. min_value: -25
  3004. max_value: 30
  3005. # Register: 268
  3006. - platform: modbus_controller
  3007. modbus_controller_id: "${devicename}"
  3008. name: "${entity_prefix} T4H2"
  3009. id: "${devicename}_t4h2"
  3010. register_type: holding
  3011. address: 0x10c
  3012. value_type: S_WORD
  3013. unit_of_measurement: "°C"
  3014. entity_category: config
  3015. min_value: -25
  3016. max_value: 35
  3017.  
  3018. # Register: 1602
  3019. - platform: modbus_controller
  3020. modbus_controller_id: "fancoil"
  3021. name: "Set temp"
  3022. id: "fancoil_set_temp"
  3023. register_type: holding
  3024. address: 1602
  3025. value_type: S_WORD
  3026. unit_of_measurement: "°C"
  3027. entity_category: config
  3028. min_value: 17
  3029. max_value: 32
  3030.  
  3031. # Register: 1601
  3032. - platform: modbus_controller
  3033. modbus_controller_id: "fancoil"
  3034. name: "Fancoil_mode"
  3035. id: "fancoil_mode"
  3036. register_type: holding
  3037. address: 1601
  3038. value_type: S_WORD
  3039. entity_category: config
  3040. min_value: 0
  3041. max_value: 5
  3042.  
  3043.  
  3044. # # Register: 270 (Low)
  3045. # - platform: modbus_controller
  3046. # modbus_controller_id: "${devicename}"
  3047. # name: "${entity_prefix} t_T4 FRESH_H"
  3048. # id: "${devicename}_t_t4_fresh_h"
  3049. # register_type: holding
  3050. # address: 0x10e
  3051. # value_type: U_WORD
  3052. # unit_of_measurement: hr
  3053. # bitmask: 0x00FF
  3054. # entity_category: config
  3055. # min_value: 0.5
  3056. # max_value: 6
  3057. # step: 0.5
  3058. # # Register: 270 (High)
  3059. # - platform: modbus_controller
  3060. # modbus_controller_id: "${devicename}"
  3061. # name: "${entity_prefix} t_T4 FRESH_C"
  3062. # id: "${devicename}_t_t4_fresh_c"
  3063. # register_type: holding
  3064. # address: 0x10e
  3065. # value_type: U_WORD
  3066. # unit_of_measurement: hr
  3067. # bitmask: 0xFF00
  3068. # entity_category: config
  3069. # min_value: 0.5
  3070. # max_value: 6
  3071. # step: 0.5
  3072.  
  3073. text_sensor:
  3074. - platform: version
  3075. name: "ESPHome Version"
  3076. hide_timestamp: true
  3077. # Active State
  3078. - platform: template
  3079. name: "${entity_prefix} Active State"
  3080. id: "${devicename}_active_state"
  3081. lambda: |-
  3082. if (id(${devicename}_load_output_run).state) {
  3083. // The heat pump is on
  3084. if (id(${devicename}_status_bit_1_defrosting).state) {
  3085. return {"Defrosting"};
  3086. } else if (id(${devicename}_load_output_sv1).state) {
  3087. return {"DHW"};
  3088. } else {
  3089. if (id(${devicename}_status_bit_1_heating_mode_set_by_room_thermostat).state) {
  3090. return {"Heating"};
  3091. } else if (id(${devicename}_status_bit_1_cooling_mode_set_by_room_thermostat).state) {
  3092. return {"Cooling"};
  3093. } else {
  3094. return {"Unknown"};
  3095. }
  3096. }
  3097. } else {
  3098. // The heat pump is off
  3099. return {"Inactive"};
  3100. }
  3101. # Current fault mapped to error code
  3102. - platform: template
  3103. name: "${entity_prefix} Current Fault Error Code"
  3104. id: "${devicename}_current_fault_error_code"
  3105. lambda: |-
  3106. int current_fault = id(${devicename}_current_fault).state;
  3107.  
  3108. // ESP_LOGI("main", "Current fault: %d", current_fault);
  3109.  
  3110. if (current_fault >= 0 && current_fault <= 143) {
  3111. return std::to_string(current_fault);
  3112. } else {
  3113. return {"Unknown"};
  3114. }
  3115. filters:
  3116. - map:
  3117. - 0 -> OK
  3118. - 1 -> E0
  3119. - 2 -> E1
  3120. - 3 -> E2
  3121. - 4 -> E3
  3122. - 5 -> E4
  3123. - 6 -> E5
  3124. - 7 -> E6
  3125. - 8 -> E7
  3126. - 9 -> E8
  3127. - 10 -> E9
  3128. - 11 -> EA
  3129. - 12 -> Eb
  3130. - 13 -> Ec
  3131. - 14 -> Ed
  3132. - 15 -> EE
  3133. - 20 -> P0
  3134. - 21 -> P1
  3135. - 23 -> P3
  3136. - 24 -> P4
  3137. - 25 -> P5
  3138. - 26 -> P6
  3139. - 31 -> Pb
  3140. - 33 -> Pd
  3141. - 38 -> PP
  3142. - 39 -> H0
  3143. - 40 -> H1
  3144. - 41 -> H2
  3145. - 42 -> H3
  3146. - 43 -> H4
  3147. - 44 -> H5
  3148. - 45 -> H6
  3149. - 46 -> H7
  3150. - 47 -> H8
  3151. - 48 -> H9
  3152. - 49 -> HA
  3153. - 50 -> Hb
  3154. - 52 -> Hd
  3155. - 53 -> HE
  3156. - 54 -> HF
  3157. - 55 -> HH
  3158. - 57 -> HP
  3159. - 65 -> C7
  3160. - 112 -> bH
  3161. - 116 -> F1
  3162. - 134 -> L0
  3163. - 135 -> L1
  3164. - 136 -> L2
  3165. - 138 -> L4
  3166. - 139 -> L5
  3167. - 141 -> L7
  3168. - 142 -> L8
  3169. - 143 -> L9
  3170. # Current fault mapped to error code description
  3171. - platform: template
  3172. name: "${entity_prefix} Current Fault Error Code Description"
  3173. id: "${devicename}_current_fault_error_code_description"
  3174. lambda: |-
  3175. int current_fault = id(${devicename}_current_fault).state;
  3176.  
  3177. // ESP_LOGI("main", "Current fault: %d", current_fault);
  3178.  
  3179. if (current_fault >= 0 && current_fault <= 143) {
  3180. return std::to_string(current_fault);
  3181. } else {
  3182. return {"Unknown"};
  3183. }
  3184. filters:
  3185. - map:
  3186. - 0 -> OK
  3187. - 1 -> Water flow fault(E8 displayed 3 times)
  3188. - 2 -> Phase loss or neutral wire and live wire are connected reversely(only for three phase unit)
  3189. - 3 -> Communication fault between controller and hydraulic module
  3190. - 4 -> Final outlet water temp. sensor(T1) fault
  3191. - 5 -> Water tank temp. sensor(T5) fault
  3192. - 6 -> The condenser outlet refrigerant temperature sensor(T3) fault
  3193. - 7 -> The ambient temperature sensor(T4) fault
  3194. - 8 -> Buffer tank up temp. sensor(Tbt1) fault
  3195. - 9 -> Water flow failure
  3196. - 10 -> Suction temp. sensor (Th) fault
  3197. - 11 -> Discharge temp. sensor (Tp) fault
  3198. - 12 -> Solar temp. sensor(Tsolar) fault
  3199. - 13 -> Buffer tank low temp. sensor(Tbt2) fault
  3200. - 14 -> Inlet water temp. sensor(Tw_in) malfunction
  3201. - 15 -> Hydraulic module EEprom failure
  3202. - 20 -> Low pressure switch protection
  3203. - 21 -> High pressure switch protection
  3204. - 23 -> Compressor overcurrent protection
  3205. - 24 -> High discharge temperature protection
  3206. - 25 -> |Tw_out - Tw_in| value too big protection
  3207. - 26 -> Inverter module protection
  3208. - 31 -> Anti-freeze mode
  3209. - 33 -> High temperature protection of refrigerant outlet temp. of condenser
  3210. - 38 -> Tw_out - Tw_in unusual protection
  3211. - 39 -> Communication fault between main board PCB B and main control board of hydraulic module
  3212. - 40 -> Communication fault between inverter module PCB A and main control board PCB B
  3213. - 41 -> Refrigerant liquid temp. sensor(T2) fault
  3214. - 42 -> Refrigerant gas temp. sensor(T2B) fault
  3215. - 43 -> Three times P6(L0/L1) protection
  3216. - 44 -> Room temo. sensor (Ta) fault
  3217. - 45 -> DC fan motor fault
  3218. - 46 -> Voltage protection
  3219. - 47 -> Pressure sensor fault
  3220. - 48 -> Outlet water for zone 2 temp. sensor(Tw2) fault
  3221. - 49 -> Outlet water temp. sensor(Tw_out) fault
  3222. - 50 -> 3 times PP protection and Tw_out<7℃
  3223. - 52 -> Communication fault between hydraulic module parallel
  3224. - 53 -> Communication error between main board and thermostat transfer board
  3225. - 54 -> Inverter module board EE PROM fault
  3226. - 55 -> H6 display 10 times in 2 hours
  3227. - 57 -> Low pressure protection (Pe<0.6) occurred 3 times in 1 hour
  3228. - 65 -> Transducer module temperature too high protection
  3229. - 112 -> PED PCB fault
  3230. - 116 -> Low DC generatrix voltage protection
  3231. - 134 -> Module protection
  3232. - 135 -> DC generatrix low voltage protection
  3233. - 136 -> DC generatrix high voltage protection
  3234. - 138 -> MCE fault
  3235. - 139 -> Zero speed protection
  3236. - 141 -> Phase sequence fault
  3237. - 142 -> Speed difference > 15Hz protection between the front and the back clock
  3238. - 143 -> Speed difference > 15Hz protection between the real and the setting speed
  3239. # Fault 1 mapped to error code
  3240. - platform: template
  3241. name: "${entity_prefix} Fault 1 Error Code"
  3242. id: "${devicename}_fault_1_error_code"
  3243. lambda: |-
  3244. int fault_one = id(${devicename}_fault_1).state;
  3245.  
  3246. if (fault_one >= 0 && fault_one <= 143) {
  3247. return std::to_string(fault_one);
  3248. } else {
  3249. return {"Unknown"};
  3250. }
  3251. filters:
  3252. - map:
  3253. - 0 -> OK
  3254. - 1 -> E0
  3255. - 2 -> E1
  3256. - 3 -> E2
  3257. - 4 -> E3
  3258. - 5 -> E4
  3259. - 6 -> E5
  3260. - 7 -> E6
  3261. - 8 -> E7
  3262. - 9 -> E8
  3263. - 10 -> E9
  3264. - 11 -> EA
  3265. - 12 -> Eb
  3266. - 13 -> Ec
  3267. - 14 -> Ed
  3268. - 15 -> EE
  3269. - 20 -> P0
  3270. - 21 -> P1
  3271. - 23 -> P3
  3272. - 24 -> P4
  3273. - 25 -> P5
  3274. - 26 -> P6
  3275. - 31 -> Pb
  3276. - 33 -> Pd
  3277. - 38 -> PP
  3278. - 39 -> H0
  3279. - 40 -> H1
  3280. - 41 -> H2
  3281. - 42 -> H3
  3282. - 43 -> H4
  3283. - 44 -> H5
  3284. - 45 -> H6
  3285. - 46 -> H7
  3286. - 47 -> H8
  3287. - 48 -> H9
  3288. - 49 -> HA
  3289. - 50 -> Hb
  3290. - 52 -> Hd
  3291. - 53 -> HE
  3292. - 54 -> HF
  3293. - 55 -> HH
  3294. - 57 -> HP
  3295. - 65 -> C7
  3296. - 112 -> bH
  3297. - 116 -> F1
  3298. - 134 -> L0
  3299. - 135 -> L1
  3300. - 136 -> L2
  3301. - 138 -> L4
  3302. - 139 -> L5
  3303. - 141 -> L7
  3304. - 142 -> L8
  3305. - 143 -> L9
  3306. # Fault 2 mapped to error code
  3307. - platform: template
  3308. name: "${entity_prefix} Fault 2 Error Code"
  3309. id: "${devicename}_fault_2_error_code"
  3310. lambda: |-
  3311. int fault_two = id(${devicename}_fault_2).state;
  3312.  
  3313. if (fault_two >= 0 && fault_two <= 143) {
  3314. return std::to_string(fault_two);
  3315. } else {
  3316. return {"Unknown"};
  3317. }
  3318. filters:
  3319. - map:
  3320. - 0 -> OK
  3321. - 1 -> E0
  3322. - 2 -> E1
  3323. - 3 -> E2
  3324. - 4 -> E3
  3325. - 5 -> E4
  3326. - 6 -> E5
  3327. - 7 -> E6
  3328. - 8 -> E7
  3329. - 9 -> E8
  3330. - 10 -> E9
  3331. - 11 -> EA
  3332. - 12 -> Eb
  3333. - 13 -> Ec
  3334. - 14 -> Ed
  3335. - 15 -> EE
  3336. - 20 -> P0
  3337. - 21 -> P1
  3338. - 23 -> P3
  3339. - 24 -> P4
  3340. - 25 -> P5
  3341. - 26 -> P6
  3342. - 31 -> Pb
  3343. - 33 -> Pd
  3344. - 38 -> PP
  3345. - 39 -> H0
  3346. - 40 -> H1
  3347. - 41 -> H2
  3348. - 42 -> H3
  3349. - 43 -> H4
  3350. - 44 -> H5
  3351. - 45 -> H6
  3352. - 46 -> H7
  3353. - 47 -> H8
  3354. - 48 -> H9
  3355. - 49 -> HA
  3356. - 50 -> Hb
  3357. - 52 -> Hd
  3358. - 53 -> HE
  3359. - 54 -> HF
  3360. - 55 -> HH
  3361. - 57 -> HP
  3362. - 65 -> C7
  3363. - 112 -> bH
  3364. - 116 -> F1
  3365. - 134 -> L0
  3366. - 135 -> L1
  3367. - 136 -> L2
  3368. - 138 -> L4
  3369. - 139 -> L5
  3370. - 141 -> L7
  3371. - 142 -> L8
  3372. - 143 -> L9
  3373. # Fault 3 mapped to error code
  3374. - platform: template
  3375. name: "${entity_prefix} Fault 3 Error Code"
  3376. id: "${devicename}_fault_3_error_code"
  3377. lambda: |-
  3378. int fault_three = id(${devicename}_fault_3).state;
  3379.  
  3380. if (fault_three >= 0 && fault_three <= 143) {
  3381. return std::to_string(fault_three);
  3382. } else {
  3383. return {"Unknown"};
  3384. }
  3385. filters:
  3386. - map:
  3387. - 0 -> OK
  3388. - 1 -> E0
  3389. - 2 -> E1
  3390. - 3 -> E2
  3391. - 4 -> E3
  3392. - 5 -> E4
  3393. - 6 -> E5
  3394. - 7 -> E6
  3395. - 8 -> E7
  3396. - 9 -> E8
  3397. - 10 -> E9
  3398. - 11 -> EA
  3399. - 12 -> Eb
  3400. - 13 -> Ec
  3401. - 14 -> Ed
  3402. - 15 -> EE
  3403. - 20 -> P0
  3404. - 21 -> P1
  3405. - 23 -> P3
  3406. - 24 -> P4
  3407. - 25 -> P5
  3408. - 26 -> P6
  3409. - 31 -> Pb
  3410. - 33 -> Pd
  3411. - 38 -> PP
  3412. - 39 -> H0
  3413. - 40 -> H1
  3414. - 41 -> H2
  3415. - 42 -> H3
  3416. - 43 -> H4
  3417. - 44 -> H5
  3418. - 45 -> H6
  3419. - 46 -> H7
  3420. - 47 -> H8
  3421. - 48 -> H9
  3422. - 49 -> HA
  3423. - 50 -> Hb
  3424. - 52 -> Hd
  3425. - 53 -> HE
  3426. - 54 -> HF
  3427. - 55 -> HH
  3428. - 57 -> HP
  3429. - 65 -> C7
  3430. - 112 -> bH
  3431. - 116 -> F1
  3432. - 134 -> L0
  3433. - 135 -> L1
  3434. - 136 -> L2
  3435. - 138 -> L4
  3436. - 139 -> L5
  3437. - 141 -> L7
  3438. - 142 -> L8
  3439. - 143 -> L9
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement