Hi,
As there are no posts/hints how to control a Prana ventilation unit with heat exchange, I’m leaving here solution that I’ve used.
To simply emulate the infrared remote control I used an ESP32 controler + a cheap infrared led transmitter + ESPHome addon.
The code for the remote buttons emulated via ESPHome is:
remote_transmitter:
pin: GPIO26
# Infrared remotes use a 50% carrier signal
carrier_duty_percent: 50%
switch:
- platform: template
name: "Power"
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9839, -4372, 752, -423, 752, -423, 752, -423, 752, -422, 752, -423, 752, -423, 752, -423, 752, -423, 752,
-1529, 751, -1529, 752, -1528, 751, -1529, 751, -1529, 751, -1529, 751, -1529, 751, -1528, 752, -422, 751,
-423, 751, -422, 752, -422, 751, -423, 751, -423, 751, -422, 752, -422, 752, -1529, 751, -1528, 752, -1528,
751, -1528, 752, -1528, 753, -1526, 752, -1528, 752, -1527, 9837, -2107, 9822, -2121 ]
carrier_frequency: 38kHz
- platform: template
name: Light display
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9759, -4427, 700, -474, 700, -473, 701, -473, 700, -474, 700, -474, 699, -475, 700, -474, 700, -475, 699, -1582, 698,
-1583, 698, -1583, 697, -1583, 697, -1584, 697, -1584, 696, -1585, 696, -1585, 695, -1585, 695, -478, 696, -478, 695,
-479, 695, -479, 695, -480, 694, -480, 694, -480, 695, -479, 694, -1588, 693, -1588, 693, -1588, 692, -1589, 692, -1589, 691, -1590, 691, -1590, 9757, -2171 ]
carrier_frequency: 38kHz
- platform: template
name: Heat OFF
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9857, -4393, 737, -441, 738, -441, 738, -441, 737, -442, 737, -442, 737, -441, 738, -441, 737, -442, 737, -1548, 737,
-1548, 737, -1548, 737, -1548, 737, -1548, 737, -1548, 737, -1548, 737, -1548, 738, -440, 739, -441, 738, -1548, 738,
-1547, 739, -441, 738, -441, 739, -440, 739, -441, 738, -1547, 739, -1547, 738, -441, 738, -441, 738, -1547, 738,
-1547, 738, -1546, 738, -1547, 9859, -2130, 9870, -2131 ]
carrier_frequency: 38kHz
- platform: template
name: Heat ON
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9865, -4395, 735, -443, 736, -443, 736, -443, 735, -444, 735, -444, 735, -444, 735, -444, 735, -444, 735,
-1550, 735, -1550, 735, -1549, 736, -1549, 736, -1549, 737, -1547, 738, -1547, 738, -1547, 737, -1547, 738,
-440, 739, -440, 738, -1547, 738, -440, 738, -440, 738, -440, 739, -440, 738, -440, 739, -1546, 738, -1546, 738,
-440, 739, -1546, 738, -1546, 738, -1547, 738, -1546, 9856, -2127, 9856, -2127 ]
carrier_frequency: 38kHz
- platform: template
name: Fan speed maximum
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9782, -4402, 726, -447, 727, -447, 726, -447, 727, -447, 726, -447, 727, -447, 726, -447, 727, -447,
727, -1554, 727, -1554, 726, -1554, 727, -1554, 727, -1554, 726, -1554, 727, -1554, 726, -1554, 727,
-446, 727, -1554, 726, -447, 727, -1554, 727, -446, 727, -447, 726, -447, 727, -447, 727, -1554, 727,
-446, 727, -1554, 727, -447, 726, -1555, 726, -1554, 726, -1555, 726, -1555, 9788, -2136 ]
carrier_frequency: 38kHz
- platform: template
name: Froze button on off
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9775, -4410, 719, -453, 720, -453, 720, -453, 720, -454, 719, -454, 720, -453, 720, -454, 720, -453, 720,
-1561, 720, -1561, 719, -1562, 719, -1561, 719, -1561, 720, -1561, 719, -1561, 720, -1561, 719, -1561, 719,
-454, 719, -1561, 720, -453, 720, -1561, 719, -454, 719, -454, 720, -453, 719, -454, 721, -1560, 719,
-454, 720, -1561, 719, -454, 719, -1562, 719, -1562, 719, -1561, 9776, -2143 ]
carrier_frequency: 38kHz
- platform: template
name: Fan speed night mode
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9739, -4429, 673, -498, 675, -497, 675, -497, 676, -496, 677, -495, 678, -494, 678, -494, 679, -494, 678, -1601,
679, -1600, 678, -1601, 678, -1601, 677, -1602, 677, -1602, 677, -1602, 677, -1602, 676, -1603, 676, -495, 677,
-1603, 675, -1604, 675, -496, 676, -496, 676, -497, 675, -497, 674, -499, 674, -1606, 673, -499, 674, -498, 674,
-1606, 673, -1606, 673, -1607, 671, -1608, 13, -3, 9698, -2215 ]
carrier_frequency: 38kHz
- platform: template
name: Fan speed minus
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9880, -4392, 734, -443, 734, -443, 732, -442, 731, -442, 731, -442, 732, -443, 730, -441, 731, -442, 732,
-1548, 732, -1548, 732, -1547, 732, -1547, 732, -1548, 729, -1547, 732, -1548, 731, -1548, 731, -442, 732,
-1548, 732, -1547, 732, -1547, 732, -442, 733, -441, 734, -441, 733, -441, 734, -1547, 734, -441, 735,
-442, 734, -441, 733, -1548, 736, -1547, 735, -1547, 734, -1548, 9823, -2128 ]
carrier_frequency: 38kHz
- platform: template
name: Fan speed plus
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9831, -4401, 726, -454, 724, -454, 724, -455, 726, -454, 729, -455, 727, -454, 724, -454, 724,
-454, 722, -1560, 724, -1560, 729, -1560, 726, -1560, 725, -1560, 723, -1560, 723, -1560, 724,
-1559, 724, -454, 724, -454, 724, -1560, 724, -453, 724, -1559, 723, -452, 722, -453, 721, -453,
720, -1559, 720, -1559, 720, -452, 721, -1558, 720, -453, 719, -1559, 720, -1559, 719, -1559, 9736, -2138 ]
carrier_frequency: 38kHz
- platform: template
name: Timer fan minus
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9657, -4398, 719, -444, 721, -443, 720, -444, 721, -443, 721, -443, 721, -444, 727, -437, 721, -444,
720, -1550, 721, -1550, 720, -1550, 721, -1550, 720, -1550, 720, -1550, 720, -1550, 720, -1550, 720,
-443, 721, -1550, 720, -1550, 720, -444, 720, -443, 721, -443, 721, -443, 721, -443, 720, -1551, 720,
-444, 720, -444, 720, -1551, 720, -1551, 719, -1551, 720, -1551, 719, -1551, 9658, -2133 ]
carrier_frequency: 38kHz
- platform: template
name: Timer fan plus
turn_on_action:
- remote_transmitter.transmit_raw:
code: [ 9626, -4396, 719, -444, 719, -444, 720, -444, 719, -444, 719, -445, 718, -445, 718, -445, 719, -445, 718,
-1552, 718, -1552, 717, -1553, 717, -1552, 717, -1553, 716, -1553, 716, -1553, 716, -1554, 714, -448, 715,
-448, 715, -447, 715, -1555, 714, -449, 714, -448, 714, -449, 714, -449, 714, -1556, 713, -1556, 713, -1557,
712, -450, 713, -1557, 712, -1557, 713, -1557, 712, -1558, 9636, -2130 ]
carrier_frequency: 38kHz
Enjoy!