• acinfo64
  • Registratie: Februari 2009
  • Laatst online: 28-09 19:09
Is er ook ergens een hele simpele stap voor stap beschrijving hoe ik het dashboard krijg zoals op deze site of the ESPAlterma aan de gang kan krijgen? Ik zie met name links naar threads die soms >10 pagina's details hebben waar je uiteindelijk nauwelijks doorheen komt.

Mijn sensor doet het onderstaande gedaan maar geen verder niks te zien in Home Assistant behale de sensor en wat ruwe data.
SirLikeAlot schreef op donderdag 1 februari 2024 @ 09:26:
Goed, ik probeer het zo duidelijk mogelijk uit te leggen voor iedereen....

Plaats in de standaard configuration.yaml:

code:
1
2
3
homeassistant:
  *snip*
  packages: !include_dir_named packages


Of gebruik het packages mapje op een locatie wat je zelf al gebruikt. Maak het mapje 'packages' aan en plaats hierin het package (filename=altherma.yaml);

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
################################################
## ESPAltherma
################################################

################################################
## Component setup
################################################

#  - platform: generic_thermostat
#    name: ESPAltherma
#    heater: switch.altherma
#    target_sensor: sensor.woonkamer_temperature
#    min_temp: 15
#    max_temp: 25
#    cold_tolerance: 0.5
#    hot_tolerance: 0.5
#    min_cycle_duration:
#      minutes: 30
#    away_temp: 15
#    precision: 0.1

# climate:
  # - platform: smart_thermostat
    # name: ESPAltherma
    # unique_id: climate_espaltherma
    # heater: switch.altherma #esp
    # invert_heater: true
    # target_sensor: sensor.gemiddelde_woonkamer_temperatuur
    # outdoor_sensor: sensor.espaltherma_outdoorairtemp
    # keep_alive:
      # seconds: 120
    # cold_tolerance: 0.5
    # hot_tolerance: 0.5
    # #standaard
    # #kp: 5
    # #ki: 0.01
    # #kd: 500

    # #vloerverwarming?
    # kp: 100
    # ki: 0.0032
    # kd: 3000 #half uur response? Wellicht minderen
    # ke: 0.5 #outdoor sensor gain

    # sampling_period: 0 #?
    # pwm: 01:30:00
    # min_cycle_duration: 00:60:00
    # min_off_cycle_duration: 00:10:00
    # precision: 0.1
    # noiseband: 0.2

    # ac_mode: false
    # away_temp: 17
    # eco_temp: 18
    # boost_temp: 22
    # comfort_temp: 21
    # home_temp: 20
    # sleep_temp: 18
    # target_temp: 20
    # target_temp_step: 0.1
    # min_temp: 7
    # max_temp: 28

################################################
## Sensor etc
################################################

homeassistant:
  customize:
    sensor.althermasensors_fan:
      friendly_name: "Fan"
      icon: mdi:fan
    sensor.althermasensors_error_type:
      friendly_name: "Error Type"
      icon: mdi:alert-circle
    sensor.althermasensors_discharge_pipe_temp:
      friendly_name: "Discharge pipe temp"
    sensor.althermasensors_operation_mode:
      friendly_name: "Operation Mode"
    sensor.althermasensors_i_o_mode:
      friendly_name: "I/O (indoor/outdoor) Mode"
    sensor.althermasensors_current_mode:
      friendly_name: "Current Mode"

    sensor.althermasensors_booster_thermal_protection:
      friendly_name: "Booster thermal protection OLD"
    sensor.althermasensors_back_up_thermal_protection:
      friendly_name: "Back-up thermal protection OLD"
    sensor.althermasensors_thermal_protector_backup_heater:
      friendly_name: "Thermal Protector Backup Heater"
    sensor.althermasensors_thermal_protector_booster_heater:
      friendly_name: "Thermal Protector Booster Heater"

    sensor.althermasensors_watertanktemperature:
      friendly_name: "Watertanktemperature"
      icon: mdi:thermometer-water
    sensor.althermasensors_flowpump:
      friendly_name: "Flowpump"
      icon: mdi:water-pump
    sensor.althermasensors_water_flow_switch:
      friendly_name: "Water flow switch"
    sensor.althermasensors_water_pump_operation:
      friendly_name: "Water pump operation"
    sensor.althermasensors_water_pump_level:
      friendly_name: "Water pump level"
    sensor.althermasensors_reheat:
      friendly_name: "Reheat"
    sensor.althermasensors_delta_t_heating:
      friendly_name: "Delta T Heating"
    sensor.althermasensors_delta_t_cooling:
      friendly_name: "Delta T Cooling"
    sensor.althermasensors_outdoor_temperature:
      friendly_name: "Outdoor temperature"
    sensor.althermasensors_thermostat:
      friendly_name: "Thermostat"
    sensor.althermasensors_defrost_operation:
      friendly_name: "Defrost operation"
    sensor.althermasensors_back_up_heater:
      friendly_name: "Back-up heater"
    sensor.althermasensors_watertank_setpoint:
      friendly_name: "Watertank setpoint"
    sensor.althermasensors_room_temperature_setpoint:
      friendly_name: "Room temperature setpoint"
    sensor.althermasensors_water_leaving_temperature:
      friendly_name: "Water leaving temperature before buh"
      icon: mdi:thermometer-water
    sensor.althermasensors_water_leaving_temperature_after_buh:
      friendly_name: "Water leaving temperature after buh"
      icon: mdi:thermometer-water
    sensor.althermasensors_water_inlet_temperature:
      friendly_name: "Water inlet temperature"
      icon: mdi:thermometer-water
    sensor.althermasensors_heat_exchanger_temperature:
      friendly_name: "Heat exchanger temperature"
    sensor.althermasensors_refrigerator_liquid_temperature:
      friendly_name: "Refrigerator liquid temperature"
    sensor.althermasensors_water_pressure:
      friendly_name: "Water pressure"
      icon: mdi:car-brake-low-pressure
    sensor.althermasensors_leaving_water_setpoint:
      friendly_name: "Leaving water setpoint"
    sensor.althermasensors_roomtemperature:
      friendly_name: "Roomtemperature"
    sensor.althermasensors_inverter_current:
      friendly_name: "Inverter current"
      icon: mdi:current-ac
    sensor.althermasensors_inverter_frequency:
      friendly_name: "Inverter frequency"
    sensor.althermasensors_inverter_usage:
      friendly_name: "Inverter usage"
    sensor.althermasensors_voltage:
      friendly_name: "Voltage"
      icon: mdi:flash-triangle
    sensor.althermasensors_heat_yield:
      friendly_name: "Heat yield"
    sensor.althermasensors_suction_pipe_temperature:
      friendly_name: "Suction pipe temperature"
    sensor.althermasensors_inverter_current_secondary:
      friendly_name: "Inverter current secondary"
    sensor.althermasensors_pressure_sensor:
      friendly_name: "Pressure sensor"
      icon: mdi:car-brake-low-pressure
    sensor.althermasensors_std_compressor_1:
      friendly_name: "STD Compressor 1"
    sensor.althermasensors_freeze_protection:
      friendly_name: "Freeze Protection"
    sensor.althermasensors_silent_mode:
      friendly_name: "Silent mode"
    sensor.althermasensors_espaltherma_last_update:
      friendly_name: "ESPAltherma last update"
    sensor.althermasensors_cop:
      friendly_name: "COP"
    sensor.althermasensors_cop_with_cooling:
      friendly_name: "COP with cooling"
    sensor.althermasensors_t:
      friendly_name: "∆T"
    sensor.althermasensors_desinfectie:
      friendly_name: "Desinfectie"

sensor:
  - platform: min_max
    name: Gemiddelde Woonkamer Temperatuur
    unique_id: woonkamer_gemiddelde
    type: mean
    round_digits: 2
    entity_ids:
      - sensor.althermasensors_roomtemperature #via espaltherma
      #- sensor.airco_woonkamer_inside_temperature #airco geeft geen goede resultaten
      - sensor.airthings_woonkamer_temperature #airthings
      #- sensor.temperatuurmeter_temperature #zigbee temperatuurmeter

  - platform: template
    sensors:
      # smart_thermostat_output:
        # friendly_name: PID Output
        # unit_of_measurement: "%"
        # value_template: "{{ state_attr('climate.espaltherma', 'control_output') | float(0) }}"
      # smart_thermostat_p:
        # friendly_name: PID P
        # unit_of_measurement: "%"
        # value_template: "{{ state_attr('climate.espaltherma', 'pid_p') | float(0) }}"
      # smart_thermostat_i:
        # friendly_name: PID I
        # unit_of_measurement: "%"
        # value_template: "{{ state_attr('climate.espaltherma', 'pid_i') | float(0) }}"
      # smart_thermostat_d:
        # friendly_name: PID D
        # unit_of_measurement: "%"
        # value_template: "{{ state_attr('climate.espaltherma', 'pid_d') | float(0) }}"
      # smart_thermostat_e:
        # friendly_name: PID E
        # unit_of_measurement: "%"
        # value_template: "{{ state_attr('climate.espaltherma', 'pid_e') | float(0) }}"

      #test!
      espaltherma_cop:
        friendly_name: "COP"
        unit_of_measurement: "COP"
        value_template:
          "{% if is_state_attr('sensor.althermasensors','Operation Mode', 'Heating') and is_state_attr('sensor.althermasensors','Freeze Protection', 'OFF')  %}
          {{
          ((state_attr('sensor.althermasensors','Flow sensor (l/min)')| float(0) * 0.06 * 1.16 * (state_attr('sensor.althermasensors','Leaving water temp. before BUH (R1T)') | float(0) - state_attr('sensor.althermasensors','Inlet water temp.(R4T)')|float(0)) )
          /
          (state_attr('sensor.althermasensors','INV primary current (A)') | float(0) * state_attr('sensor.althermasensors','Voltage (N-phase) (V)')|float(0) / 1000))
          |round(2)
          }}
          {% else %} 0 {%endif%}"
        availability_template: >-
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

template:
  - unique_id: "althermasensors"
    sensor:
      - name: "Althermasensors Fan"
        unique_id: fan
        state: "{{ state_attr('sensor.althermasensors','Fan 1 (10 rpm)') | float(0) | round * 10 }}"
        unit_of_measurement: "rpm"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Error type"
        unique_id: errortype
        state: "{{ state_attr('sensor.althermasensors','Error type') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Discharge pipe temp"
        unique_id: dischargepipetemp
        state: "{{ state_attr('sensor.althermasensors','Discharge pipe temp.') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Discharge pipe temp.') | is_number }}
      - name: "Althermasensors Operation mode"
        unique_id: operationmode
        state: "{{ state_attr('sensor.althermasensors','Operation Mode') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors I/O Mode"
        unique_id: iomode
        state: "{{ state_attr('sensor.althermasensors','I/U operation mode') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Current mode"
        unique_id: currentmode
        ##??state: "{% if is_state('sensor.althermasensors_thermostat', 'ON') %} {{ state_attr('sensor.althermasensors','Operation Mode') }} {% else %} Off {% endif %}"
        state: "{{ state_attr('sensor.althermasensors','Operation Mode') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

      - name: "Althermasensors Thermal Protector Backup Heater"
        unique_id: backupthermalprotectionnew
        state: "{{ state_attr('sensor.althermasensors','Thermal protector (Q1L) BUH') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Thermal Protector Booster Heater"
        unique_id: boosterthermalprotectionnew
        state: "{{ state_attr('sensor.althermasensors','Thermal protector BSH') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

      - name: "Althermasensors Watertanktemperature"
        unique_id: watertanktemperature
        state: "{{ state_attr('sensor.althermasensors','DHW tank temp. (R5T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','DHW tank temp. (R5T)') | is_number }}
      - name: "Althermasensors Flowpump"
        unique_id: flowpump
        state: "{{ state_attr('sensor.althermasensors','Flow sensor (l/min)') }}"
        unit_of_measurement: "l/min"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Flow sensor (l/min)') | is_number }}
      - name: "Althermasensors Water flow switch"
        unique_id: waterflowswitch
        state: "{{ state_attr('sensor.althermasensors','Water flow switch') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Water pump operation"
        unique_id: waterpumpoperation
        state: "{{ state_attr('sensor.althermasensors','Water pump operation') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Water pump level"
        unique_id: waterpumplevel
        state: "{{ 100 - state_attr('sensor.althermasensors','Water pump signal (0:max-100:stop)') }}"
        unit_of_measurement: "%"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Water pump signal (0:max-100:stop)') | is_number }}
      - name: "Althermasensors Reheat"
        unique_id: reheat
        state: "{{ state_attr('sensor.althermasensors','Reheat ON/OFF') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Circulation pump"
        unique_id: circulationpump
        state: "{{ state_attr('sensor.althermasensors','Circulation pump operation') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Delta T Heating"
        unique_id: deltatheating
        state: "{{ state_attr('sensor.althermasensors','Target delta T heating') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Delta T Cooling"
        unique_id: deltatcooling
        state: "{{ state_attr('sensor.althermasensors','Target delta T cooling') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Outdoor temperature"
        unique_id: outdoortemperature
        state: "{{ state_attr('sensor.althermasensors','R1T-Outdoor air temp.') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','R1T-Outdoor air temp.') | is_number }}
      - name: "Althermasensors Thermostat"
        unique_id: thermostat
        state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Defrost operation"
        unique_id: defrostoperation
        state: "{{ state_attr('sensor.althermasensors','Defrost Operation') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Back-up heater"
        unique_id: backupheater
        state: "{{ state_attr('sensor.althermasensors','BUH Step1') }}"
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Watertank setpoint"
        unique_id: watertanksetpoint
        state: "{{ state_attr('sensor.althermasensors','DHW setpoint') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','DHW setpoint') | is_number }}
      - name: "Althermasensors Room temperature setpoint"
        unique_id: roomtemperaturesetpoint
        state: "{{ state_attr('sensor.althermasensors','RT setpoint') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','RT setpoint') | is_number }}
      - name: "Althermasensors Water leaving temperature"
        unique_id: waterleavingtemperature
        state: "{{ state_attr('sensor.althermasensors','Leaving water temp. before BUH (R1T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Leaving water temp. before BUH (R1T)') | is_number }}
      - name: "Althermasensors Water leaving temperature after buh"
        unique_id: waterleavingtemperatureafterbuh
        state: "{{ state_attr('sensor.althermasensors','Leaving water temp. after BUH (R2T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Leaving water temp. after BUH (R2T)') | is_number }}
      - name: "Althermasensors Water inlet temperature"
        unique_id: waterinlettemperature
        state: "{{ state_attr('sensor.althermasensors','Inlet water temp.(R4T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Inlet water temp.(R4T)') | is_number }}
      - name: "Althermasensors Heat exchanger temperature"
        unique_id: heatexchangertemperature
        state: "{{ state_attr('sensor.althermasensors','Heat exchanger mid-temp.') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Heat exchanger mid-temp.') | is_number }}
      - name: "Althermasensors Refrigerator liquid temperature"
        unique_id: refrigeratorliquidtemperature
        state: "{{ state_attr('sensor.althermasensors','Refrig. Temp. liquid side (R3T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Refrig. Temp. liquid side (R3T)') | is_number }}
      - name: "Althermasensors Water pressure"
        unique_id: waterpressure
        state: "{{ state_attr('sensor.althermasensors','Water pressure') }}"
        unit_of_measurement: "bar"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Water pressure') | is_number }}
      - name: "Althermasensors Leaving water setpoint"
        unique_id: leavingwatersetpoint
        state: "{{ state_attr('sensor.althermasensors','LW setpoint (main)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','LW setpoint (main)') | is_number }}
      - name: "Althermasensors Roomtemperature"
        unique_id: roomtemperature
        state: "{{ state_attr('sensor.althermasensors','Indoor ambient temp. (R1T)') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Indoor ambient temp. (R1T)') | is_number }}
      - name: "Althermasensors Inverter current"
        unique_id: invertercurrent
        state: "{{ state_attr('sensor.althermasensors','INV primary current (A)') }}"
        unit_of_measurement: "A"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','INV primary current (A)') | is_number }}
      - name: "Althermasensors Inverter frequency"
        unique_id: inverterfrequency
        state: "{{ state_attr('sensor.althermasensors','INV frequency (rps)') }}"
        unit_of_measurement: "rps"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Inverter usage"
        unique_id: inverterusage
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.althermasensors_inverter_current')|float(0) * 230 | float(0)) }} {% else %} 0 {% endif %}"
        unit_of_measurement: "W"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Voltage"
        unique_id: voltage
        state: "{{ state_attr('sensor.althermasensors','Voltage (N-phase) (V)') }}"
        unit_of_measurement: "V"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Voltage (N-phase) (V)') | is_number }}
      - name: "Althermasensors Heat yield"
        unique_id: heatyield
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.althermasensors_inverter_usage')|float(0) * states('sensor.althermasensors_cop')| float(0))|round|int }} {% else %} 0 {% endif %}"
        unit_of_measurement: "W"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

      #- name: "Althermasensors Low noise control"
      #  unique_id: lownoisecontrol
      #  state: "{{ state_attr('sensor.althermasensors', 'Low noise control') }}"
      #  state_class: measurement
      - name: "Althermasensors Suction pipe temperature"
        unique_id: suctionpipetemperature
        state: "{{ state_attr('sensor.althermasensors', 'Suction pipe temp.') }}"
        unit_of_measurement: "°C"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','Suction pipe temp.') | is_number }}
      - name: "Althermasensors Inverter current secondary"
        unique_id: invertercurrentsecondary
        state: "{{ state_attr('sensor.althermasensors', 'INV secondary current (A)') }}"
        unit_of_measurement: "A"
        state_class: measurement
        availability: >
          {{ state_attr('sensor.althermasensors','INV secondary current (A)') | is_number }}
      - name: "Althermasensors Pressure sensor"
        unique_id: pressuresensor
        state: "{{ state_attr('sensor.althermasensors', 'Pressure sensor') }}"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors STD Compressor 1"
        unique_id: stdcompressor1
        state: "{{ state_attr('sensor.althermasensors', 'STD Compressor 1') }}"
        #state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Freeze Protection"
        unique_id: freezeprotection
        state: "{{ state_attr('sensor.althermasensors', 'Freeze Protection') }}"
        #state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors Silent mode"
        unique_id: silentmode
        state: "{{ state_attr('sensor.althermasensors', 'Silent Mode') }}"
        #ON OFF dus geen measurement?
        #state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
      - name: "Althermasensors ESPAltherma last update"
        unique_id: espalthermalastupdate
        state: "{{ as_timestamp(states.sensor.althermasensors.last_updated) | timestamp_custom('%H:%M:%S',True) }}"

      - name: "Althermasensors COP"
        unique_id: cop
        unit_of_measurement: "COP"
        state_class: measurement
        state: >-
          {% if is_state_attr('sensor.althermasensors','Operation Mode', 'Heating') and is_state_attr('sensor.althermasensors','Freeze Protection', 'OFF')  %}
              {% if states('sensor.althermasensors_inverter_usage') | float(0) < 90 %}
                  {% set cop = 0.0 | float(default=0) %} 
              {% elif states('sensor.althermasensors_inverter_usage') | float(0) > 90 %}
                  {% set t1 = states('sensor.althermasensors_water_leaving_temperature') | float(0) %}
                  {% set t2 = states('sensor.althermasensors_water_inlet_temperature') | float(0) %}
                  {% set f = states('sensor.althermasensors_flowpump') | float(0) %}
                  {% set pw = states('sensor.althermasensors_inverter_usage') | float(0) %}
                  {% set pwg = ((t1 - t2)*f) / 60 * 4184 | float(0) %}
                  {% set cop = pwg / pw | float(0)  %}
              {% endif %}
              {{ cop | float(0) | round(1) }}
          {% else %}
            0.0
          {% endif %}
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

      - name: "Althermasensors COP with cooling"
        unique_id: copcooling
        unit_of_measurement: "COP"
        state_class: measurement
        state: >-
          {% if is_state_attr('sensor.althermasensors','Operation Mode', 'Cooling') and is_state_attr('sensor.althermasensors','Freeze Protection', 'OFF')  %}
              {% if states('sensor.althermasensors_inverter_usage') | float(0) < 90 %}
                  {% set cop = 0.0 | float(default=0) %} 
              {% elif states('sensor.althermasensors_inverter_usage') | float(0) > 90 %}
                  {% set t1 = states('sensor.althermasensors_water_leaving_temperature') | float(0) %}
                  {% set t2 = states('sensor.althermasensors_water_inlet_temperature') | float(0) %}
                  {% set f = states('sensor.althermasensors_flowpump') | float(0) %}
                  {% set pw = states('sensor.althermasensors_inverter_usage') | float(0) %}
                  {% set pwg = ((t1 - t2)*f) / 60 * 4184 | float(0) %}
                  {% set cop = pwg / pw | float(0)  %}
              {% endif %}
              {{ cop | float(0) | round(1) }}
          {% else %}
            0.0
          {% endif %}
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

      - name: "Althermasensors ∆T"
        unique_id: deltat
        unit_of_measurement: "°C"
        state_class: measurement
        ## if else prevent dipping DT when warming DHW or not heating
        state: >-
          {% if is_state_attr('sensor.althermasensors','Operation Mode', 'Heating') and is_state_attr('sensor.althermasensors','Freeze Protection', 'OFF')  %}
            {{ (states('sensor.althermasensors_water_leaving_temperature')|float(0) - states('sensor.althermasensors_water_inlet_temperature') | float(0))|round(1) }}
          {% else %}
            {{ (states('sensor.althermasensors_t')|float(0)) }} 
            ## use previous value or use 0?
          {% endif %}
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
        ##  {{ states('sensor.althermasensors_operation_mode') == 'Heating' and states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}
        
  - trigger:
      - platform: numeric_state
        entity_id: sensor.althermasensors_watertanktemperature
        above: 55
    sensor:
      - name: "Althermasensors Desinfectie"
        unique_id: desinfectie
        state: >
          {% if  today_at('5:00') < now() < today_at('23:30') %}
            {{ this.state }}
          {% else %}
            {{ now().strftime('%d-%m-%Y %H:%M') }}
          {% endif %}

################################################
## Automation
################################################

automation:
  - alias: "Warmtepomp - Pendel counter"
    id: "warmtepomp_pendel_counter"
    description: ""
    trigger:
      - platform: state
        entity_id:
          - sensor.althermasensors_inverter_current
        to: "0"
    condition: []
    action:
      - service: counter.increment
        data: {}
        target:
          entity_id:
            - counter.pendel_counter
    mode: single

  - alias: "Warmtepomp - Defrost counter"
    id: "warmtepomp_defrost_counter"
    description: ""
    trigger:
      - platform: state
        entity_id:
          - sensor.althermasensors_defrost_operation
        to: "ON"
    condition: []
    action:
      - service: counter.increment
        data: {}
        target:
          entity_id: counter.defrost
    mode: single

#  - alias: "Warmtepomp - Google Sheets"
#   id: "warmtepomp_google_sheets"
#    description: ""
#   trigger:
#      - platform: state
#        entity_id:
#          - sensor.althermasensors_espaltherma_last_update
#    condition: []
#    action:
#      - service: google_sheets.append_sheet
#        data:
#          config_entry: 9df3c895d3d971c61*snip*
#          data:
#            Date: "{{ now().strftime('%-d-%m-%Y') }}"
#            Thermostat: "{{ states('sensor.althermasensors_thermostat') }}"
#            Inverter usage: "{{ states('sensor.althermasensors_inverter_usage') }}"
#            Setpoint: "{{ states('sensor.althermasensors_leaving_water_setpoint') }}"
#            Water out: "{{ states('sensor.althermasensors_water_leaving_temperature') }}"
#            Water in: "{{ states('sensor.althermasensors_water_inlet_temperature') }}"
#            Flow: "{{ states('sensor.althermasensors_flowpump') }}"
#            COP: "{{  states('sensor.althermasensors_cop') }}"
#            Defrosts: "{{  states('counter.defrost') }}"
#         worksheet: Daikin Warmtepomp Statistieken
#    mode: single


Plaats de file in de map; /config/packages/altherma.yaml. Check de configuratie en herstart.

Wat heb ik aangepast tov @Toppe;
- Availability bij sensoren toegevoegd. Voorkomt een vol logboek.
- Delta T sensor aangepast zodat deze niet zoveel schommelt (bij DHW opwarmen).
- Prefix gerealiseerd zodat de sensoren beginnen met althermasensors_ en netjes staan.
- unique_id toegevoegd zodat de sensoren te bewerken zijn in HA.
- Sensoren aangepast om compatible te zijn, float(0) gebruik.
- Climate component zit erin als voorbeeld (staat uit-gecomment), voor wie aansturing via ESPAltherma aandurft...

Mochten jullie opmerkingen of verbeteringen hebben, dan hoor ik dat graag!

  • Jelte
  • Registratie: Juni 2001
  • Niet online
Volgende week woensdag komt hier een Daikin Altherma en die wil ik natuurlijk lekker uitlezen en wat strakker bedienen. En dat kan met ESPAltherna zo te zien!

Lekker koppelen aan Home Assistant en gebruik maken van de Smart Grid functie.
SirLikeAlot schreef op vrijdag 8 maart 2024 @ 12:44:
ESPAltherma kun je ook op andere ESP32 bordjes programmeren. Zo gebruik ik zelf graag deze; ASTRA br4g8al (ook te krijgen op Aliexpress). 4 relays en op 220v en met wifi antenne, alles wat je wil hebben.

Het heeft wat (eenvoudige) aanpassingen nodig. Zie hier voor info; https://github.com/raomin...7#issuecomment-1887492565

Dus product uit je link zou het zeker moeten doen.
Die Astra lijkt het ideale product voor mijn doel, maar zo te zien is deze niet meer te verkrijgen. Tenminste niet naar NL

Iemand een tip voor een vergelijkbaar apparaat?

Anders ga ik toch maar voor die stick met extra relays. Met het risico op wifi issues, want warmtepomp komt in de voortuin een meter of 8 van de (op zich prima) wifi unit te hangen.

  • Japie.G
  • Registratie: Augustus 2001
  • Laatst online: 17:25

Japie.G

Colour Classic

Jelte schreef op zondag 2 maart 2025 @ 21:54:
want warmtepomp komt in de voortuin een meter of 8 van de (op zich prima) wifi unit te hangen.
de binnenunit in de voortuin? :P

Renault Scenic E-Tech EV - PV-Output


  • Jelte
  • Registratie: Juni 2001
  • Niet online
Japie.G schreef op zondag 2 maart 2025 @ 22:10:
[...]


de binnenunit in de voortuin? :P
Sorry, was niet duidelijk. Het wordt een Daikin Edla Altherma 3M monoblock dus.

Dan moet die esp stick toch in de warmtepomp?

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Jelte schreef op maandag 3 maart 2025 @ 07:30:
[...]

Sorry, was niet duidelijk. Het wordt een Daikin Edla Altherma 3M monoblock dus.

Dan moet die esp stick toch in de warmtepomp?
Je kunt de stick buiten de behuizing plaatsen. Ik heb zelf een UTP kabeltje vanaf de monoblock naar binnnen getrokken. In de monoblock even de connectoren aangesloten op een RJ45 behuizing en zo de stick binnen geplaatst.Afbeeldingslocatie: https://tweakers.net/i/1A_7g9gdApLFYGcH8lQbs2hFF6s=/x800/filters:strip_icc():strip_exif()/f/image/oXg7Gyo3cLoLjfp9LGfUvZEq.jpg?f=fotoalbum_large

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
EmTri schreef op zondag 2 maart 2025 @ 13:07:
Als je dit in de template editor (Developer Tools -> Template) gooit:
code:
1
2
3
         {{ is_state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)', 'OFF') 
             and
             is_state_attr('sensor.althermasensors','thermostat ON/OFF', 'ON') }}

Krijg je dan wel True te zien wanneer de ruimteverwarming actief is?
nee, werkt ook niet. Lijkt erop dat dit niet eenvoudig in YAML te vangen is. Heb al gekeken bij 'conditions' en ook met een binaire groep maar daar kan je kiezen voor alle entiteiten 'waar'' maar ik zoek er dus één waarbij er ook een entiniet 'niet waar' moet zijn.

Is niet echt eenvoudig; ik ben van oorsprong iemand die in relais en plc techniek denkt en dan is YAML toch wat minder flexibel

  • EmTri
  • Registratie: Januari 2007
  • Laatst online: 04-11 11:34
Dat zou moeten werken. Ik denk dan dat je typo's in je attributen hebt. En als ik het vergelijk met mijn config dan zijn dat een spatie tussen valve en ( en thermostat zonder hoofdletter. Probeer dit eens?
code:
1
2
3
{{ is_state_attr('sensor.althermasensors','3way valve(On:DHW_Off:Space)', 'OFF') 
    and
    is_state_attr('sensor.althermasensors','Thermostat ON/OFF', 'ON') }}

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
EmTri schreef op maandag 3 maart 2025 @ 21:09:
[...]


Dat zou moeten werken. Ik denk dan dat je typo's in je attributen hebt. En als ik het vergelijk met mijn config dan zijn dat een spatie tussen valve en ( en thermostat zonder hoofdletter. Probeer dit eens?
code:
1
2
3
{{ is_state_attr('sensor.althermasensors','3way valve(On:DHW_Off:Space)', 'OFF') 
    and
    is_state_attr('sensor.althermasensors','Thermostat ON/OFF', 'ON') }}
ik zou een TRUE verwachten met bovenstaande YAML maar het is helaas een FALSEAfbeeldingslocatie: https://tweakers.net/i/vh9PCJqs39G_MwrGkwIk4zyzioA=/800x/filters:strip_exif()/f/image/Ct0CxgKa4LIm53EplyH3tSlQ.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/-SmW86AddLNGCg7EsytYpEnCXMs=/800x/filters:strip_exif()/f/image/eyiv8vVfS7YpHRABEqB2pJ2J.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/CCKaoqqaPArF_z5wbk4-tcYpj84=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/HF8iC2uzWau5O2XIjiRfxgt3.png?f=user_large

[ Voor 13% gewijzigd door benthouse op 03-03-2025 21:22 ]


  • EmTri
  • Registratie: Januari 2007
  • Laatst online: 04-11 11:34
Okay ik zit ff terug te kijken in de code van je sensors die je eerder gepost hebt:
code:
1
2
3
4
5
6
7
- name: "Thermostat"
  state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
  unique_id: "espaltherma.Thermostat_ON/OFF"                
        
- name: "3Way Valve"
  state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
  unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)"

Daar is te zien dat er bij jou wel een spatie tussen valve en ( staat. Thermostat staat nog steeds met een hoofdletter. Dan zou dit het moeten zijn:
code:
1
2
3
{{ is_state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)', 'OFF') 
    and
    is_state_attr('sensor.althermasensors','Thermostat ON/OFF', 'ON') }}


Je kan overigens ook is_state gebruiken op de namen van die sensors die je eerder geconfigureerd hebt:
code:
1
2
3
{{ is_state('sensor.3way_valve', 'OFF' ) 
    and
    is_state('sensor.thermostat', 'ON') }}
Ik heb geen idee wat de beste manier is en waarom. :+

[ Voor 43% gewijzigd door EmTri op 03-03-2025 21:59 ]


  • Jelte
  • Registratie: Juni 2001
  • Niet online
benthouse schreef op maandag 3 maart 2025 @ 21:01:
[...]


Je kunt de stick buiten de behuizing plaatsen. Ik heb zelf een UTP kabeltje vanaf de monoblock naar binnnen getrokken. In de monoblock even de connectoren aangesloten op een RJ45 behuizing en zo de stick binnen geplaatst.[Afbeelding]
Kijk dat is een goede tip!
Dan kan ik die stick op een plek dichtbij de wifi hangen. Prima optie!

Morgen maar eens alles gaan bestelen dan.

Naast die stick dus de relays. 4 stuks en een RJ45 behuizing. Of mis ik dan nog iets?

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
EmTri schreef op maandag 3 maart 2025 @ 21:43:
Okay ik zit ff terug te kijken in de code van je sensors die je eerder gepost hebt:
code:
1
2
3
4
5
6
7
- name: "Thermostat"
  state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
  unique_id: "espaltherma.Thermostat_ON/OFF"                
        
- name: "3Way Valve"
  state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
  unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)"

Daar is te zien dat er bij jou wel een spatie tussen valve en ( staat. Thermostat staat nog steeds met een hoofdletter. Dan zou dit het moeten zijn:
code:
1
2
3
{{ is_state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)', 'OFF') 
    and
    is_state_attr('sensor.althermasensors','Thermostat ON/OFF', 'ON') }}


Je kan overigens ook is_state gebruiken op de namen van die sensors die je eerder geconfigureerd hebt:
code:
1
2
3
{{ is_state('sensor.3way_valve', 'OFF' ) 
    and
   is_state('sensor.thermostat', 'ON') }}
Ik heb geen idee wat de beste manier is en waarom. :+
Die laatste variant die werkte en kon ik gelijk opnemen in mijn YAML:file. Je bent een held! _/-\o_ _/-\o_

[ Voor 8% gewijzigd door benthouse op 04-03-2025 17:32 ]


  • EmTri
  • Registratie: Januari 2007
  • Laatst online: 04-11 11:34
Ah fijn dat het werkt nu! En dank aan jou voor het idee. Ik heb het namelijk ook geïmplementeerd, als twee normale sensors die ON/OFF als output geven; zo passen ze mooi in het rijtje hier:

Afbeeldingslocatie: https://tweakers.net/i/B3xucdsTAjjOcAUv26V9xm5nNg0=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/6sCrHQPTu7pS6FS2cJc6BT93.png?f=user_large
code:
1
2
3
4
5
- name: "Althermasensors Space Heating"
  unique_id: spaceheating
  state: "{{ 'ON' if is_state('sensor.althermasensors_3way_valve', 'OFF') 
              and
              is_state('sensor.althermasensors_thermostat', 'ON') else 'OFF' }}"

  • Yongshi
  • Registratie: Juli 2016
  • Laatst online: 02-11 22:35
Afbeeldingslocatie: https://tweakers.net/i/7TXI8WMNY5_OxcdMsMIkALBqRho=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/b6cuh9wG0eySG8m789x3NHGQ.png?f=user_large

En dan kan je ook nog kijken naar picture elements om het een beetje mooi weer te geven.
Ik heb bovenstaande opgemaakt zodat ik direct kan zien wat hij aan het doen is.
verwarming of warm water, aanvoer en set temps, inverter stroom vraag, element heaters en powerfull mode (enkel defrost mist nog en eventueel een COP of iets)

  • Jelte
  • Registratie: Juni 2001
  • Niet online
benthouse schreef op maandag 3 maart 2025 @ 21:01:
[...]


Je kunt de stick buiten de behuizing plaatsen. Ik heb zelf een UTP kabeltje vanaf de monoblock naar binnnen getrokken. In de monoblock even de connectoren aangesloten op een RJ45 behuizing en zo de stick binnen geplaatst.[Afbeelding]
Hoe heet het componentje wat je gebruikt om van UTP naar dupont te gaan?
Of direct een linkje waar je het kan kopen mag ook ;)

Of is deze het?

https://www.kabelshop.nl/...9355-i28567-t2062001.html

[ Voor 7% gewijzigd door Jelte op 09-03-2025 19:55 ]


  • Jelte
  • Registratie: Juni 2001
  • Niet online
Ik ga dus voor de M5 stick in de meterkast, naast de router (Dus geen wifi issues ;) ) en met een UTP kabel naar de warmtepomp met die RJ45 behuizingen van benthouse.

Als ik alles wil kunnen schakelen, verwarming, koeling en smart grid heb ik vier relays nodig. Leek me relatief logisch om de relays zelf ín de warmtepomp te zetten

UTP heeft 8 aders. Vier zijn nodig voor communicatie van ESPAtherma met de warmtepomp. Volgens de plaatjes lijkt het relay bloklje van M5stack ook vier aders nodig te hebben. Dat zou dus moeten passen. Of zie ik iets over het hoofd?

UTP kabel gaat circa 12m lang zijn. Klop het dat dat geen probleem is?

https://www.tinytronics.n...les/m5stack-4-relais-unit

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Jelte schreef op zondag 9 maart 2025 @ 20:28:
Ik ga dus voor de M5 stick in de meterkast, naast de router (Dus geen wifi issues ;) ) en met een UTP kabel naar de warmtepomp met die RJ45 behuizingen van benthouse.

Als ik alles wil kunnen schakelen, verwarming, koeling en smart grid heb ik vier relays nodig. Leek me relatief logisch om de relays zelf ín de warmtepomp te zetten

UTP heeft 8 aders. Vier zijn nodig voor communicatie van ESPAtherma met de warmtepomp. Volgens de plaatjes lijkt het relay bloklje van M5stack ook vier aders nodig te hebben. Dat zou dus moeten passen. Of zie ik iets over het hoofd?

UTP kabel gaat circa 12m lang zijn. Klop het dat dat geen probleem is?

https://www.tinytronics.n...les/m5stack-4-relais-unit
RJ45 doosje: Ik heb dit zojuist gevonden op AliExpress: €3,06 | RJ45 8P8C HM-HB01 Model UTP Niet-afgeschermde enkele poort Desktop Informatie Mount Box
https://a.aliexpress.com/_EITlOtm

Aan de M5 stack zijde heb ik deze connector (8-pennetjes, male)

Ik heb dit zojuist gevonden op AliExpress: €2,14 | 10PCS 2.54MM Dupont Lijn Mannelijke Vrouwelijke Dubbelkoppige 1P 2P 3P 4P 5P 6P 7P 8P 9P 10 Pin Dupont Jumper Kabel Draad voor PCB
https://a.aliexpress.com/_EHhYFQM

Die heb ik ook op zo’n RJ45 doosje afgemonteerd.

[ Voor 14% gewijzigd door benthouse op 09-03-2025 20:59 ]


  • Jelte
  • Registratie: Juni 2001
  • Niet online
Jelte schreef op zondag 9 maart 2025 @ 20:28:
Ik ga dus voor de M5 stick in de meterkast, naast de router (Dus geen wifi issues ;) ) en met een UTP kabel naar de warmtepomp met die RJ45 behuizingen van benthouse.

Als ik alles wil kunnen schakelen, verwarming, koeling en smart grid heb ik vier relays nodig. Leek me relatief logisch om de relays zelf ín de warmtepomp te zetten

UTP heeft 8 aders. Vier zijn nodig voor communicatie van ESPAtherma met de warmtepomp. Volgens de plaatjes lijkt het relay bloklje van M5stack ook vier aders nodig te hebben. Dat zou dus moeten passen. Of zie ik iets over het hoofd?

UTP kabel gaat circa 12m lang zijn. Klop het dat dat geen probleem is?

https://www.tinytronics.n...les/m5stack-4-relais-unit
Kan iemand hier uitsluitsel over geven?
heb ik aan één UTP met dus 8 aders voldoende om zowel de warmtepomp uit te lezen als koeling, verwaring en SG functies aan te sturen?

  • KikkerMario
  • Registratie: December 2016
  • Laatst online: 22:37
Jelte schreef op dinsdag 11 maart 2025 @ 09:15:
[...]
Kan iemand hier uitsluitsel over geven?
heb ik aan één UTP met dus 8 aders voldoende om zowel de warmtepomp uit te lezen als koeling, verwaring en SG functies aan te sturen?
Smart grid functies:
Daarvoor heb je volgens de documentatie aders van 0,5 mm2 nodig. Zie dit bericht. De meeste UTP-kabels halen volgens mij nog niet de helft daarvan. Als je twee aders 23AWG combineert tot één, dan ben je er zo te zien wel. Om het volgens de specificaties te doen, heb je dus alleen al voor de SG contacten alle 8 de aders van een 23AWG UTP kabel nodig. Maar als je toch een aparte kabel trekt, dan is een ander soort kabel misschien beter en/of goedkoper: je hebt niet specifiek een datakabel nodig om op de SG contacten aan te sluiten.
Ik ga er hierbij van uit dat je je relais bij je M5 stick plaatst. Als je je relais in de warmtepomp plaatst, dan heb je kabels nodig die voldoende vermogen voor je relais kunnen leveren.

Koeling en verwarming aansturen:
Als je het aansturen via de Daikin cloud doet, dan heb je daarvoor helemaal geen kabels nodig. Dat werkt heel goed met bijvoorbeeld Homey of Home Assistant, maar dan ben je wel cloud-afhankelijk.
De enige offline-methode waarmee je veel kan aansturen is volgens mij het gebruik van de themostaatcontacten. Zie bijvoorbeeld https://github.com/Arnold-n/P1P2MQTT. Zelf heb ik er geen ervaring mee, maar het wordt veel op dit forum genoemd.

  • Jelte
  • Registratie: Juni 2001
  • Niet online
KikkerMario schreef op woensdag 12 maart 2025 @ 17:09:
[...]


Smart grid functies:
Daarvoor heb je volgens de documentatie aders van 0,5 mm2 nodig. Zie dit bericht. De meeste UTP-kabels halen volgens mij nog niet de helft daarvan. Als je twee aders 23AWG combineert tot één, dan ben je er zo te zien wel. Om het volgens de specificaties te doen, heb je dus alleen al voor de SG contacten alle 8 de aders van een 23AWG UTP kabel nodig. Maar als je toch een aparte kabel trekt, dan is een ander soort kabel misschien beter en/of goedkoper: je hebt niet specifiek een datakabel nodig om op de SG contacten aan te sluiten.
Ik ga er hierbij van uit dat je je relais bij je M5 stick plaatst. Als je je relais in de warmtepomp plaatst, dan heb je kabels nodig die voldoende vermogen voor je relais kunnen leveren.

Koeling en verwarming aansturen:
Als je het aansturen via de Daikin cloud doet, dan heb je daarvoor helemaal geen kabels nodig. Dat werkt heel goed met bijvoorbeeld Homey of Home Assistant, maar dan ben je wel cloud-afhankelijk.
De enige offline-methode waarmee je veel kan aansturen is volgens mij het gebruik van de themostaatcontacten. Zie bijvoorbeeld https://github.com/Arnold-n/P1P2MQTT. Zelf heb ik er geen ervaring mee, maar het wordt veel op dit forum genoemd.
mijn idee was om het relais inderdaad in de warmtepomp te zetten en via de utp kabel alleen data te versturen. Dan vanaf het relais die 0,5mm² naar het juiste contact.

En dan is de vraag of een ader van de utp kabel voldoende is om vanaf de stick naar het relais in de warmtepomp te kunnen communiceren.

En ik ben het liefst niet afhankelijk van de cloud, of wil in ieder geval een backup voor als 'de cloud uitvalt'

[ Voor 3% gewijzigd door Jelte op 12-03-2025 17:14 ]


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Jelte schreef op woensdag 12 maart 2025 @ 17:13:
[...]
mijn idee was om het relais inderdaad in de warmtepomp te zetten en via de utp kabel alleen data te versturen. Dan vanaf het relais die 0,5mm² naar het juiste contact.

En dan is de vraag of een ader van de utp kabel voldoende is om vanaf de stick naar het relais in de warmtepomp te kunnen communiceren.

En ik ben het liefst niet afhankelijk van de cloud, of wil in ieder geval een backup voor als 'de cloud uitvalt'
Gewoon proberen via UTP Kabel. Volgens moj trekken die relais niet zoveel vermogen. Eenvoudige test doen met de kabellengte die je nodig hebt voor je de kabel erin trekt. Als het werkt dan weet je dat, mocht het niet zo zijn moet er bijv een 5x0,5mm2 kabeltje extra in voor de aansturing en de 0Vdc.

  • ymaenhout
  • Registratie: Januari 2013
  • Laatst online: 31-10 21:52
Mocht iemand interesse hebben in een NUC met Home Assistant, laat maar weten.

Ik doe er toch te weinig mee. De wp draait prima zo :)

  • Jelte
  • Registratie: Juni 2001
  • Niet online
Ok espaltherma op die M5stick gezet en het lijkt te werken (voor zover het kan werken als die niet aan de warmtepomp hangt ;) )
Ook heb ik de SG zaken uncomment, maar er gebeurt weinig in het relais ding. Ik heb de vier relais versie zodat ik ook warm en koud kan schakelen). Ik zie geen lampjes branden en/of relais klikken. Zie ik iets over het hoofd?

  • Enzoz89
  • Registratie: Oktober 2018
  • Laatst online: 04-11 06:35
Afgelopen week is mijn M5Stick C Plus vastgelopen en start deze niet meer op.
Hierop draaide eerder mijn ESPAltherma.
Ik had echter nog een ESP32-S3-N16R8 liggen, en die heb ik nu voorzien van ESPAltherma. Helaas maakt hij geen verbinding met mijn warmtepomp (WP).
Ik heb even gekeken, en volgens mij moet ik GPIO 17 en 18 gebruiken voor TX en RX.
Afbeeldingslocatie: https://tweakers.net/i/8K8ZkdgEwD338K19oVlThkKZFhw=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/oxmCO52E6RE7HplaC5BEJ5fZ.png?f=user_large
Maar tot op heden is er nog steeds geen verbinding met de WP.
Heeft iemand ervaring met de ESP32-S3-N16R8? Of kijk ik ergens overheen en gebruik ik misschien de verkeerde GPIO-pinnen?
Alvast bedankt!

  • WaTTe44
  • Registratie: November 2018
  • Laatst online: 16:47
Geen ervaring met deze, gebruik esp8266.
Maar probeer het eens op deze manier:
Afbeeldingslocatie: https://tweakers.net/i/FguurOi1aOiGEvxDl30TtOsfygs=/800x/filters:strip_exif()/f/image/DylCOhSw3hs1xFlLWEhlInsQ.png?f=fotoalbum_large

  • Jelte
  • Registratie: Juni 2001
  • Niet online
Iemand ervaring met het gebruiken van de 4relay van M5stack met ESPAltherma?

Heb wel deze code gevonden: https://github.com/raomin/ESPAltherma/discussions/296
Maar die is helaas niet voor de Cplus 2 en het codevoorbeeld is niet beschikbaar voor de CPlus2 (alleen voor de C PLus

Ik loop vast tegen een error die aangeeft dat de calls niet goed zijn, maar dat lijkt wel zo te zijn en ChatGPT bevestigd dat:

mqtt.h:66: undefined reference to `UNIT_4RELAY::begin(TwoWire*, unsigned char, unsigned char)'

Terwijl de call dus prima gedefinieerd is en de bestanden geinclude worden (en gevonden door de compiler)

  • Jelte
  • Registratie: Juni 2001
  • Niet online
Goed ik heb het voor elkaar gekregen. De UNIT_4RELAY.cpp file stond in de verkeerde map. Die moet in de src map staan, naast de setup.h en main.cpp.

De verwarming en SG relays klikken nu lekker in het rond :)

Volgende stap: De koeling aankrijgen, dat zie ik nog niet zo snel. Schakelt iemand hier zijn warmtepomp voor koeling ook via een relais?
Hoe heb je dat voor elkaar gekregen?
Zo te zien zit dat niet in espaltherma

[ Voor 21% gewijzigd door Jelte op 03-04-2025 22:10 ]


  • Tanuki
  • Registratie: Januari 2005
  • Niet online
nodri2000 schreef op woensdag 15 februari 2023 @ 13:01:
[...]


Nee, een gewone ESP32. Wroom ESP32 van A-Z delivery
Ik was benieuwd naar de pins die gebruikt moeten worden: volgens mij staat het voor de m5stack uitgelegd. Maar voor de wroom32 niet. En die heb ik ook in gebruik.

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Ik heb zoals hierboven vermeld staat enkele sensoren waarmee ik kan zien waarvoor de Daikin Warmtepomp in werking is, dat werkt uitstekend de symbooltjes kleuren keurig in oranje/rood zodra in werking.

YAML daarvoor:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
template:
#
    - binary_sensor:
#
      - name: "Thermostat-binary"
        state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
        unique_id: "espaltherma.Thermostat_ON/OFF_binary"
#
      - name: "3Way Valve-binary"
        state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
        unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)_binary"
#        
# Below a combined status from Thermostat and 3-way valve in position for Space Heating
      - name: "Space Heating"
        icon: mdi:heat-wave
        state: "{{  'ON' if is_state('sensor.3way_valve', 'OFF' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "space_heating_in_operation"
#
# Below a combined status from Thermostat and 3-way valve in position for DHW Tank Heating
      - name: "DHW Heating"
        icon: mdi:bathtub-outline
        state: "{{  'ON' if is_state('sensor.3way_valve', 'ON' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "DHW_in_operation"
#


Nu wil ik met de bovenstaande entiteiten "Space Heating" en "DHW Heating" de CoP en Heatyield gaan berekenen. Ik heb voor de overall performance onderstaande YAML in gebruik

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Calculated Inverter Power Usage for average of 3phases      
      - name: "Inverter usage"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.inverter_current')|float(0) * (((states('sensor.phases_voltage_phase_l1')|float + (states('sensor.phases_voltage_phase_l2')|float) + (states('sensor.phases_voltage_phase_l3')|float)) /3) * 1.73)|float(0)) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.inverter_usage"
        unit_of_measurement: "W"
        state_class: measurement
#        
# Calculated Heatload (Q=m*c*dT)
      - name: "Heat load"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.flow_sensor'))|float / 60 * 4187 * (states('sensor.delta_t'))|float |round(1) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_load"  
        unit_of_measurement: "W"
        state_class: measurement

# Calculated COP        
      - name: "CoP"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop"  
        unit_of_measurement: ""
        state_class: measurement

# Calculated Delta T inbetween Inlet and Outlet temperature heatpump      
      - name: "Delta T"
        state: >-
            {{ (states('sensor.leaving_water_temperature_r1t')|float - states('sensor.inlet_water_temperature_r4t') | float)|round(1) }}
        unique_id: "espaltherma.delta_t"
        unit_of_measurement: "°C"


Als ik nu bovenstaande berekeningen aanpas en dan IPV de
code:
1
{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %}
voorwaarde in de code aanpas naar de hierboven genoemde voorwaarde
code:
1
{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %}
dan zou ik verwachten dat dan de berekening gemaakt wordt voor de Ruimte Verwarming, en als dan de DHW Tank gevuld wordt deze dus niet mee telt in de berekening van CoP etc.
(Ik wil uiteindelijk voor de DHW Tank een zelfde CoP berekening maken zodat ik daar ook een beter gevoel bij krijg)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Calculated Inverter Power Usage for average of 3phases SPACE HEATING      
      - name: "Inverter usage Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{ (states('sensor.inverter_current')|float(0) * (((states('sensor.phases_voltage_phase_l1')|float + (states('sensor.phases_voltage_phase_l2')|float) + (states('sensor.phases_voltage_phase_l3')|float)) /3) * 1.73)|float(0)) }}  {% elif is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.inverter_usage_sph"
        unit_of_measurement: "W"
        state_class: measurement
#        
# Calculated Heatload (Q=m*c*dT) SPACE HEATING
      - name: "Heat load Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{(states('sensor.flow_sensor'))|float / 60 * 4187 * (states('sensor.delta_t'))|float |round(1) }}  {% elif is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_load_sph"  
        unit_of_measurement: "W"
        state_class: measurement

# Calculated COP SPACE HEATING        
      - name: "CoP Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{(states('sensor.heat_load_sph'))|float / (states('sensor.inverter_usage_sph')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_sph"  
        unit_of_measurement: ""
        state_class: measurement


Echter testen in de Sjabloon editor geeft geen uitkomst van de berekening en de entiteiten Heatload en Inverter Usage zijn zelf onbekend. Na herstarten van Home Assistant ook geen foutmeldingen.

Afbeeldingslocatie: https://tweakers.net/i/nN-rj2wVYAlxeCF7t_KrcZsSduw=/800x/filters:strip_exif()/f/image/fgoVvZkxkVYCV9fHrJShJXjo.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/_JyN34MFlXklR4s8orQh6HVQNrA=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/ObFKBk5TYxKOQaA0C4w8aUJ2.png?f=user_large

Afbeeldingslocatie: https://tweakers.net/i/4Lz5f_vbG_-0-ZbnUCE7QrOt9g4=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/BZYunr9bXv1DRifEiJzg7sXz.png?f=user_large

de CoP wordt wel berekend en is 0 maar dat komt waarschijnlijk omdat er van de eerdere 2 entiteiten geen gegevens bekend zijn,

Iemand een idee waar dit fout gaat??
Dank alvast!

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Ik heb inmiddels de CoP berekeningen voor Space Heating en DHW Heating separaat gekregen :) . Was eenvoudiger dan ik dacht uiteindelijk; De elektrische energie die erin gaat en de warmtevracht die eruit komt is natuurlijk een identieke berekening 8)7 8)7 8)7 . Je hoeft alleen maar uit te vogelen voor welke optie de warmtepomp actief is; Hieronder de gebruikte code om de CoP apart uit te rekenen voor Ruimteverwarming.en SWW.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#
# Calculated COP SPACE HEATING        
      - name: "CoP Space Heating"
        state: "{% if is_state('sensor.3way_valve', 'OFF' ) and  is_state('sensor.thermostat', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_sph"  
        unit_of_measurement: ""
        state_class: measurement  
#
# Calculated COP DHW HEATING        
      - name: "CoP DHW Heating"
        state: "{% if is_state('sensor.3way_valve', 'ON' ) and  is_state('sensor.thermostat', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_dhw"  
        unit_of_measurement: ""
        state_class: measurement


Afbeeldingslocatie: https://tweakers.net/i/VLBliyq38uWgF-wwrhSO8ol1gUI=/x800/filters:strip_exif()/f/image/3c3MRQsLs7d4umAzn0HyrKaX.png?f=fotoalbum_large

[ Voor 75% gewijzigd door benthouse op 19-04-2025 22:04 ]


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Nu wil ik ook het energie verbruik gaan splitsen tussen ruimte verwarming en SWW verwarming. Hiervoor de utilitiemeter van HA in gebruik maar wil niet echt lukken. Deze utilitiemeter van HA kan schakelen tussen twee statussen (Tarrifs)
Ik wil er dus een voor Space Heating en een voor DHW heating en dan verbruik aflezen per dag. Nu registreert hij alles op Space Heating: (plaatje klopt niet helemaal, enkele dagen terug aan het pielen geweest om dit al voor elkaar te krijgen heb daardoor wat data in database staan die niet correct is en hier wel weergegeven wordt)

Afbeeldingslocatie: https://tweakers.net/i/wOBJHHeV-Ofbhy1WJcb91CtzzrM=/x800/filters:strip_exif()/f/image/VoQoPYVkbVrRUtD9g5UbDFrU.png?f=fotoalbum_large

De SDM630 die ik via Modbus gekoppeld heb levert 1 totaal meting (sensor.total_import_kwh). Maar op basis van een trigger (binary_sensor.dhw_heating) wil ik dus de verbruiksmeting in kWh doen per actieve stand van de warmtepomp.

Hierbij de code:

Aparte energy.yaml file in /homeassistant/packages/energy.yaml:

code:
1
2
3
4
5
6
7
utility_meter:
  energy_heatpump:
    source: sensor.total_import_kwh
    cycle: daily
    tariffs:
      - DHW Heating
      - Space Heating


en dan een automatisering die dus om moet schakelen van Space Heating naar DHW Heating (maar dat niet doet...)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
- id: '1745010590441'
  alias: Heatpump Energy consumption
  description: ''
  triggers:
  - trigger: state
    entity_id:
    - binary_sensor.dhw_heating
    from: 'OFF'
    to: 'ON'
  conditions: []
  actions:
  - target:
      entity_id:
      - select.energy_heatpump
    data:
      option: "{% if is_state('binary_sensor.dhw_heating', 'DHW Heating') %}  DHW
        Heating {% else %}  Space Heating{% endif %}"
    action: select.select_option


Iemand dit wel voor elkaar gekregen?? Iemand een idee???

[ Voor 39% gewijzigd door benthouse op 19-04-2025 17:55 ]


  • Toppe
  • Registratie: Januari 2004
  • Laatst online: 22:31

Toppe

Oké ✅

Topicstarter
benthouse schreef op zaterdag 19 april 2025 @ 13:10:
Ik heb inmiddels de CoP berekeningen voor Space Heating en DHW Heating separaat gekregen :) . Was eenvoudiger dan ik dacht uiteindelijk; De elektrische energie sie erin gaat en de warmtevracht die eruit komt is natuurlijk een identieke berekening 8)7 8)7 8)7 . Je hoeft alleen maar uit te vogelen voor welke optie de warmtepomp actief is; Hieronder de gebruikte code om de CoP apart uit te rekenen voor Ruimteverwarming.en SWW.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#
# Calculated COP SPACE HEATING        
      - name: "CoP Space Heating"
        state: "{% if is_state('sensor.3way_valve', 'OFF' ) and  is_state('sensor.thermostat', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_sph"  
        unit_of_measurement: ""
        state_class: measurement  
#
# Calculated COP DHW HEATING        
      - name: "CoP DHW Heating"
        state: "{% if is_state('sensor.3way_valve', 'ON' ) and  is_state('sensor.thermostat', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_dhw"  
        unit_of_measurement: ""
        state_class: measurement


[Afbeelding]
Zit die 3 weg klep standaard in Espaltherma of heb je die er later tussen gezet?

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Toppe schreef op zaterdag 19 april 2025 @ 19:45:
[...]


Zit die 3 weg klep standaard in Espaltherma of heb je die er later tussen gezet?
Bij mij standaard. Heb een EDLA Monoblock. Heb wel de standaard configuratie file van Raomin iets aangepast om beter te kunnen destilleren wat wat is.

  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Ik was vandaag bezig met espaltherma compilen en up & running krijgen. Na een
code:
1
pio run -t upload -e esp32
had de wroom32 esp32 de espaltherma code en zag ik ook espaltherma terecht komen in mqtt. :)

Maar, hij post enkel een "Offline" dingetje en dan gaat hij uit / crasht hij / ...
Vervolgens gaat hij 5 seconden later weer precies hetzelfde doen.

Heeft iemand dit ook weleens gehad?
Lijkt erop dat hij wel naar MQTT kan verbinden want anders kwam die "Offline" niet terecht daar. Maar "Online" wordt nooit gepost.

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Tanuki schreef op zondag 20 april 2025 @ 21:58:
Ik was vandaag bezig met espaltherma compilen en up & running krijgen. Na een
code:
1
pio run -t upload -e esp32
had de wroom32 esp32 de espaltherma code en zag ik ook espaltherma terecht komen in mqtt. :)

Maar, hij post enkel een "Offline" dingetje en dan gaat hij uit / crasht hij / ...
Vervolgens gaat hij 5 seconden later weer precies hetzelfde doen.

Heeft iemand dit ook weleens gehad?
Lijkt erop dat hij wel naar MQTT kan verbinden want anders kwam die "Offline" niet terecht daar. Maar "Online" wordt nooit gepost.
Het bordje dat ik probeer te gebruiken is deze: https://www.circuitstate....ut-diagram-and-reference/

Zijn er meer mensen die de ESP-WROOM-32 gebruiken met ESPAltherma?
Welke bordjes worden hier voornamelijk gebruikt?

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • mawashigeri
  • Registratie: November 2002
  • Laatst online: 21:18
Tanuki schreef op maandag 21 april 2025 @ 23:08:
[...]

Het bordje dat ik probeer te gebruiken is deze: https://www.circuitstate....ut-diagram-and-reference/

Zijn er meer mensen die de ESP-WROOM-32 gebruiken met ESPAltherma?
Welke bordjes worden hier voornamelijk gebruikt?
Wat ik zo gelezen heb meestal een M5stickC variant (ik heb een plus2), deze zitten al in een behuizing met de seriële pinnen gemakkelijk bruikbaar. Zeker wat duurder dan een los bordje, maar wel lekker makkelijk.
Voor mij was het voornaamste hardware werk dan ook het in elkaar prutsen van de seriële level-converter met connector voor de esp32.

ERGA06EVH / EHVX08S23EJ6V / ESPaltherma


  • Senaxx
  • Registratie: December 2010
  • Laatst online: 04-11 13:19
benthouse schreef op vrijdag 18 april 2025 @ 21:21:
Ik heb zoals hierboven vermeld staat enkele sensoren waarmee ik kan zien waarvoor de Daikin Warmtepomp in werking is, dat werkt uitstekend de symbooltjes kleuren keurig in oranje/rood zodra in werking.

YAML daarvoor:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
template:
#
    - binary_sensor:
#
      - name: "Thermostat-binary"
        state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
        unique_id: "espaltherma.Thermostat_ON/OFF_binary"
#
      - name: "3Way Valve-binary"
        state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
        unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)_binary"
#        
# Below a combined status from Thermostat and 3-way valve in position for Space Heating
      - name: "Space Heating"
        icon: mdi:heat-wave
        state: "{{  'ON' if is_state('sensor.3way_valve', 'OFF' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "space_heating_in_operation"
#
# Below a combined status from Thermostat and 3-way valve in position for DHW Tank Heating
      - name: "DHW Heating"
        icon: mdi:bathtub-outline
        state: "{{  'ON' if is_state('sensor.3way_valve', 'ON' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "DHW_in_operation"
#


Nu wil ik met de bovenstaande entiteiten "Space Heating" en "DHW Heating" de CoP en Heatyield gaan berekenen. Ik heb voor de overall performance onderstaande YAML in gebruik

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Calculated Inverter Power Usage for average of 3phases      
      - name: "Inverter usage"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.inverter_current')|float(0) * (((states('sensor.phases_voltage_phase_l1')|float + (states('sensor.phases_voltage_phase_l2')|float) + (states('sensor.phases_voltage_phase_l3')|float)) /3) * 1.73)|float(0)) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.inverter_usage"
        unit_of_measurement: "W"
        state_class: measurement
#        
# Calculated Heatload (Q=m*c*dT)
      - name: "Heat load"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.flow_sensor'))|float / 60 * 4187 * (states('sensor.delta_t'))|float |round(1) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_load"  
        unit_of_measurement: "W"
        state_class: measurement

# Calculated COP        
      - name: "CoP"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop"  
        unit_of_measurement: ""
        state_class: measurement

# Calculated Delta T inbetween Inlet and Outlet temperature heatpump      
      - name: "Delta T"
        state: >-
            {{ (states('sensor.leaving_water_temperature_r1t')|float - states('sensor.inlet_water_temperature_r4t') | float)|round(1) }}
        unique_id: "espaltherma.delta_t"
        unit_of_measurement: "°C"


Als ik nu bovenstaande berekeningen aanpas en dan IPV de
code:
1
{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %}
voorwaarde in de code aanpas naar de hierboven genoemde voorwaarde
code:
1
{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %}
dan zou ik verwachten dat dan de berekening gemaakt wordt voor de Ruimte Verwarming, en als dan de DHW Tank gevuld wordt deze dus niet mee telt in de berekening van CoP etc.
(Ik wil uiteindelijk voor de DHW Tank een zelfde CoP berekening maken zodat ik daar ook een beter gevoel bij krijg)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# Calculated Inverter Power Usage for average of 3phases SPACE HEATING      
      - name: "Inverter usage Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{ (states('sensor.inverter_current')|float(0) * (((states('sensor.phases_voltage_phase_l1')|float + (states('sensor.phases_voltage_phase_l2')|float) + (states('sensor.phases_voltage_phase_l3')|float)) /3) * 1.73)|float(0)) }}  {% elif is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.inverter_usage_sph"
        unit_of_measurement: "W"
        state_class: measurement
#        
# Calculated Heatload (Q=m*c*dT) SPACE HEATING
      - name: "Heat load Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{(states('sensor.flow_sensor'))|float / 60 * 4187 * (states('sensor.delta_t'))|float |round(1) }}  {% elif is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_load_sph"  
        unit_of_measurement: "W"
        state_class: measurement

# Calculated COP SPACE HEATING        
      - name: "CoP Space Heating"
        state: "{% if is_state_attr('binary_sensor.space_heating_in_operation', 'Space Heating', 'ON') %} {{(states('sensor.heat_load_sph'))|float / (states('sensor.inverter_usage_sph')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop_sph"  
        unit_of_measurement: ""
        state_class: measurement


Echter testen in de Sjabloon editor geeft geen uitkomst van de berekening en de entiteiten Heatload en Inverter Usage zijn zelf onbekend. Na herstarten van Home Assistant ook geen foutmeldingen.

[Afbeelding]

[Afbeelding]

[Afbeelding]

de CoP wordt wel berekend en is 0 maar dat komt waarschijnlijk omdat er van de eerdere 2 entiteiten geen gegevens bekend zijn,

Iemand een idee waar dit fout gaat??
Dank alvast!
Ik ben wel benieuwd naar je implementatie aangezien ik ook een 3fase 14kW monoblock heb. Ik zag in je inverter usage dat je keek naar sensor.phases_voltage_phase_l1. Is dat er bij jou 1 die uit ESPAltherma komt of is dat een aparte sensor van de 3fase groep ofzo.

Ik heb namelijk die sensor niet gezien in ESPAltherma en heb niet zo'n groep.

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Senaxx schreef op woensdag 23 april 2025 @ 14:09:
[...]


Ik ben wel benieuwd naar je implementatie aangezien ik ook een 3fase 14kW monoblock heb. Ik zag in je inverter usage dat je keek naar sensor.phases_voltage_phase_l1. Is dat er bij jou 1 die uit ESPAltherma komt of is dat een aparte sensor van de 3fase groep ofzo.

Ik heb namelijk die sensor niet gezien in ESPAltherma en heb niet zo'n groep.
Nee, die entiteit komt uit een sensorbox welke behoort tot mijn Smart EVSE en de P1 poort van mijn kWh meter uitleest. De sensorbox is in gebruik t.b.v. load balancing, maar elke meter die frequent de fasespanning update en naar homeassistant stuurt kan gebruikt worden.
Ik heb nu ook een Eastrom SDM630 tussen verdeler en warmtepomp maar die communiceert via Modbus en die update slechts 1x per 2 minuten ofzo en daarmee is de berekening minder accuraat

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Stand by verbruik is behoorlijk bij een EDLA09DAW1 monoblock. Heb een Eastron SDM630 energiemeter ertussen en op basis van vraag (Thermostaat en stand 3-weg klep) wordt verbruik toegewezen aan één van de ingestelde ‘tarieven’ binnen de nutsmeter functie. Afbeeldingslocatie: https://tweakers.net/i/HyqnMQmEmsHkBnZLNfzjVP5TFsY=/x800/filters:strip_icc():strip_exif()/f/image/TBFoGWBZR33C4aMnMoLYUIrY.jpg?f=fotoalbum_large

Ik heb dit sinds maandagmiddag operationeel. In Stand- by mode toch zo’n 20W continue verbruik.
CoP nog steedsop basis van berekening met de Inverter Usage uit de ESPAltherma oplossing. Maar heb inmiddels geconstateerd dat die minder accuraat is dan met een echte kWh meter. Afbeeldingslocatie: https://tweakers.net/i/bCm6O_zOyKLt4aHz1AdxhmM41kA=/x800/filters:strip_icc():strip_exif()/f/image/z48CVlA2S6E5Ffh3CitXFvjd.jpg?f=fotoalbum_large

Op dagen waar er geen CoP voor DHW tank is, wordt de tank verwarmd door een zonneboiler systeem.

[ Voor 30% gewijzigd door benthouse op 23-04-2025 20:20 ]


  • Signum666
  • Registratie: Oktober 2008
  • Laatst online: 03-11 11:49
Ik heb de LAN adapter nu al een tijdje draaien met Espaltherma en heb er sinds kort een pulse meter op aangesloten zitten. Het vermogen waarmee het SWW verwarmd wordt is dus ook beperkt tot het overschot van de zonnepanelen. Nu mijn vraag; zou het zinvol zijn om de tank ook helemaal richting de 60 graden te verwarmen op deze manier? Dat gaat natuurlijk voor een deel met de BUH. Niet de meest efficiënte manier..

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Signum666 schreef op woensdag 30 april 2025 @ 17:28:
Ik heb de LAN adapter nu al een tijdje draaien met Espaltherma en heb er sinds kort een pulse meter op aangesloten zitten. Het vermogen waarmee het SWW verwarmd wordt is dus ook beperkt tot het overschot van de zonnepanelen. Nu mijn vraag; zou het zinvol zijn om de tank ook helemaal richting de 60 graden te verwarmen op deze manier? Dat gaat natuurlijk voor een deel met de BUH. Niet de meest efficiënte manier..
Zodra saldering is afgeschaft is dat nuttig, nu veelal nog niet. Kan je meer vertellen over je pulse meter? Welk model, hoe werkt die? Ik neem aan dat die s0 pulsen verstuurt? En dat je ook smartgrid gebruikt om je zonne overschot te gebruiken? Ik was in de veronderstelling dat smartgrid de enige manier is om met een s0 puls zender je overschot te gebruiken voor sww, hoe werkt dit voor jou? En hoe verwarm.je sww? Met een programma?

  • Signum666
  • Registratie: Oktober 2008
  • Laatst online: 03-11 11:49
MrRobin schreef op woensdag 30 april 2025 @ 18:18:
[...]


Zodra saldering is afgeschaft is dat nuttig, nu veelal nog niet. Kan je meer vertellen over je pulse meter? Welk model, hoe werkt die? Ik neem aan dat die s0 pulsen verstuurt? En dat je ook smartgrid gebruikt om je zonne overschot te gebruiken? Ik was in de veronderstelling dat smartgrid de enige manier is om met een s0 puls zender je overschot te gebruiken voor sww, hoe werkt dit voor jou? En hoe verwarm.je sww? Met een programma?
Ik heb de inepro pro380-mod uit een oude Shell Recharge laadpaal gesloopt en deze in de meterkast tussen de hoofdgroepen en de rest geplaatst. Hier zit een S0 pulse uitgang op, die vervolgens aangesloten zit op de Daikin LAN adapter. De LAN adapter verzorgt de Smartgrid communicatie met de warmtepomp, want ons model heeft dat niet ingebakken. Espaltherma heeft vervolgens 2 relays die ik aanstuur via met Home Assistant. Ik had al CT klemmen door de Zappi laadpaal die ik kan ik gebruiken in Home Assistant om uit te lezen of er overschot is. Zodra dat het geval is wordt de SG modus op "aanbevolen aan" gezet. Het vermogen waarmee SWW verwarmd wordt is dan beperkt tot het overschot.

Overigens zitten er wel de nodige beperkingen aan het hele SG verhaal. Ik gebruik de warmtepomp in LWT mode, en dan moet het buiten boven de 19 graden zijn wil hij überhaupt SWW verwarmen op deze manier. Je kan ook bufferen met de vloerverwarming om te koelen, maar dat gebruik ik niet aangezien we airco hebben. De normale verwarming van de SWW is warmhouden, met een hysterese van 10 graden. Ik heb hem standaard op 50 graden staan.

Ik heb deze opzet in een eerdere post al eens uitgelegd, maar toen had ik de Inepro er nog niet bij. https://gathering.tweakers.net/forum/view_message/79673536

[ Voor 7% gewijzigd door Signum666 op 30-04-2025 18:32 ]


  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Ik draai ook in lwt modus maar met een vaste toegestane waarde (2.5kw) in aanbevolen aan. Ik herken je verhaal van 19c niet, maar wel dat er idd significant veel overschot moet zijn voordat sww verwarmen begint. Ik heb hem specifiek op 2.5kw staan omdat vanaf 3kw waarde ook de BSH gebruikt wordt, en dat wil ik alleen in gedwongen aan modus.

  • Signum666
  • Registratie: Oktober 2008
  • Laatst online: 03-11 11:49
Die 19 graden is geen vaste waarde, maar dit is de instelling van je warmtepomp onder welke buitentemperatuur hij gaat verwarmen. Geforceerd aan werkt altijd, maar aanbevolen aan alleen onder specifieke condities.

Afbeeldingslocatie: https://tweakers.net/i/BU_jKnSrlIOKy3PQ-IvOqAkGOAc=/800x/filters:strip_exif()/f/image/QGtcGvgEJG65Y7OaLo5tuVqm.png?f=fotoalbum_large

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Wow! Thanks voor deze screenshot. Ik vermoedde al dat dit het geval zou zijn maar ik kon nergens iets vinden over het gedrag van "bufferen wanneer", in lwt modus. Ik ervaar idd ook dat de tank alleen gaat bufferen als ik de cv uit zet, wat niet ideaal is. Kan je een linkje delen naar deze pdf en / of aangeven waar in het instellingen menu 4-02 en f-01 staan? Ik zie ze wel in het instellingen overzicht maar niet hoe die instellingen precies heten...

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Iets te vroeg gesproken, inmiddels gevonden! Ruimte verwarming / koeling > werkingsgebied. Dank!

  • Signum666
  • Registratie: Oktober 2008
  • Laatst online: 03-11 11:49
https://www.daikin.nl/con...ference%20guide_Dutch.pdf

Pagina 41 kun je die passage vinden. Ik heb ook lange tijd gedacht dat de LAN adapter niet werkte, en stuitte veel later pas op deze PDF. Dat verklaarde een hoop inderdaad :)

[ Voor 26% gewijzigd door Signum666 op 30-04-2025 23:47 ]


  • ShaneV
  • Registratie: Maart 2005
  • Laatst online: 21:47
Signum666 schreef op woensdag 30 april 2025 @ 17:28:
Ik heb de LAN adapter nu al een tijdje draaien met Espaltherma en heb er sinds kort een pulse meter op aangesloten zitten. Het vermogen waarmee het SWW verwarmd wordt is dus ook beperkt tot het overschot van de zonnepanelen. Nu mijn vraag; zou het zinvol zijn om de tank ook helemaal richting de 60 graden te verwarmen op deze manier? Dat gaat natuurlijk voor een deel met de BUH. Niet de meest efficiënte manier..
Doen wij al altijd (België met DM..) de 60 graden zorgt ervoor dat ik ook minder warmwater verbruik en dat hij tussentijds niet opwarmt. 60 als er vol zonneenergie overschot is en anders 53 in beperkte vermogen (minder zon). De tank is als het ware dan een batterij.

  • Shindrac
  • Registratie: December 2022
  • Laatst online: 31-07 12:17
Ik gebruik ondertussen bijna een jaar de ESPAltherma oplossing in Home Assistant. Met de zomer in aantocht wilde ik net als jou de warmwatertank gebruiken als 'minimale' energieopslag. Momenteel doe ik dat door de booster op de thermostaat te activeren als ik zie dat ik stroom te veel heb en ik thuis ben. Ik zou dat echter graag via Home Assistant automatiseren, maar dan moet ik natuurlijk niet alleen lezen, maar ook communiceren naar de WP. Ik heb het type EHVX08S23DJ9W maar vind momenteel niet waar ik precies de aansluiting moet doen...

Iemand enige tips? De X10A gebruik ik om te lezen, maar ik wil dus graag nog weten hoe ik mijn WP ga boosten. Zie hieronder voor de foto.

Afbeeldingslocatie: https://tweakers.net/i/5CoPjNxfMgaWFQ1-oy_GFCY-JBw=/x800/filters:strip_icc():strip_exif()/f/image/KqULfQtOSihtWArtE7vrgd6H.jpg?f=fotoalbum_large

  • Andre_FR2010
  • Registratie: Maart 2011
  • Laatst online: 22:11
Shindrac schreef op zaterdag 10 mei 2025 @ 09:40:
Ik gebruik ondertussen bijna een jaar de ESPAltherma oplossing in Home Assistant. Met de zomer in aantocht wilde ik net als jou de warmwatertank gebruiken als 'minimale' energieopslag. Momenteel doe ik dat door de booster op de thermostaat te activeren als ik zie dat ik stroom te veel heb en ik thuis ben. Ik zou dat echter graag via Home Assistant automatiseren, maar dan moet ik natuurlijk niet alleen lezen, maar ook communiceren naar de WP. Ik heb het type EHVX08S23DJ9W maar vind momenteel niet waar ik precies de aansluiting moet doen...

Iemand enige tips? De X10A gebruik ik om te lezen, maar ik wil dus graag nog weten hoe ik mijn WP ga boosten. Zie hieronder voor de foto.

[Afbeelding]
Misschien heb je hier iets aan, ik gebruik deze automatisering:
deze kijkt naar de opbrengst van de zonnepanelen (min 2000W voor 30 minuten), daarna check ie of hij al gedraaid heeft die dag. Daarna zet ie de SWW temp op 60º en mode performance. Na 1,5 uur zet ie het weer terug naar normaal...
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
alias: SWW verwarmen met zonne energie
description: Verwarmt de SWW met zonne-energie bij een overschot, maximaal 1x per dag
triggers:
  - entity_id: sensor.p1_meter_vermogen
    below: -2000
    for:
      minutes: 30
    trigger: numeric_state
conditions:
  - condition: time
    after: "10:00:00"
    before: "16:00:00"
  - condition: or
    conditions:
      - condition: state
        entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
        state: performance
      - condition: state
        entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
        state: heat_pump
  - condition: state
    entity_id: input_boolean.sww_heating_ran_today
    state: "off"
actions:
  - entity_id: input_boolean.sww_heating_ran_today
    action: input_boolean.turn_on
  - target:
      entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
    data:
      temperature: 60
    action: water_heater.set_temperature
  - target:
      entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
    data:
      operation_mode: performance
    action: water_heater.set_operation_mode
  - delay:
      hours: 1
      minutes: 30
      seconds: 0
      milliseconds: 0
  - target:
      entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
    data:
      operation_mode: heat_pump
    action: water_heater.set_operation_mode
  - target:
      entity_id: water_heater.daikin_onecta_bd1200ac_5f28_4b83_9577_3c98061cd4a3
    data:
      temperature: 50
    action: water_heater.set_temperature
  - data:
      message: SWW tank verwarmd met zonne-energie
    action: notify.notify
mode: single

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Ik zie onecta, dus ik gok dat deze manier de cloud integratie gebruikt? Een alternatief is om smartgrid aan te sluiten, dat werkt volledig lokaal. Zoek maar in de handleiding op smartgrid of in het altherma topic op smartgrid, dan vind je genoeg info!

  • Shindrac
  • Registratie: December 2022
  • Laatst online: 31-07 12:17
MrRobin schreef op zaterdag 10 mei 2025 @ 10:26:
Ik zie onecta, dus ik gok dat deze manier de cloud integratie gebruikt? Een alternatief is om smartgrid aan te sluiten, dat werkt volledig lokaal. Zoek maar in de handleiding op smartgrid of in het altherma topic op smartgrid, dan vind je genoeg info!
Ja ik vind in mijn handleiding daar dus geen verwijzing naar. Ik twijfel of ik dat wel kan
... Ik zou inderdaad liever alles lokaal doen. ik heb de relais, en de ESP8266 hangt er toch al in...

Maar ik zoek dus nog waar ik de aansluiting concreet moet doen.

  • RKRR
  • Registratie: April 2024
  • Laatst online: 16:09
Hallo,

Ik heb ESPAltherma nu draaien op een Raspberry p1 3 draaien maar dit is niet stabiel. Wat zouden jullie aanraden om op te draaien.

Wil er de wp mee monitoren en eventueel, voor zo ver mogelijk, aansturen.
Heb ook de Daikin Cloud.
Zonnepanelen
Binnenkort laadpaal

Hoop wat advies te krijgen

  • Jelte
  • Registratie: Juni 2001
  • Niet online
RKRR schreef op maandag 12 mei 2025 @ 12:58:
Hallo,

Ik heb ESPAltherma nu draaien op een Raspberry p1 3 draaien maar dit is niet stabiel. Wat zouden jullie aanraden om op te draaien.

Wil er de wp mee monitoren en eventueel, voor zo ver mogelijk, aansturen.
Heb ook de Daikin Cloud.
Zonnepanelen
Binnenkort laadpaal

Hoop wat advies te krijgen
Lees https://raomin.github.io/ESPAltherma/ en zie welk stick gebruikt wordt. Dit topic staat er verder ook vol mee.

Vervolgens installeer je op die raspberry Pi 3 Home Assistant en luister je naar de MQTT berichten van ESPaltherma.
En ja, daarvoor zul je zelf even rond moeten kijken hoe je dat precies moet configureren. In dit topic staat genoeg om je op weg te helpen.

  • mawashigeri
  • Registratie: November 2002
  • Laatst online: 21:18
RKRR schreef op maandag 12 mei 2025 @ 12:58:
Hallo,

Ik heb ESPAltherma nu draaien op een Raspberry p1 3 draaien maar dit is niet stabiel. Wat zouden jullie aanraden om op te draaien.

Wil er de wp mee monitoren en eventueel, voor zo ver mogelijk, aansturen.
Heb ook de Daikin Cloud.
Zonnepanelen
Binnenkort laadpaal

Hoop wat advies te krijgen
Bij mij op een Pi5/1GB; op zich stabiel maar ik merk dat de SD kaart (na 1,5 jaar) begint te slijten waardom soms een reboot nodig is omdat 'ie traag wordt na een weekje draaien. In het begin hoefde ik eigenlijk nooit opnieuw op te starten buiten HA updates om.

Als experiment heb ik op mijn HTPC NUC het Home Assistant OS in VMware laten draaien, dat ging ook prima. Deze NUC is slechts een quadcore J3455 Celeron met 8GB RAM, dus zware hardware lijkt niet zinvol als je geen dikke databases gaat bijhouden.

Als laatste, nog niet gedaan, wil ik kijken of ik de Pi5 van SSD via een USB2SATA adapter kan laten opstarten, dat zou veel sneller en betrouwbaarder moeten zijn op de wat langere duur. De adapter werkt (aan de NUC), maar of het kan booten weet ik nog niet - ook nog uitzoeken hoe ik alle bestaande data kan meenemen.

Als ik opnieuw zou beginnen zou ik waarschijnlijk een el cheapo (Intel) NUC nemen omdat je dan in 1x met ingebouwde SSD en voldoende geheugen kan werken. Eigenlijk gebruik ik de Pi5 nu niet helemaal waarvoor het nuttig is, namelijk de (GP)IO mogelijkheden.

[ Voor 9% gewijzigd door mawashigeri op 12-05-2025 13:22 ]

ERGA06EVH / EHVX08S23EJ6V / ESPaltherma


  • wouter1981
  • Registratie: September 2002
  • Laatst online: 22-10 15:15

wouter1981

w00t

Shindrac schreef op zaterdag 10 mei 2025 @ 09:40:
Ik gebruik ondertussen bijna een jaar de ESPAltherma oplossing in Home Assistant. Met de zomer in aantocht wilde ik net als jou de warmwatertank gebruiken als 'minimale' energieopslag. Momenteel doe ik dat door de booster op de thermostaat te activeren als ik zie dat ik stroom te veel heb en ik thuis ben. Ik zou dat echter graag via Home Assistant automatiseren, maar dan moet ik natuurlijk niet alleen lezen, maar ook communiceren naar de WP. Ik heb het type EHVX08S23DJ9W maar vind momenteel niet waar ik precies de aansluiting moet doen...

Iemand enige tips? De X10A gebruik ik om te lezen, maar ik wil dus graag nog weten hoe ik mijn WP ga boosten. Zie hieronder voor de foto.

[Afbeelding]
Volgens de handleiding op ESPAltherma moet het op de klemmen bovenin, zie foto:
Afbeeldingslocatie: https://tweakers.net/i/C4gI8n5HbEyQilKhybbia0aQKPo=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/YMHrjMfDu3vH7BNSN5IWGY97.png?f=user_large

[ Voor 15% gewijzigd door wouter1981 op 15-05-2025 09:11 ]

Trust me, I'm an engineer | PVOutput


  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
Ik ben recent begonnen met het monitoren van mijn Daikin Altherma warmtepomp met de ESPAltherma.
Ik had eerder daarvoor al een Daikin Wifi module geïnstalleerd voor (beperkte) bediening van de warmtepomp via de app en via mijn Homey.


Nu wil ik een overschot aan energie van de zonnepanelen bufferen, middels het opwarmen van mijn boiler.
Ik merkte dat dit maar zeer beperkt lukte door het inschakelen van de "powerfull" stand van de boiler, maar hij was iedere keer in no-time op de temperatuur van de comfort stand, en dan schakelt de powerfull vanzelf weer uit. Dit had dus nog niet helemaal het gewenste effect.

Ik heb dit nu voor de omzeilt door de verwarmingsplanning volledig op de ECO stand te zetten (comfort zit dus niet meer in de planning).
Vervolgens heb ik de ECO stand staat nu op 38 graden gezet, en de comfort stand op 50 graden.
Als ik nu de powerfull stand aan zet, blijft hij keurig netjes doorverwarmen tot de 50 graden.

Doel bereikt... dacht ik..

Afbeeldingslocatie: https://tweakers.net/i/IBDHNpBQRXmZN96B4bjjN6KOoj0=/800x/filters:strip_exif()/f/image/fjNyZidLgnqejolNsuPRpsef.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/Dy7WtPxpRfWuBNTZRQSfsnGNBjE=/800x/filters:strip_exif()/f/image/5h04fIpvqc0pJFWbvx79EVY5.png?f=fotoalbum_large

Nu zie ik echter ineens dat hij in de powerfull stand van de boiler, ook de vloerverwarming aan gooit. En niet zo'n beetje ook..

Niet zo fijn als het buiten 30°C is om mijn vloer naar de 60°C te gooien 8)7
Laat staan de temperatuurschok van 30 graden verschil in een paar minuten..

Ik zie in mijn dashboard dat hij zelfs de thermostaat van de verwarming aan heeft gezet, en zwaar over mijn stooklijn heen verwarmd. Ook de vloerverwarmingspomp is daarbij gewoon ingeschakeld.

Heeft dat met een bepaalde instelling te maken?
Moet ik ergens instellen dat hij in powerfull modus alleen mijn boiler verwarmd, en niet mijn vloer?

  • Yongshi
  • Registratie: Juli 2016
  • Laatst online: 02-11 22:35
nils_vdg schreef op maandag 7 juli 2025 @ 19:16:


Heeft dat met een bepaalde instelling te maken?
Moet ik ergens instellen dat hij in powerfull modus alleen mijn boiler verwarmd, en niet mijn vloer?
ben geen expert, maar klinkt heel erg als een kapotte driewegklep
ESPAltherma geeft enkel DWH aan. De warmtepomp is of DWH of CV, dus dat je vloer opwarmt tijdens DWH is echt fout.

Er mag sowieso niet zo heet water door de vloer, volgens mij gaan dan je slangen kapot. Heb je wel nog een thermostaatkraan op je vloerverdeler? die zou dicht moeten gaan bij zulk warm water.

Heb je met een normale run (legionella bijv) ook dat de vloerverwarming opwarmd of alleen als je zelf aan het 'spelen' bent?

Klinkt mij als een zaakje installateur bijhalen.

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Ik denk dat je wat dingen door elkaar haalt. Kijk even goed naar welke waarde je 3way valve staat. Die bepaalt namelijk of je warm water tank aan het verwarmen bent of cv. Beiden tegelijk kan niet op de compressor, maar wel op de booster (powerful mode).

Je kan deze vraag overigens beter in het altherma 3 topic stellen, dit heeft minder met Espaltherma zelf te maken 😁.

  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
[b]MrRobin in "Daikin Altherma 3 -> ESPAltherma"
Je kan deze vraag overigens beter in het altherma 3 topic stellen, dit heeft minder met Espaltherma zelf te maken 😁.
Goed punt, zal hem daar ook even posten.
En ik zal even naar de 3-weg klep kijken.

Een defecte drieweg klep verklaard denk ik niet waarom ook de thermostaat aan gaat, en waarom ook de vloerverwarmingspomp aan gaat.

  • Yongshi
  • Registratie: Juli 2016
  • Laatst online: 02-11 22:35
nils_vdg schreef op maandag 7 juli 2025 @ 22:31:
[...]


Goed punt, zal hem daar ook even posten.
En ik zal even naar de 3-weg klep kijken.

Een defecte drieweg klep verklaard denk ik niet waarom ook de thermostaat aan gaat, en waarom ook de vloerverwarmingspomp aan gaat.
De 'thermostat' variabele in espaltherma is niet supernuttig, dat geeft enkel aan dat de altherma 'iets' aan het doen is, maar niet wat.
Ook bij powerful mode, legionella en gewone sww runs staat thermostat bij mij op on. Dus lijkt mij niet heel raar dat ie bij jou ook on aangeeft

Is je vloerverdelerspomp gestuurd door de altherma, op temperatuur of overig?

Als het op temperatuur is, dan gaat ie automatisch aan als er warm water wordt gedetecteerd. Aangezien er inderdaad warm water het cv systeem in wordt gestuurd is het logisch dat de vloerpomp aan gaat
.
Zie dat je waarschijnlijk de pomp in de altherma zelf bedoeld...foutje

Dus beiden kunnen simpel verklaard worden en hebben denk niet wat te maken met je euvel
Variabele 3wegklep oid is dan handiger (weet niet uit mijn hoofd hoe die heet)

[ Voor 3% gewijzigd door Yongshi op 07-07-2025 23:09 ]


  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
Die Thermostaat "On" zegt dus niet zo veel.
Yongshi schreef op maandag 7 juli 2025 @ 20:14:
[...]
...
Er mag sowieso niet zo heet water door de vloer, volgens mij gaan dan je slangen kapot. Heb je wel nog een thermostaatkraan op je vloerverdeler? die zou dicht moeten gaan bij zulk warm water.

Heb je met een normale run (legionella bijv) ook dat de vloerverwarming opwarmd of alleen als je zelf aan het 'spelen' bent?
...
Ik heb btw geen thermostaat op de verdelers zitten. Die zijn volledig open omdat alles in de warmtepomp geregeld wordt. Ik heb ook geen pomp op de verdelers.

Zal morgen is kijken wat hij in de legionella stand doet. Volgens mij doet hij dat altijd op dinsdag.

  • Videopac
  • Registratie: November 2000
  • Laatst online: 19:45

Videopac

Rommelt wat aan.

nils_vdg schreef op maandag 7 juli 2025 @ 19:16:
Ik ben recent begonnen met het monitoren van mijn Daikin Altherma warmtepomp met de ESPAltherma.
Ik had eerder daarvoor al een Daikin Wifi module geïnstalleerd voor (beperkte) bediening van de warmtepomp via de app en via mijn Homey.


Nu wil ik een overschot aan energie van de zonnepanelen bufferen, middels het opwarmen van mijn boiler.
Ik merkte dat dit maar zeer beperkt lukte door het inschakelen van de "powerfull" stand van de boiler, maar hij was iedere keer in no-time op de temperatuur van de comfort stand, en dan schakelt de powerfull vanzelf weer uit. Dit had dus nog niet helemaal het gewenste effect.

Ik heb dit nu voor de omzeilt door de verwarmingsplanning volledig op de ECO stand te zetten (comfort zit dus niet meer in de planning).
Vervolgens heb ik de ECO stand staat nu op 38 graden gezet, en de comfort stand op 50 graden.
Als ik nu de powerfull stand aan zet, blijft hij keurig netjes doorverwarmen tot de 50 graden.

Doel bereikt... dacht ik..

[Afbeelding]

[Afbeelding]

Nu zie ik echter ineens dat hij in de powerfull stand van de boiler, ook de vloerverwarming aan gooit. En niet zo'n beetje ook..

Niet zo fijn als het buiten 30°C is om mijn vloer naar de 60°C te gooien 8)7
Laat staan de temperatuurschok van 30 graden verschil in een paar minuten..

Ik zie in mijn dashboard dat hij zelfs de thermostaat van de verwarming aan heeft gezet, en zwaar over mijn stooklijn heen verwarmd. Ook de vloerverwarmingspomp is daarbij gewoon ingeschakeld.

Heeft dat met een bepaalde instelling te maken?
Moet ik ergens instellen dat hij in powerfull modus alleen mijn boiler verwarmd, en niet mijn vloer?
Hij meet die temperatuur wel maar pomp niets. Ik vermoed dat de Tuit-sensor erg dicht bij de 3-wegklep/sww-tank zit en geen goede waarde meet als de sww-tank verwarmt wordt,

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
Zou mooi zijn als dat het is, dan zou er niks aan de hand zijn.

Ik zal zo de temperaturen op de vloerverwarming verdelers zelf is bekijken als hij voor de anti legionella stand naar 60 graden gaat verwarmen.

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Dat heeft weinig zin als je een wand model hebt met losse watertank, want dan gaat het laatste stuk verwarmen (>52c) volledig op de BSH, een elektrisch element en stroomt er dus geen water, wat dus ook niet naar je verdelers kan stromen. Als je een vloermodel hebt, begrijp ik dat je geen BSH hebt maar legionella doet op de BUH, en dan houd je dus de hele run een pomp in bedrijf.

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Ik heb zelf met een script in HA de status van de 3-weg klep afgevangen . Zie ik gelijk wat de WP aan het doen is, SWW of Ruimte verwarming. Dit werkt goed. Je kunt dan tevens automatisch de CoP per stand uitrekenen (mits je een juiste kWh meting in gebruik hebt).
Als de WP in stand ruimteverwarming staat maar er is geen vraag door de thermostaat dan staat hij in Stand-by modus. Zodra de thermostaat bijkomt kijken we naar de stand van de 3-weg klep.

(foto's zijn niet actueel met uitzondering van de eerste, is even om aan te geven wat er mogelijk is).

Ik heb zelf een zonneboiler in gebruik dus deze periode levert de zonneboiler al het warme SWW water.

Afbeeldingslocatie: https://tweakers.net/i/WmFgmMP0jNjQdoYQrultFml8lc4=/x800/filters:strip_icc():strip_exif()/f/image/CyI5xC0Na7m13z2xesz38s39.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/HyqnMQmEmsHkBnZLNfzjVP5TFsY=/x800/filters:strip_icc():strip_exif()/f/image/TBFoGWBZR33C4aMnMoLYUIrY.jpg?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/bCm6O_zOyKLt4aHz1AdxhmM41kA=/x800/filters:strip_icc():strip_exif()/f/image/z48CVlA2S6E5Ffh3CitXFvjd.jpg?f=fotoalbum_large

[ Voor 3% gewijzigd door benthouse op 08-07-2025 16:47 ]


  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
MrRobin schreef op dinsdag 8 juli 2025 @ 12:38:
Dat heeft weinig zin als je een wand model hebt met losse watertank, want dan gaat het laatste stuk verwarmen (>52c) volledig op de BSH, een elektrisch element en stroomt er dus geen water, wat dus ook niet naar je verdelers kan stromen. Als je een vloermodel hebt, begrijp ik dat je geen BSH hebt maar legionella doet op de BUH, en dan houd je dus de hele run een pomp in bedrijf.
Ik heb een lucht/lucht warmtepomp met ingebouwde 230L boiler, dus alles wordt geregeld vanuit dezelfde unit.

Vandaag tijdens de anti-legionella verwarming gezien dat het dashboard er precies hetzelfde uit ziet.
Teglijkertijd op de verdelers gezien dat de vloerverwarming keurig 20°C blijft.

De temperaturen die hij dus weergeeft zijn dus niet specifiek van de vloerverwarming, maar puur in/uit van de warmtewisselaar.

Ik had het dashboard van de startpost gekopieerd en geplakt (zonder eigen kennis van home assistant of de Daikin te hebben), en ging er vanuit de temperaturen dus specifiek van de vloerverwarming waren, maar dat is dus gelukkig niet correct. :)
benthouse schreef op dinsdag 8 juli 2025 @ 16:45:
Ik heb zelf met een script in HA de status van de 3-weg klep afgevangen..
Dat ziet er zeker handig uit! Ik zal de ESP even opnieuw moeten flashen, want ik krijg nu de 3-wegklep status nog niet binnen.
En dan nog even wegwijs worden in Home Assistant om zoiets te bouwen.. maar daarvoor nog een hoop te leren.

Mijn zorgen voor nu zijn in ieder geval opgelost. :)

  • Roekeloos
  • Registratie: Februari 2011
  • Laatst online: 23:27
Als je de Altherma wilt aansturen en een wifi module hebt, probeer dan eens om (bijvoorbeeld met Home Assistant) de thermostaten van de boilersturing en de ruimte verwarming/koeling te beïnvloeden. Werkt bij mij geweldig.

Ik moet wel zeggen dat ik stuur op dynamische energieprijzen. Als je wilt sturen op PV overschot, zal een warmtepomp per definitie te traag reageren.

  • nils_vdg
  • Registratie: November 2002
  • Laatst online: 19:02
Voor PV overschot gebruik ik de BUH, dus de elektrische bijverwarming. Dat werkt ook gewoon goed en snel. Alleen moet je wel veel overschot hebben voordat dit mogelijk is want je vraagt dan ook direct 3kW.

  • antoj
  • Registratie: September 2019
  • Laatst online: 21-07 00:43
Wat mooi dat dee topic bestaat!

Ik wil dit gaan opzetten maar heb een altherma die niet in de lijst staat.

Ik heb een Daikin altherma LT3 Bluevolution 6.0 kW zoals hier besproken.

Welke espaltherma versie zouden jullie aanraden hier te gebruiken als instellingen ?

  • MrRobin
  • Registratie: Augustus 2011
  • Laatst online: 19:22
Een lt3 bluevolution zegt me niet zo veel. Ik denk dat je even op zoek moet naar een sticker op je warmtepomp die je vertelt wat het exacte typenummer is dat je hebt. Net zoals een iPhone 16 formeel iphone model a1281 (voorbeeld) heet. Of navragen bij je installateur. Als je de daikin onecta app gebruikt kan je het daar ook terug vinden denk ik

  • antoj
  • Registratie: September 2019
  • Laatst online: 21-07 00:43
Dank voor je antwoord!

Het was eve zoeken maar ik heb een EHBH08EF6V, en die staat er niet tussen :(

  • D-Three
  • Registratie: Oktober 2001
  • Laatst online: 20:22
antoj schreef op donderdag 10 juli 2025 @ 22:25:
Dank voor je antwoord!

Het was eve zoeken maar ik heb een EHBH08EF6V, en die staat er niet tussen :(
Zoek eens in dit topic op dat typenummer, dan vind je enkele mogelijkheden.

  • antoj
  • Registratie: September 2019
  • Laatst online: 21-07 00:43
D-Three schreef op vrijdag 11 juli 2025 @ 00:37:
[...]

Zoek eens in dit topic op dat typenummer, dan vind je enkele mogelijkheden.
Wauw goeie tip. stom dat ik daar niet op ben gekomen. Kwam niet op het idee naar dat type nummer te zoeken. dank.

  • Videopac
  • Registratie: November 2000
  • Laatst online: 19:45

Videopac

Rommelt wat aan.

Ik heb mijn hele lokale netwerk verbouwd i.v.m. Wireguard; van 192.169.1.x naar 192.168.44.x, dus ik dacht ik haal die M5stick uit mijn warmtepomp en flash daar de nieuwe gegevens op, maar ik krijg dat M5stickje niet meer aan de praat. Hij leek te hangen en ik heb hem vervolgens "uit" kunnen zetten met het knopje links van M5. Het schermpje werd toen zwart. Maar ik krijg hem niet meer "aan". Ik schijf uit/aan tussen haakjes omdat ik nog wel opnieuw naar de M5Stick kan flashen, maar als ik hem weer in de warmtepomp aansluit krijg ik geen gegevens in mijn HA dashboard. Afgezien van het IP-adres van mijn HA heb ik in de code niets veranderd. Iemand een idee hoe ik die M5stick weer aan de praat krijg? Ik heb al 2-6 seconden op die linkerknop gedrukt: daarmee zou hij weer aan moeten gaan.

Asustor AS6704T (32GB, 4x16TB MG08), OpenWrt (3x GL.iNet Flint 2 MT6000), Lyrion Media Server, Odroid H2/N2+/C4/C2, DS918+ (4x8TB WD RED)


  • BurnoutVmax
  • Registratie: September 2023
  • Laatst online: 01-11 21:41
Heb sinds kort de Altherma 4 staan. EPBX10A4V binnenunit, EPSK06AV3 buitenunit, EKHWSP200D3V3 Boilervat en Madoka thermostaat.
De Wifi module via onecta geven mij diverse sensoren in Home Assistant, maar via ESPAltherma krijg ik nog niet de juiste sensoren/waardes binnen.

Heb al veel zitten spelen met de diverse bekende registers, maar heb geen juiste waardes voor diverse sensoren;

Leaving water temp. before BUH (R1T): 40.6
Leaving water temp. after BUH (R2T): 42.6
Refrig. Temp. liquid side (R3T): 0
Inlet water temp.(R4T): 0
DHW tank temp. (R5T): -40.6
Indoor ambient temp. (R1T): 0.4
Ext. outdoor ambient sensor (R6T): 0

Iemand een idee hoe ik de juiste registers en/of waarden kan achterhalen voor een Altherma 4 ?

  • Jens85
  • Registratie: December 2015
  • Laatst online: 18:39
Ik maak inmiddeld bijna driekwart jaar met plezier gebruik van ESPAltherma! Dank aan alle bijdragen in dit forum :)

Nu heb ik een vraagje, Ik heb de laatste tijd wat problemen met mijn warmterpomp. Hij gaat niet verwarmen op de momenten dat het buiten 'te warm' is. Ik verwarm mijn watertank dagelijks om 16:00 naar 44 graden. Dat zou in principe altijd moeten werken, tenzij het buiten warmer is dan 35 graden.

Nu weet ik dat de buitenunit de temperatuur niet door geeft aan ESPAltherma als de buitenunit in standby staat. Is er een andere sensor beschikbaar die simpelweg aan geeft of de compressor vanwegen de buitentemperatuur bescherming niet kan worden ingeschakeld?
Ik zou graag willen inzien wanneer mijn compressor vindt dat het buiten te warm is. Of eigenlijk nog beter, ik wil weten tot welke temperatuur de compressor op moment x mijn water kan verwarmen.

  • Jens85
  • Registratie: December 2015
  • Laatst online: 18:39
Ik ben nog een beetje door de handleiding gegaan en heb nu de energie bespaar functie uitgezet. De temperatuur lijkt nu wel netjes bij te werken. Ik moet wel nog even uitzoeken welke prijs ik hiervoor betaal in de zin van standby verbruik. Maar als ik hierdoor mijn machine beter kan aansturen is het standby verliers het misschien wel waard.

Het is me alleen nog niet helemaal duidelijk hoe ik het standby verbruik uit kan lezen.

  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
Goedemorgen,

Wij hebben een daikin warmtepomp:
Type warmtepomp: EBLA09DA3W1
Type Boiler: EKHWS300D3V3
Type Madoka: brc1hhdw

Ook heb in de m5stickC plus aangeschaft en aan het u bouwen

Wij hebben echter geen brp069a78 lan controller.

Wat mij niet duidelijk is:

Heeft dit alleen impact op het kunnen aansturen van de warmtepomp of ook op het uitlezen van sensoren/attributen?

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • mawashigeri
  • Registratie: November 2002
  • Laatst online: 21:18
doomoo schreef op woensdag 8 oktober 2025 @ 09:25:
Goedemorgen,

Wij hebben een daikin warmtepomp:
Type warmtepomp: EBLA09DA3W1
Type Boiler: EKHWS300D3V3
Type Madoka: brc1hhdw

Ook heb in de m5stickC plus aangeschaft en aan het u bouwen

Wij hebben echter geen brp069a78 lan controller.

Wat mij niet duidelijk is:

Heeft dit alleen impact op het kunnen aansturen van de warmtepomp of ook op het uitlezen van sensoren/attributen?
De ESP32/Altherma stick is een geheel eigen systeem met eigen WiFi, je prikt die op de seriële uitgang van een printplaat in de WP.

Als je de BRP069A78 niet hebt zou ik de installateur nog maar eens bevragen, volgens mij hoort die er standaard bij. In mijn geval zat 'ie ergens verstopt tussen de documentatie. Je hebt deze module niet echt nodig, maar voor telefoon/app besturing is het wel handig.

ERGA06EVH / EHVX08S23EJ6V / ESPaltherma


  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
mawashigeri schreef op woensdag 8 oktober 2025 @ 09:52:
[...]

De ESP32/Altherma stick is een geheel eigen systeem met eigen WiFi, je prikt die op de seriële uitgang van een printplaat in de WP.

Als je de BRP069A78 niet hebt zou ik de installateur nog maar eens bevragen, volgens mij hoort die er standaard bij. In mijn geval zat 'ie ergens verstopt tussen de documentatie. Je hebt deze module niet echt nodig, maar voor telefoon/app besturing is het wel handig.
Volgens de daikin site is de module optioneel voor onze warmtepomp. De installateur die de pomp voor de vorige bewoners geplaatst heeft gaf aan dat ie er niet bij zat.

Ging mij er meer om of ik iets niet kon uitlezen zonder de adapter, het aansturen kan ik altijd nog via andere wegen gebeuren.

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • Toppe
  • Registratie: Januari 2004
  • Laatst online: 22:31

Toppe

Oké ✅

Topicstarter
Hier mensen die toevallig de COP sensor al verbeterd hebben?

Dit is m'n oude:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
      - name: "Working COP"
        unit_of_measurement: "COP"
        state_class: measurement
        state: >-
          {% if states('sensor.thermostat') == 'OFF'  %}
          {% set cop = 0.0 | float %} 
          {% elif states('sensor.thermostat') == 'ON' 
            or states('sensor.inverter_usage') |float >90 %}
          {% set t1 = states('sensor.water_leaving_temperature') | float %}
          {% set t2 = states('sensor.water_inlet_temperature') | float %}
          {% set f = states('sensor.flowpump') | float %}
          {% set pw = states('sensor.inverter_usage') | float %}
          {% set pwg = ((t1 - t2)*f) / 60 * 4184 | float %}
          {% set cop = pwg / pw | float  %}
            {% endif %}
          {% if cop != 0.0 %}
          {{ cop | float | round(1) }}
            {% else %}
          {% endif %}


Maar ondertussen heb ik ook een eigen energiemeter er tussen zitten en vraag me af of dit nog de meest accurate informatie oplevert...

Donstil: Je moet kopen wat je wilt hebben. Niet wat je nodig hebt!


  • mawashigeri
  • Registratie: November 2002
  • Laatst online: 21:18
Toppe schreef op zaterdag 11 oktober 2025 @ 18:41:
Hier mensen die toevallig de COP sensor al verbeterd hebben?

Dit is m'n oude:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
      - name: "Working COP"
        unit_of_measurement: "COP"
        state_class: measurement
        state: >-
          {% if states('sensor.thermostat') == 'OFF'  %}
          {% set cop = 0.0 | float %} 
          {% elif states('sensor.thermostat') == 'ON' 
            or states('sensor.inverter_usage') |float >90 %}
          {% set t1 = states('sensor.water_leaving_temperature') | float %}
          {% set t2 = states('sensor.water_inlet_temperature') | float %}
          {% set f = states('sensor.flowpump') | float %}
          {% set pw = states('sensor.inverter_usage') | float %}
          {% set pwg = ((t1 - t2)*f) / 60 * 4184 | float %}
          {% set cop = pwg / pw | float  %}
            {% endif %}
          {% if cop != 0.0 %}
          {{ cop | float | round(1) }}
            {% else %}
          {% endif %}


Maar ondertussen heb ik ook een eigen energiemeter er tussen zitten en vraag me af of dit nog de meest accurate informatie oplevert...
Dit is de mijne (als template), al heel lang overigens
code:
1
2
3
4
5
6
7
8
9
10
11
12
{% set current = state_attr('sensor.altherma','INV primary current (A)')|float %}
{% if is_state_attr('sensor.altherma','Operation Mode', 'Heating')
   and is_state_attr('sensor.altherma','Freeze Protection', 'OFF')
   and (0.0 < current)
%}
  {% set vflow = state_attr('sensor.altherma','Flow sensor (l/min)')|float %}
  {% set leave = state_attr('sensor.altherma','Leaving water temp. after BUH (R2T)')|float %}
  {% set inlet = state_attr('sensor.altherma','Inlet water temp.(R4T)')|float %}
  {{ 0.303016 * vflow * (leave-inlet) / current | round(1)}}
{% else %} 
  0 
{% endif %}"


Edit: we hebben dus allebei 230V hardcoded: (4184/60)/230=0.303188
Ik ga uit van 'correcte' basiscijfers (4190 = soortelijke warmte van water en 0.998 als soortelijke massa van water geeft 4190*0.998=4181.62) dus de getalletjes zijn niet precies gelijk.
Zie ook een oude post waarin de basisberekening staat.

[ Voor 9% gewijzigd door mawashigeri op 11-10-2025 19:37 ]

ERGA06EVH / EHVX08S23EJ6V / ESPaltherma


  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
Klopt het dat de COP berekeningen uitgaan van 1 fase? Wij hebben de warmtepomp EBLA09DA3W1 wat een 3-fase pomp is.
Nu zie ik hier oplossingen voorbij komen zoals Voltage /1000*3, echter zie ik de voltage niet als optie (Altherma(EBLA-EDLA D series 9-16kW Monobloc).h)

Verder lees ik hier weinig over, dus voordat ik allerlei onnodige complexiteit ga verzinnen voor een COP berekening was ik benieuwd of ik nu een probleem zoek wat er niet is of iets over het hoofd zie.

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
doomoo schreef op woensdag 15 oktober 2025 @ 14:04:
Klopt het dat de COP berekeningen uitgaan van 1 fase? Wij hebben de warmtepomp EBLA09DA3W1 wat een 3-fase pomp is.
Nu zie ik hier oplossingen voorbij komen zoals Voltage /1000*3, echter zie ik de voltage niet als optie (Altherma(EBLA-EDLA D series 9-16kW Monobloc).h)

Verder lees ik hier weinig over, dus voordat ik allerlei onnodige complexiteit ga verzinnen voor een COP berekening was ik benieuwd of ik nu een probleem zoek wat er niet is of iets over het hoofd zie.
Ik heb een EDLA09DAW1 op 3 fasen. Ik zal mijn scripts hier volgende week even delen voor die unit. Zit ook COP berekening bij.

  • Senaxx
  • Registratie: December 2010
  • Laatst online: 04-11 13:19
benthouse schreef op woensdag 15 oktober 2025 @ 21:22:
[...]


Ik heb een EDLA09DAW1 op 3 fasen. Ik zal mijn scripts hier volgende week even delen voor die unit. Zit ook COP berekening bij.
Oh daar ben ik wel benieuwd naar, zelf hebben wij de EDLA14DAW1 en heb wel eens een paar pogingen gedaan maar altijd het gevoel gehad dat het niet exact klopte.

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Senaxx schreef op zaterdag 18 oktober 2025 @ 17:05:
[...]


Oh daar ben ik wel benieuwd naar, zelf hebben wij de EDLA14DAW1 en heb wel eens een paar pogingen gedaan maar altijd het gevoel gehad dat het niet exact klopte.
Ik ben net thuis na paar weken buitenland voor werkgever. Ik kom er komende week op terug. Zal mijn configuratie van ESP32 stick posten en ook de config file voor Home Assistant. Ik gebruik een Eastron energiemeter met Modbus koppeling voor de echte energieverbruiks meting. Die van de WP wijkt namelijk af. In mij HA registreer ik ook de stand by energiekosten.

  • Stanvv
  • Registratie: Juni 2014
  • Laatst online: 23:10
Hier inmiddels ook het meeste aan de praat gekregen, alleen alles aan energy gerelateerd (COP / heat yield / inverter verbuik) bleef steeds op 0. Dat kwam omdat de 'Thermostat ON/OFF' op OFF bleef staan, ook terwijl ik weet dat deze wel eens aan staat.
Als test maar eens 'Ext. Thermostat ON/OFF' toegevoegd en warempel: deze gaat dus wel naar ON als de verwarming aan gaat.

Meer mensen die dit hebben? Qua configuratie:
  • ik heb een EBLA06E23V3, dus 6 kW versie monoblock, inclusief vloerkoeling + 250 L SWW
  • ik gebruik Altherma(EBLA-EDLA D series 4-8kW Monobloc).h, met daarbij o.a. de volgende twee regels uitgecomment:
  • {0x10,1,307,1,-1,"Thermostat ON/OFF"},
  • {0x60,2,303,1,-1,"Ext. Thermostat ON/OFF"},

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Senaxx schreef op zaterdag 18 oktober 2025 @ 17:05:
[...]


Oh daar ben ik wel benieuwd naar, zelf hebben wij de EDLA14DAW1 en heb wel eens een paar pogingen gedaan maar altijd het gevoel gehad dat het niet exact klopte.
ESPAltherma-main\SRC\Setup.h:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
//Setup your credentials and mqtt info here:
//only change the value between the " " leave the rest of the line untouched.
#define WIFI_SSID "WiFi SSID "//**Your WiFi SSID here**
#define WIFI_PWD "WiFi Password"//**Your WiFi password here** leave empty if open (bad!)

//Uncomment this to set a static IP instead of DHCP for the ESP (Separate by commas instead of dots)
#define WIFI_IP 192, 168, 1, 20 //IP Address from the ESP32 stick
#define WIFI_SUBNET 255, 255, 255, 0 //Subnetmaskrelated to IP Address from the ESP32 stick 
#define WIFI_GATEWAY 192, 168, 1, 1 // Wifi Gateway Address ( mostly your main router IP)
#define WIFI_PRIMARY_DNS 8, 8, 8, 8     //A DNS address is needed, even if it's not used 
#define WIFI_SECONDARY_DNS 8, 8, 4, 4   //A DNS address is needed, even if it's not used

#define MQTT_SERVER "192.168.1.17"//**IP address here of your MQTT server**
#define MQTT_USERNAME " "//Username MQTT Server leave empty if not set (bad!)
#define MQTT_PASSWORD " "//Password MQTT Server leave empty if not set (bad!)
#define MQTT_PORT 1883 //MQTT Server port address
//#define MQTT_ENCRYPTED // uncomment if MQTT connection is encrypted via TLS

#define FREQUENCY 10000 //query values every 10 sec (standard value 30000, 30sec)

#if defined(ARDUINO_M5Stick_C) || defined(ARDUINO_M5Stick_C_Plus) || defined(ARDUINO_M5Stick_C_Plus2)  || defined(ARDUINO_M5Stack_Tough)
// Values used when M5StickC, M5STickCPlus or M5Stick_C_Plus2 environment is selected:
#define RX_PIN    36// Pin connected to the TX pin of X10A 
#define TX_PIN    26// Pin connected to the RX pin of X10A
#else 
//Default GPIO PINs for Serial2:
#define RX_PIN    16// Pin connected to the TX pin of X10A 
#define TX_PIN    17// Pin connected to the RX pin of X10A
#endif

#define PIN_THERM 0// Pin connected to the thermostat relay (normally open)
#define PIN_THERM_ACTIVE_STATE HIGH// State to trigger the thermostat relay

//Smart grid control - Optional:
//Uncomment and set to enable SG mqtt functions
//#define PIN_SG1 32// Pin connected to dry contact SG 1 relay (normally open)
//#define PIN_SG2 33// Pin connected to dry contact SG 2 relay (normally open)
// Define if your SG relay board is Low or High triggered (signal pins)
// Only uncomment one of them
#define SG_RELAY_HIGH_TRIGGER
//#define SG_RELAY_LOW_TRIGGER

// Safety relay - also called Prefered electric fare - Optional
// If the safety relay is triggered, the heat pump will be stopped
// uncomment and set to enable the safety relay
// #define SAFETY_RELAY_PIN 33// Pin connected to the safety relay
// #define SAFETY_RELAY_ACTIVE_STATE HIGH// Pin connected to the safety relay


// DO NOT CHANGE: Defines the SG active/inactive relay states, according to the definition of the trigger status
#if defined(SG_RELAY_LOW_TRIGGER)
#define SG_RELAY_ACTIVE_STATE LOW
#define SG_RELAY_INACTIVE_STATE HIGH
#else
#define SG_RELAY_ACTIVE_STATE HIGH
#define SG_RELAY_INACTIVE_STATE LOW
#endif

#define MAX_MSG_SIZE 7120//max size of the json message sent in mqtt 

//Uncomment this line if the JSON message should be in a Json Table format []. Use only for IOBroker Vis. 
//#define JSONTABLE

//Uncomment this if you want to activate the One Value <-> One Topic mode. Each value will be sent to a specific topic below 
// #define ONEVAL_ONETOPIC
// #define MQTT_OneTopic "espaltherma/OneATTR/" //Keep the ending "/" !!

//Uncomment to disable common frequent log messages via MQTT to reduce network load
//#define DISABLE_LOG_MESSAGES


//Uncomment *ONE* of the following according to your installation.
//Then, open and edit the selected file in the /include/def/ folder and uncomment each values you are interested in.

//To use a locale version eg German, change the path to the file to the localized version. 

//Eg:
//instead of: #include "def/Altherma(EGSQH-A series 10kW GEO2).h" 
//use: 
//            #include "def/German/Altherma(EGSQH-A series 10kW GEO2).h"
//
//Suported locales: French, German, Spanish.

//#include "def/DEFAULT.h"

//#include "def/Altherma(EBLA-EDLA D series 4-8kW Monobloc).h"
#include "def/Altherma(EBLA-EDLA D series 9-16kW Monobloc).h"
//#include "def/Altherma(EGSAH-X-EWSAH-X-D series 6-10kW GEO3).h"
//#include "def/Altherma(EGSQH-A series 10kW GEO2).h"
//#include "def/Altherma(EPGA D EAB-EAV-EAVZ D(J) series 11-16kW).h"
//#include "def/Altherma(EPRA D ETSH-X 16P30-50 D series 14-16kW-ECH2O).h"
//#include "def/Altherma(EPRA D ETV16-ETB16-ETVZ16 D series 14-16kW).h"
//#include "def/Altherma(EPRA D_D7 ETSH-X 16P30-50 E_E7 series 14-18kW-ECH2O).h"
//#include "def/Altherma(EPRA D_D7 ETV16-ETB16-ETVZ16 E_E7 series 14-18kW).h"
//#include "def/Altherma(EPRA E ETSH-X 16P30-50 E series 8-12kW-ECH2O).h"
//#include "def/Altherma(EPRA E ETV16-ETB16-ETVZ16 E_EJ series 8-12kW).h"
//#include "def/Altherma(ERGA D EHSH-X P30-50 D series 04-08kW-ECH2O).h"
//#include "def/Altherma(ERGA D EHV-EHB-EHVZ DA series 04-08kW).h"
//#include "def/Altherma(ERGA D EHV-EHB-EHVZ DJ series 04-08 kW).h"
//#include "def/Altherma(ERGA E EHSH-X P30-50 E_EF series 04-08kW-ECH2O).h"
//#include "def/Altherma(ERGA E EHV-EHB-EHVZ E_EJ series 04-08kW).h"
//#include "def/Altherma(ERLA D EBSH-X 16P30-50 D SERIES 11-16kW-ECH2O).h"
//#include "def/Altherma(ERLA D EBV-EBB-EBVZ D SERIES 11-16kW).h"
//#include "def/Altherma(ERLA03 D EHFH-EHFZ DJ series 3kW).h"
//#include "def/Altherma(Hybrid).h"
//#include "def/Altherma(LT_CA_CB_04-08kW).h"
//#include "def/Altherma(LT_CA_CB_11-16kW).h"
//#include "def/Altherma(LT_CB_04-08kW Bizone).h"
//#include "def/Altherma(LT_CB_11-16kW Bizone).h"
//#include "def/Altherma(LT_EBLQ-EBLQ-CA series 5-7kW Monobloc).h"
//#include "def/Altherma(LT_EBLQ-EDLQ-CA series 11-16kW Monobloc).h"
//#include "def/Altherma(LT_Multi_DHWHP).h"
//#include "def/Altherma(LT_Multi_Hybrid).h"
//#include "def/Daikin Mini chiller(EWAA-EWYA D series 4-8kW).h"
//#include "def/Daikin Mini chiller(EWAA-EWYA D series 9-16kW).h"
//#include "def/Daikin Mini chiller(EWAQ-EWYQ B series 4-8kW).h"
//#include "def/DEFAULT.h"
//#include "def/EKHWET-BAV3(Multi DHW tank).h"

//#include "def/PROTOCOL_S_ROTEX.h"
//#include "def/PROTOCOL_S.h"


#ifndef LABELDEF
#warning "NO DEFINITION SELECTED: Please select your heat pump definition in /src/setup.h -- Using default."
#include "def/DEFAULT.h"
#endif

// Default to "Protocol I"
#ifndef PROTOCOL
#define PROTOCOL 'I'
#endif


Er is een onderscheid in de ESPAltherma bestanden (daarin moet je de in het bestand ESPAltherma-main\SRC het bestandje setup aanpassen naar je eigen Wifi en MQTT instellingen. Rest kan je zo overnemen.

In het bestand ESPAltherma-main\Include\def\Altherma(EBLA-EDLA D series 9-16kW Monobloc) de volgende configuratie plakken (de coderingen van de sensoren komen overeen met die van Daikin)

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
#include "labeldef.h"
//  This file is a definition file for ESPAtherma
//  uncomment each value you want to query for your installation.


LabelDef labelDefs[] = {
//{0x00,0,802,0,-1,"*Refrigerant type"},
//{0x00,0,152,1,-1,"Sensor Data Qty"},
//{0x00,1,152,1,-1,"INV compressor Qty"},
//{0x00,2,152,1,-1,"STD compressor Qty"},
//{0x00,3,152,1,-1,"Fan Data Qty"},
//{0x00,4,152,1,-1,"Expansion Valve Data Qty"},
//{0x00,5,152,1,-1,"4 Way Valve Data Qty"},
//{0x00,6,152,1,-1,"Crank Case Heater Qty"},
//{0x00,7,152,1,-1,"Solenoid valve Qty"},
//{0x00,8,152,1,-1,"Max. connectable indoor units"},
//{0x00,9,152,1,-1,"Connected Indoor Unit Qty"},
//{0x00,10,152,1,-1,"O/U MPU ID (xx)"},
//{0x00,11,152,1,-1,"O/U MPU ID (yy)"},
//{0x00,12,105,1,-1,"O/U capacity (kW)"},
{0x10,0,217,1,-1,"Operation Mode"},
{0x10,1,307,1,-1,"Thermostat ON/OFF"},
{0x10,1,306,1,-1,"Restart standby"},
{0x10,1,305,1,-1,"Startup Control"},
{0x10,1,304,1,-1,"Defrost Operation"},
//{0x10,1,303,1,-1,"Oil Return Operation"},
//{0x10,1,302,1,-1,"Pressure equalizing operation"},
//{0x10,1,301,1,-1,"Demand Signal"},
//{0x10,1,300,1,-1,"Low noise control"},
{0x10,4,203,1,-1,"Error type"},
{0x10,5,204,1,-1,"Error Code"},
//{0x10,6,114,2,1,"Target Evaporator Temp."},
//{0x10,8,114,2,1,"Target Condensor Temp."},
//{0x10,10,307,1,-1,"Discharge Temp. Drop"},
//{0x10,10,310,1,-1,"Discharge Temp. Protection Retry Qty"},
//{0x10,10,303,1,-1,"Comp. INV Current Drop"},
//{0x10,10,311,1,-1,"Comp. INV Current Protection Retry Qty"},
//{0x10,11,307,1,-1,"HP Drop Control"},
//{0x10,11,310,1,-1,"HP Protection Retry Qty"},
//{0x10,11,303,1,-1,"LP Drop Control"},
//{0x10,11,311,1,-1,"LP Protection Retry Qty"},
//{0x10,12,307,1,-1,"Fin Temp. Drop Control"},
//{0x10,12,310,1,-1,"Fin Temp. Protection Retry Qty"},
//{0x10,12,303,1,-1,"Other Drop Control"},
//{0x10,12,311,1,-1,"Not in use"},
//{0x11,0,215,1,-1,"O/U EEPROM (1st digit)"},
//{0x11,1,215,1,-1,"O/U EEPROM (3rd 4th digit)"},
//{0x11,2,215,1,-1,"O/U EEPROM (5th 6th digit)"},
//{0x11,3,215,1,-1,"O/U EEPROM (7th 8th digit)"},
//{0x11,4,215,1,-1,"O/U EEPROM (10th digit)"},
//{0x11,5,214,1,-1,"O/U EEPROM (11th digit)"},
//{0x00,0,995,1,-1,"NextDataGrid"},
{0x20,0,105,2,1,"R1T-Outdoor air temp."},
{0x20,2,105,2,1,"R4T-Air Heat Exchanger Temp."},
{0x20,4,105,2,1,"R2T-Compressor Discharge Temp."},
{0x20,6,105,2,1,"R3T-Compressor Suction Temp."},
{0x20,8,105,2,1,"R5T-Air Heat Exchanger mid-Temp."},
//{0x20,10,105,2,1,"Liquid pipe temp.(R6T)"},
{0x20,12,105,2,2,"High Pressure"},
{0x20,12,405,2,1,"High Pressure(T)"},
{0x20,14,105,2,2,"Low Pressure"},
{0x20,14,405,2,1,"Low Pressure(T)"},
{0x21,0,105,2,-1,"INV primary current (A)"},
{0x21,2,105,2,-1,"INV secondary current (A)"},
{0x21,4,105,2,1,"INV fin Temp."},
//{0x21,6,105,2,1,"Fan1 Fin temp."},
//{0x21,8,105,2,1,"Fan2 Fin temp."},
//{0x21,10,105,2,1,"Compressor outlet temperature"},
//{0x00,0,995,1,-1,"NextDataGrid"},
{0x30,0,152,1,-1,"INV frequency (Hz)"},
{0x30,1,211,1,-1,"Fan 1 (step)"},
//{0x30,2,211,1,-1,"Fan 2 (step)"},
//{0x30,3,151,2,-1,"Expansion valve 1 (pls)"},
//{0x30,5,151,2,-1,"Expansion valve 2 (pls)"},
//{0x30,7,151,2,-1,"Expansion valve 3 (pls)"},
//{0x30,9,151,2,-1,"Expansion valve 4 (pls)"},
//{0x30,11,307,1,-1,"Y1S-4 Way Valve"},
//{0x30,12,307,1,-1,"Crank case heater"},
//{0x30,13,307,1,-1,"Hot gas bypass valve (Y3S)"},
//{0x30,13,306,1,-1,"LP bypass valve (Y2S)"},
//{0x30,13,305,1,-1,"Y3S"},
//{0x00,0,998,1,-1,"In-Out separator"},
//{0xA0,0,119,2,1,"Suction temp"},
//{0xA0,2,119,2,1,"Outdoor heat exchanger temp."},
//{0xA0,4,119,2,1,"Liquid pipe temp."},
//{0xA0,6,119,2,2,"Pressure"},
//{0xA0,8,151,2,-1,"Expansion valve 3 (pls)"},
//{0xA0,10,152,1,-1,"O/U MPU ID"},
//{0xA0,11,152,1,-1,"O/U MPU ID"},
//{0xA0,12,307,1,-1,"HPS operation"},
//{0xA0,12,306,1,-1,"Safeguard operation"},
//{0xA0,12,305,1,-1,"Crank case heater"},
//{0xA0,12,304,1,-1,"Solenoid Valve 3"},
//{0xA0,12,303,1,-1,"Solenoid Valve 2"},
//{0xA0,12,302,1,-1,"Solenoid Valve 1"},
{0xA0,12,301,1,-1,"Y1S-4 Way Valve"},
//{0xA0,12,300,1,-1,"52C Output"},
{0xA0,13,303,1,-1,"Discharge Temp. Drop"},
{0xA0,13,302,1,-1,"During emergency operation"},
//{0xA0,13,301,1,-1,"Indoor unit blowout 50 ° C flag"},
//{0xA0,13,300,1,-1,"Powerful bit (MT setting bit)"},
//{0xA0,14,105,2,1,"Compressor port temperature"},
//{0xA1,0,119,2,1,"(Raw data)Water heat exchanger inlet temp."},
//{0xA1,2,119,2,1,"(Raw data)Water heat exchanger outlet temp."},
//{0xA1,4,302,1,-1,"Liquid INJ solenoid valve (Y4S)"},
//{0xA1,4,301,1,-1,"Bottom Plate Heater"},
//{0xA1,4,300,1,-1,"PHE Heater"},
{0xA1,5,114,2,1,"Target Discharge Temp."},
{0xA1,7,114,2,1,"Target port temperature"},
//{0xA1,9,305,1,-1,"Monobloc setting"},
//{0xA1,9,304,1,-1,"Minichiller setting"},
//{0xA1,9,303,1,-1,"MT setting"},
//{0xA1,9,302,1,-1,"GSHP setting"},
//{0xA1,9,301,1,-1,"Hydro split setting"},
{0xA1,9,300,1,-1,"Alterma LT setting"},
{0x60,0,304,1,-1,"Data Enable/Disable"},
//{0x60,1,152,1,-1,"Indoor Unit Address"},
{0x60,2,315,1,-1,"I/U operation mode"},
//{0x60,2,303,1,-1,"Ext. Thermostat ON/OFF"},
//{0x60,2,302,1,-1,"Freeze Protection"},
//{0x60,2,301,1,-1,"Silent Mode"},
//{0x60,2,300,1,-1,"Freeze Protection for water piping"},
{0x60,3,204,1,-1,"Error Code"},
{0x60,4,152,1,-1,"Error detailed code"},
{0x60,5,203,1,-1,"Error type"},
//{0x60,6,219,1,-1,"I/U capacity code"},
{0x60,7,105,2,1,"DHW setpoint"},
{0x60,9,105,2,1,"LW setpoint"},
//{0x60,11,307,1,-1,"Water flow switch"},
//{0x60,11,306,1,-1,"Thermal protector (Q1L) BUH"},
//{0x60,11,305,1,-1,"Thermal protector BSH"},
//{0x60,11,304,1,-1,"Benefit kWh rate power supply"},
//{0x60,11,303,1,-1,"Solar input"},
//{0x60,11,302,1,-1,"SmartGridContact2"},
//{0x60,11,301,1,-1,"SmartGridContact1"},
//{0x60,11,300,1,-1,"Bivalent Operation"},
//{0x60,12,307,1,-1,"2way valve(On:Heat_Off:Cool)"},
{0x60,12,306,1,-1,"3way valve (On:DHW_Off:Space)"},
{0x60,12,305,1,-1,"BSH"},
//{0x60,12,304,1,-1,"BUH Step1"},
//{0x60,12,303,1,-1,"BUH Step2"},
//{0x60,12,302,1,-1,"Floor loop shut off valve"},
{0x60,12,301,1,-1,"Water pump operation"},
//{0x60,12,300,1,-1,"Solar pump operation"},
//{0x60,13,152,1,-1,"Indoor Option Code"},
//{0x60,15,215,1,-1,"I/U Software ID (xx)"},
//{0x60,14,215,1,-1,"I/U Software ID (yy)"},
//{0x60,16,152,1,-1,"I/U EEPROM Ver."},
//{0x61,0,307,1,-1,"Data Enable/Disable"},
//{0x61,1,152,1,-1,"Indoor Unit Address"},
{0x61,2,105,2,1,"Hydro Module LWT (R1T)"},
//{0x61,4,105,2,1,"Leaving water temp. after BUH (R2T)"},
{0x61,6,105,2,1,"Hydro Module Refrig. Temp. liquid side (R3T)"},
{0x61,8,105,2,1,"Hydro Module Inlet water temp.(R4T)"},
{0x61,10,105,2,1,"DHW tank temperature (R5T)"},
{0x61,12,105,2,1,"Room temperature (R1T)"},
//{0x61,14,105,2,1,"Ext. indoor ambient sensor (R6T)"},
//{0x62,0,307,1,-1,"Data Enable/Disable"},
//{0x62,1,152,1,-1,"Indoor Unit Address"},
{0x62,2,307,1,-1,"DHW Storage Reheat ON/OFF"},
{0x62,2,306,1,-1,"DWH Storage ECO ON/OFF"},
{0x62,2,305,1,-1,"DHW Storage comfort ON/OFF"},
{0x62,2,304,1,-1,"DHW Powerful Operation. ON/OFF"},
{0x62,2,303,1,-1,"Space Heating Operation ON/OFF"},
{0x62,2,302,1,-1,"System OFF (ON:System off)"},
//{0x62,2,301,1,-1,"Not in use"},
//{0x62,2,300,1,-1,"Emergency (indoor) active/not active"},
//{0x62,3,105,2,1,"LW setpoint (add)"},
{0x62,5,105,2,1,"Room temperature setpoint"},
//{0x62,7,307,1,-1,"Add. Ext. RT Input Cool."},
//{0x62,7,306,1,-1,"Add. Ext. RT Input Heat."},
//{0x62,7,305,1,-1,"Main RT Cooling"},
//{0x62,7,304,1,-1,"Main RT Heating"},
//{0x62,7,303,1,-1,"Pwr consumption limit 4"},
//{0x62,7,302,1,-1,"Pwr consumption limit 3"},
//{0x62,7,301,1,-1,"Pwr consumption limit 2"},
//{0x62,7,300,1,-1,"Pwr consumption limit 1"},
//{0x62,8,307,1,-1,"None"},
//{0x62,8,306,1,-1,"Not in use"},
//{0x62,8,305,1,-1,"Not in use"},
//{0x62,8,304,1,-1,"PHE Heater"},
//{0x62,8,303,1,-1,"Tank preheat ON/OFF"},
{0x62,8,302,1,-1,"Circulation pump operation"},
//{0x62,8,301,1,-1,"Alarm output"},
//{0x62,8,300,1,-1,"Space H Operation output"},
{0x62,9,105,2,-1,"Flow sensor (l/min)"},
{0x62,11,105,1,2,"Water system pressure (B1PW)"},
{0x62,12,152,1,-1,"Water pump signal (0:max-100:stop)"},
//{0x62,13,152,1,-1,"[Future] 3 way Valve Mixing 1"},
//{0x62,14,152,1,-1,"[Future] 3 way Valve Mixing 2"},
{0x62,15,105,2,2,"Refrigerant pressure sensor (S1NPH)"},
//{0x63,0,307,1,-1,"Data Enable/Disable"},
//{0x63,1,152,1,-1,"Indoor Unit Address"},
//{0x63,2,215,1,-1,"I/U EEPROM (3rd digit)"},
//{0x63,3,215,1,-1,"I/U EEPROM (4th 5th digit)"},
//{0x63,4,215,1,-1,"I/U EEPROM (6th 7th digit)"},
//{0x63,5,215,1,-1,"I/U EEPROM (8th 9th digit)"},
//{0x63,6,215,1,-1,"I/U EEPROM (11th digit)"},
//{0x63,7,215,1,-1,"I/U EEPROM (12th digit)(rev.)"},
//{0x63,8,215,1,-1,"Not in use"},
//{0x63,9,215,1,-1,"Not in use"},
//{0x63,10,215,1,-1,"Not in use"},
//{0x63,11,215,1,-1,"Not in use"},
//{0x63,12,215,1,-1,"Not in use"},
//{0x63,13,311,1,-1,"BUH output capacity"},
//{0x63,14,161,1,-1,"Current measured by CT sensor of L1"},
//{0x63,15,161,1,-1,"Current measured by CT sensor of L2"},
//{0x63,16,307,1,-1,"HP Forced FG"},
//{0x63,16,161,1,-1,"Current measured by CT sensor of L3"},
//{0x64,0,307,1,-1,"Data Enable/Disable"},
//{0x64,1,152,1,-1,"Indoor Unit Address"},
//{0x64,2,316,1,-1,"Hybrid Op. Mode"},
//{0x64,2,303,1,-1,"Boiler Operation Demand"},
//{0x64,2,302,1,-1,"Boiler DHW Demand"},
//{0x64,2,301,1,-1,"Bypass Valve Output"},
//{0x64,3,105,2,-1,"BE_COP"},
//{0x64,5,105,2,1,"Hybrid Heating Target Temp."},
{0x64,7,105,2,1,"Boiler Heating Target Temp."},
//{0x64,9,302,1,-1,"Add pump"},
//{0x64,9,301,1,-1,"Main pump"},
//{0x64,10,118,2,1,"Mixed water temp."},
//{0x64,12,105,2,1,"2nd Domestic hot water temperature"},
{0x64,14,152,1,1,"Target delta T heating"},
//{0x64,15,152,1,1,"Target delta T cooling"},
//{0x65,0,307,1,-1,"Data Enable/Disable"},
//{0x65,1,152,2,-1,"Indoor Unit Address"},
//{0x65,2,105,2,1,"Outlet water heat exchanger temp (hydro split model) DLWB2"},
//{0x65,4,105,2,1,"[EKMIK] Bizone kit mixed leaving water temperature R1T"},
//{0x65,6,101,1,-1,"[EKMIK] Bizone kit mix valve position M1S"},
};


In Home Assistant heb ik een YAML file voor de Daikin EDLA/EBLA warmtepomp die dus qua variabelen gekoppeld is aan bovenstaande config file op de ESPAltherma

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
#
template:
#
    - binary_sensor:
#
      - name: "Defrost Operation-binary"
        icon: mdi:snowflake-melt
        state: "{{ state_attr('sensor.althermasensors','Defrost Operation') }}"
        unique_id: "espaltherma.Defrost_Operation_ON/OFF_binary"      
#
      - name: "Thermostat-binary"
        state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
        unique_id: "espaltherma.Thermostat_ON/OFF_binary"
#
      - name: "3Way Valve-binary"
        state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
        unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)_binary"
#        
# Below a combined status from Thermostat and 3-way valve in position for Space Heating
      - name: "Space Heating"
        icon: mdi:heat-wave
        state: "{{  'ON' if is_state('sensor.3way_valve', 'OFF' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "space_heating_in_operation"
#
# Below a combined status from Thermostat and 3-way valve in position for DHW Tank Heating
      - name: "DHW Heating"
        icon: mdi:bathtub-outline
        state: "{{  'ON' if is_state('sensor.3way_valve', 'ON' ) and  is_state('sensor.thermostat', 'ON') else 'OFF'  }}"
        unique_id: "DHW_in_operation"
#
#
      - name: "Restart standby"
        state: "{{ state_attr('sensor.althermasensors','Restart standby') }}"
        unique_id: "espaltherma.Restart_standby_ON/OFF"                
#
      - name: "Startup Control"
        state: "{{ state_attr('sensor.althermasensors','Startup Control') }}"
        unique_id: "espaltherma.Startup_Control_ON/OFF"                    
#
      - name: "Y1S-4 Way Valve"
        state: "{{ state_attr('sensor.althermasensors','Y1S-4 Way Valve') }}"
        unique_id: "espaltherma.Y1S-4_Way_Valve_ON/OFF"                
#
      - name: "BSH"
        state: "{{ state_attr('sensor.althermasensors','BSH') }}"
        unique_id: "espaltherma.BSH_ON/OFF"
#
      - name: "Water pump"
        state: "{{ state_attr('sensor.althermasensors','Water pump operation') }}"
        unique_id: "espaltherma.Water_pump_operation_ON/OFF"
#
      - name: "DHW Storage Reheat"
        state: "{{ state_attr('sensor.althermasensors','DHW Storage Reheat ON/OFF') }}"
        unique_id: "espaltherma.DHW_Storage_Reheat_ON/OFF"        
#
      - name: "DHW Storage ECO"
        state: "{{ state_attr('sensor.althermasensors','DWH Storage ECO ON/OFF') }}"
        unique_id: "espaltherma.DWH_Storage_ECO_ON/OFF"        
#
      - name: "DHW Storage Comfort"
        state: "{{ state_attr('sensor.althermasensors','DHW Storage comfort ON/OFF') }}"
        unique_id: "espaltherma.DHW_Storage_comfort_ON/OFF"        
#
      - name: "DHW Powerful Operation"
        state: "{{ state_attr('sensor.althermasensors','DHW Powerful Operation. ON/OFF') }}"
        unique_id: "espaltherma.DHW_Powerful_Operation_ON/OFF"        
#
      - name: "Space Heating Operation"
        state: "{{ state_attr('sensor.althermasensors','Space Heating Operation ON/OFF') }}"
        unique_id: "espaltherma.Space_Heating_Operation_ON/OFF"        
#
      - name: "System OFF (ON:System off)"
        state: "{{ state_attr('sensor.althermasensors','System OFF (ON:System off)') }}"
        unique_id: "espaltherma.System_OFF_(ON:System_off)"        
#
      - name: "Circulation pump operation"
        state: "{{ state_attr('sensor.althermasensors','Circulation pump operation') }}"
        unique_id: "espaltherma.Circulation_pump_operation_ON/OFF"
#
#
#
#
    - sensor:
#
#
      - name: "Thermostat"
        state: "{{ state_attr('sensor.althermasensors','Thermostat ON/OFF') }}"
        unique_id: "espaltherma.Thermostat_ON/OFF"        
#
      - name: "3Way Valve"
        state: "{{ state_attr('sensor.althermasensors','3way valve (On:DHW_Off:Space)') }}"
        unique_id: "espaltherma.3way_valve_(On:DHW_Off:Space)"
#
      - name: "Defrost Operation"
        state: "{{ state_attr('sensor.althermasensors','Defrost Operation') }}"
        unique_id: "espaltherma.Defrost_Operation_ON/OFF"      
#
      - name: "ESPAltherma last update"
        state: "{{ as_timestamp(states.sensor.althermasensors.last_updated) | timestamp_custom('%H:%M:%S',True) }}"    
        unique_id: "espaltherma.last_update"    
#
      - name: "Error type"
        state: "{{ state_attr('sensor.althermasensors','Error type') }}"  
        unique_id: "espaltherma.Error_type"
#
      - name: "Error code"
        state: "{{ state_attr('sensor.althermasensors','Error Code') }}"  
        unique_id: "espaltherma.Error_code"    
#
      - name: "Error detailed code"
        state: "{{ state_attr('sensor.althermasensors','Error detailed code') }}"  
        unique_id: "espaltherma.Error_detailed_code"    
#
      - name: "Last operation Mode"
        state: "{{ state_attr('sensor.althermasensors','I/U operation mode') }}"
        unique_id: "espaltherma.I/U_operation_mode"
#
      - name: "Operation Mode"
        state: "{{ state_attr('sensor.althermasensors','Operation Mode') }}"   
        unique_id: "espaltherma.Operation_Mode"  
#
#
#
# Analog Values
      - name: "Fan Speed"
        state: "{{ state_attr('sensor.althermasensors','Fan 1 (step)')|float(0) * 10 }} "
        unique_id: "espaltherma.Fan_1_(step)"
        unit_of_measurement: "rpm"
        state_class: measurement
#
      - name: "Target Condensor Temp."
        state: "{{ state_attr('sensor.althermasensors','Target Condensor Temp.') }}"
        unique_id: "espaltherma.Target_Condensor_Temp."
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "R1T-Outdoor air temp."
        state: "{{ state_attr('sensor.althermasensors','R1T-Outdoor air temp.') }}"
        unique_id: "espaltherma.R1T-Outdoor_air_temp."
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "R4T-Air Heat Exchanger Temp."
        state: "{{ state_attr('sensor.althermasensors','R4T-Air Heat Exchanger Temp.') }}"
        unique_id: "espaltherma.R4T-Air_Heat_Exchanger_Temp."
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "R2T-Compressor Discharge Temp."
        state: "{{ state_attr('sensor.althermasensors','R2T-Compressor Discharge Temp.') }}"
        unique_id: "espaltherma.R2T-Compressor_Discharge_Temp."
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "R3T-Compressor Suction Temp."
        state: "{{ state_attr('sensor.althermasensors','R3T-Compressor Suction Temp.') }}"
        unique_id: "espaltherma.R3T-Compressor_Suction_Temp."
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "R5T-Air Heat Exchanger mid-Temp."
        state: "{{ state_attr('sensor.althermasensors','R5T-Air Heat Exchanger mid-Temp.') }}"
        unique_id: "espaltherma.R5T-Air_Heat_Exchanger_mid-Temp."
        unit_of_measurement: "°C"
        state_class: measurement
#      
      - name: "Inverter current"
        state: "{{ state_attr('sensor.althermasensors','INV primary current (A)') }}"
        unique_id: "espaltherma.INV_primary_current_(A)"                                                                        
        unit_of_measurement: "A"
        state_class: measurement    
#
      - name : "Inverter current secondary"
        state: "{{ state_attr('sensor.althermasensors', 'INV secondary current (A)') }}"
        unique_id: "espaltherma.INV_secondary_current_(A)"                                
        unit_of_measurement: "A"
        state_class: measurement
#
      - name: "Inverter fin Temp."
        state: "{{ state_attr('sensor.althermasensors','INV fin Temp.') }}"
        unique_id: "espaltherma.INV_fin_Temp."
        unit_of_measurement: "°C"
        state_class: measurement    
#
      - name: "Inverter frequency"
        state: "{{ state_attr('sensor.althermasensors','INV frequency (Hz)') }}"
        unique_id: "espaltherma.INV_frequency_(Hz)"                                                                                
        unit_of_measurement: "Hz"
        state_class: measurement
#
      - name: "Target Discharge Temp."
        state: "{{ state_attr('sensor.althermasensors','Target Discharge Temp.') }}"
        unique_id: "espaltherma.Target_Discharge_Temp."
        unit_of_measurement: "°C"
        state_class: measurement    
#
      - name: "DWH tank temperature setpoint"
        state: "{{ state_attr('sensor.althermasensors','DHW setpoint') }}"
        unique_id: "espaltherma.DHW_tank_setpoint"                                        
        unit_of_measurement: "°C"
        state_class: measurement   
#
      - name: "Leaving water temperature setpoint"
        state: "{{ state_attr('sensor.althermasensors','LW setpoint') }}"
        unique_id: "espaltherma.LW_setpoint"                                                        
        unit_of_measurement: "°C"
        state_class: measurement
#        
      - name: "Leaving water temperature (R1T)"
        state: "{{ state_attr('sensor.althermasensors','Hydro Module LWT (R1T)') }}"
        unique_id: "espaltherma.Hydro_Module_LWT_(R1T)"                                                
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "Refrigerator liquid temperature (R3T)"
        state: "{{ state_attr('sensor.althermasensors','Hydro Module Refrig. Temp. liquid side (R3T)') }}"
        unique_id: "espaltherma.Hydro_Module_Refrig._Temp._liquid side (R3T)"                                                
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "Inlet water temperature (R4T)"
        state: "{{ state_attr('sensor.althermasensors','Hydro Module Inlet water temp.(R4T)') }}"
        unique_id: "espaltherma.Hydro_Module_Inlet_water_temp.(R4T)"                                                
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "DHW tank temperature (R5T)"
        state: "{{ state_attr('sensor.althermasensors','DHW tank temperature (R5T)') }}"
        unique_id: "espaltherma.DHW_tank_temperature_(R5T)"
        unit_of_measurement: "°C"
        state_class: measurement
#        
      - name: "Room temperature (R1T)"
        state: "{{ state_attr('sensor.althermasensors','Room temperature (R1T)') }}"
        unique_id: "espaltherma.Room_temperature_(R1T)"                                                                
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "Room temperature setpoint"
        state: "{{ state_attr('sensor.althermasensors','Room temperature setpoint') }}"
        unique_id: "espaltherma.Room_temperature_setpoint"                                        
        unit_of_measurement: "°C"
        state_class: measurement   
#      
      - name: "Flow sensor"
        state: "{{ state_attr('sensor.althermasensors','Flow sensor (l/min)') }}"
        unique_id: "espaltherma.Flow_sensor_(l/min)"
        unit_of_measurement: "l/min"
        state_class: measurement
#
      - name: "Water system pressure (B1PW)"
        state: "{{ state_attr('sensor.althermasensors','Water system pressure (B1PW)') }}"
        unique_id: "espaltherma.Water_system_pressure_(B1PW)"                                                        
        unit_of_measurement: "bar"
        state_class: measurement
# (inverted value!)
      - name: "Water pump speed"
        state: "{{ 100 - state_attr('sensor.althermasensors','Water pump signal (0:max-100:stop)') }}"
        unique_id: "espaltherma.Water_pump_signal_(0:max-100:stop)"        
        unit_of_measurement: "%"
        state_class: measurement
#
      - name : "Refrigerant pressure sensor (S1NPH)"
        state: "{{ state_attr('sensor.althermasensors', 'Refrigerant pressure sensor (S1NPH)') }}"
        unique_id: "espaltherma.Refrigerant_pressure_sensor_(S1NPH)"                                        
        unit_of_measurement: "bar"
        state_class: measurement
#
      - name : "Boiler Heating Target Temp."
        state: "{{ state_attr('sensor.althermasensors', 'Boiler Heating Target Temp.') }}"
        unique_id: "espaltherma.Boiler_Heating_Target_Temp."                                        
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "Delta T Heating Target"
        state: "{{ state_attr('sensor.althermasensors','Target delta T heating') }}"
        unique_id: "espaltherma.Target_delta_T_heating"        
        unit_of_measurement: "°C"
        state_class: measurement
#
      - name: "Althermasensors WifiRSSi"
        state: "{{ state_attr('sensor.althermasensors','WifiRSSI')|replace('dBm', '')|float(0) }}"
        unique_id: "wifirssi"
        unit_of_measurement: "dBm"
        state_class: measurement
        availability: >
          {{ states('sensor.althermasensors') not in ['0', 'unavailable', 'unknown', 'none'] }}

#
#
# Calculated Inverter Power Usage for average of 3phases      
      - name: "Inverter usage"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.inverter_current')|float(0) * (((states('sensor.phases_voltage_phase_l1')|float + (states('sensor.phases_voltage_phase_l2')|float) + (states('sensor.phases_voltage_phase_l3')|float)) /3) * 1.73)|float(0)) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.inverter_usage"
        unit_of_measurement: "W"
        state_class: measurement
#        
# Calculated Heatload (Q=m*c*dT)
      - name: "Heat load"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.flow_sensor'))|float / 60 * 4187 * (states('sensor.delta_t'))|float |round(1) }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_load"  
        unit_of_measurement: "W"
        state_class: measurement

# Calculated COP        
      - name: "CoP"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{(states('sensor.heat_load'))|float / (states('sensor.inverter_usage')|float) }} {% else %} 0 {% endif %}"
        unique_id: "espaltherma.cop"  
        unit_of_measurement: ""
        state_class: measurement

# Calculated Heat Yield     
      - name: "Heat yield"
        state: "{% if is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'ON') %} {{ (states('sensor.inverter_usage')|float * states('sensor.cop')| float)|round|int }}  {% elif is_state_attr('sensor.althermasensors', 'Thermostat ON/OFF', 'OFF') %} 0 {% endif %}"
        unique_id: "espaltherma.heat_yield"
        unit_of_measurement: "W"
        state_class: measurement

# Calculated Delta T inbetween Inlet and Outlet temperature heatpump      
      - name: "Delta T"
        state: >-
            {{ (states('sensor.leaving_water_temperature_r1t')|float - states('sensor.inlet_water_temperature_r4t') | float)|round(1) }}
        unique_id: "espaltherma.delta_t"
        unit_of_measurement: "°C"

######################################################################################################################################################

  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Mijn Daikin.YAML staat in de folder van Home Assistant: /homeassistant/packages
In de Config.YAML file in de hoofdfolder /homeassistant verwijs ik naar de packages folder:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
homeassistant:
  packages: !include_dir_named packages

modbus:
  - name: SDM630
    type: tcp
    host: 192.168.1.21
    port: 502
    delay: 0
    message_wait_milliseconds: 30
    timeout: 5
    sensors: !include sdm630_addresses.yaml


In de hoofdfolder /homeassistant staat ook het automations.Yaml bestand; code hieronder:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
- id: '1739034842461'
  alias: 'Heatpump: Defrost counter'
  description: ''
  triggers:
  - entity_id:
    - sensor.defrost_operation
    to: 'ON'
    trigger: state
  conditions: []
  actions:
  - data: {}
    target:
      entity_id: counter.defrost
    action: counter.increment
  mode: single
- id: '1739034897878'
  alias: Nacht reset
  description: Reset 's nachts alle sensoren naar hun standaard waarde.
  triggers:
  - at: 00:00:10
    trigger: time
  conditions: []
  actions:
  - data: {}
    target:
      entity_id:
      - counter.defrost
    action: counter.reset
  mode: single
- id: '1742414247265'
  alias: Set Heatpump Tariff Based on Mode
  trigger:
  - platform: state
    entity_id:
    - binary_sensor.space_heating_mode
    - binary_sensor.dhw_heating_mode
    - binary_sensor.heatpump_standby_mode
  condition: []
  action:
  - choose:
    - conditions:
      - condition: state
        entity_id: binary_sensor.space_heating_mode
        state: 'on'
      sequence:
      - service: select.select_option
        target:
          entity_id: select.daily_kwh_heatpump
        data:
          option: Space Heating
      - service: select.select_option
        target:
          entity_id: select.weekly_kwh_heatpump
        data:
          option: Space Heating
      - service: select.select_option
        target:
          entity_id: select.monthly_kwh_heatpump
        data:
          option: Space Heating
    - conditions:
      - condition: state
        entity_id: binary_sensor.dhw_heating_mode
        state: 'on'
      sequence:
      - service: select.select_option
        target:
          entity_id: select.daily_kwh_heatpump
        data:
          option: DHW Heating
      - service: select.select_option
        target:
          entity_id: select.weekly_kwh_heatpump
        data:
          option: DHW Heating
      - service: select.select_option
        target:
          entity_id: select.monthly_kwh_heatpump
        data:
          option: DHW Heating
    - conditions:
      - condition: state
        entity_id: binary_sensor.heatpump_standby_mode
        state: 'on'
      sequence:
      - service: select.select_option
        target:
          entity_id: select.daily_kwh_heatpump
        data:
          option: Stand-By
      - service: select.select_option
        target:
          entity_id: select.weekly_kwh_heatpump
        data:
          option: Stand-By
      - service: select.select_option
        target:
          entity_id: select.monthly_kwh_heatpump
        data:
          option: Stand-By
  mode: single


Een Dashboard (ruwe file):

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
views:
  - theme: Backend-selected
    title: Heating systems
    badges:
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.espaltherma_last_update
        color: orange
        show_entity_picture: true
        icon: mdi:clock
        tap_action:
          action: none
        state_content: last_changed
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.last_legionella_run
        color: blue
        show_entity_picture: true
        icon: mdi:clock-check-outline
        tap_action:
          action: none
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.althermasensors_wifirssi
        color: light-green
        show_entity_picture: true
        icon: mdi:wifi
        tap_action:
          action: none
        name: 'WiFi Signal '
      - type: entity
        show_name: false
        show_state: true
        show_icon: true
        entity: binary_sensor.space_heating_mode
        color: deep-orange
        show_entity_picture: true
        name: Space Heating
        tap_action:
          action: more-info
        state_content:
          - name
          - state
      - type: entity
        show_name: false
        show_state: true
        show_icon: true
        entity: binary_sensor.dhw_heating_mode
        color: deep-orange
        show_entity_picture: true
        name: DHW Tank Heating
        tap_action:
          action: more-info
        state_content:
          - name
          - state
      - type: entity
        entity: sensor.actual_outside_temperature
    cards:
      - type: conditional
        conditions:
          - condition: state
            entity: sensor.km2_a840411cad97_pump_speed_relay_1
            state: '0'
        card:
          type: entities
          entities:
            - type: section
              label: Solar Heating not active
          title: 'Actual Status Solar Heating:'
      - type: conditional
        conditions:
          - condition: state
            entity: sensor.km2_a840411cad97_pump_speed_relay_1
            state_not: '0'
        card:
          type: entities
          entities:
            - type: section
              label: DHW Tank Heating with Solar
            - entity: sensor.km2_a840411cad97_temperature_sensor_3
              icon: mdi:thermometer
              name: DHW Tank Top Temperature
            - entity: sensor.km2_a840411cad97_temperature_sensor_2
              icon: mdi:thermometer
              name: DHW Tank Bottom Temperature
            - entity: sensor.km2_a840411cad97_temperature_sensor_1
              icon: mdi:thermometer
              name: Collector Temperature
            - entity: sensor.km2_a840411cad97_pump_speed_relay_1
              icon: mdi:speedometer
              name: Glycolwaterpump speed
          show_header_toggle: false
          title: 'Actual Status Solar Heating:'
      - type: custom:apexcharts-card
        experimental:
          color_threshold: true
        apex_config:
          chart:
            height: 250px
        header:
          show: true
          title: DHW Tank Temperature / Collector roof
          show_states: true
          colorize_states: true
        series:
          - entity: sensor.km2_a840411cad97_temperature_sensor_3
            fill_raw: last
            stroke_width: 1
            color_threshold:
              - value: 50
                color: '#03a034'
              - value: 45
                color: '#ff9900'
              - value: 40
                color: '#cc2900'
              - value: 30
                color: blue
          - entity: sensor.km2_a840411cad97_temperature_sensor_2
            fill_raw: last
            stroke_width: 1
            color_threshold:
              - value: 50
                color: '#03a034'
              - value: 45
                color: '#ff9900'
              - value: 40
                color: '#cc2900'
              - value: 30
                color: blue
          - entity: sensor.km2_a840411cad97_temperature_sensor_1
            fill_raw: last
            stroke_width: 1
            color_threshold:
              - value: 50
                color: '#03a034'
              - value: 45
                color: '#ff9900'
              - value: 40
                color: '#cc2900'
              - value: 30
                color: blue
      - type: conditional
        conditions:
          - condition: state
            entity: sensor.defrost_operation
            state: 'ON'
        card:
          type: markdown
          content: '## Defrost operation active!'
      - type: entities
        entities:
          - entity: sensor.room_temperature_setpoint_2
            icon: mdi:thermometer-auto
            name: Room Temperature setpoint
          - entity: sensor.dwh_tank_temperature_setpoint
            icon: mdi:thermometer-auto
            name: 'DHW Tank Temperature setpoint '
          - entity: sensor.leaving_water_temperature_setpoint
            icon: mdi:thermometer-auto
            name: Leaving Water Temperature setpoint
          - entity: sensor.delta_t_heating_target
            icon: mdi:thermometer-auto
            name: Delta-T Target setpoint
        title: 'Setpoints Heatpump:'
      - type: entities
        entities:
          - entity: binary_sensor.heatpump_standby_mode
          - entity: binary_sensor.space_heating_mode
            icon: mdi:heat-wave
            name: Space Heating
          - entity: binary_sensor.dhw_heating_mode
            icon: mdi:bathtub-outline
            name: DHW Tank Heating
          - entity: binary_sensor.defrost_operation_binary
            icon: mdi:snowflake-melt
            name: Defrost Operation
          - entity: binary_sensor.dhw_powerful_operation
            icon: mdi:rocket-launch
            name: DHW Tank Powerful Operation
          - entity: sensor.cop
            icon: mdi:radiator
            name: CoP Actual
          - entity: sensor.dhw_tank_temperature_r5t
            icon: mdi:thermometer
            name: (R5T) DHW Tank Top Temperature
          - entity: sensor.km2_a840411cad97_temperature_sensor_2
            icon: mdi:thermometer
            name: DHW Tank Bottom Temperature
          - entity: sensor.room_temperature_r1t
            icon: mdi:thermometer
            name: (R1T) Room Temperature
          - entity: sensor.water_pump_speed
          - entity: sensor.altherma_climatecontrol_error_code
            icon: mdi:information-outline
            name: Error Code
        title: 'Summary Heating Systems:'
        show_header_toggle: false
        state_color: true
      - type: vertical-stack
        cards:
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 60m
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: CoP last 60 minutes
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop
                name: CoP Actual
                fill_raw: last
                curve: stepline
                stroke_width: 2
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 24h
            apex_config:
              legend:
                show: false
              chart:
                height: 250px
            header:
              show: true
              title: CoP Act / AVG last 24h
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop
                name: Actual
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                curve: stepline
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
              - entity: sensor.cop
                name: AVG / 24h
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
                group_by:
                  func: avg
                  duration: 1d
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 24h
            apex_config:
              legend:
                show: false
              chart:
                height: 250px
            header:
              show: true
              title: CoP Act / AVG last 24h DHW Heating
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop_dhw_heating
                name: Actual
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                curve: stepline
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
              - entity: sensor.cop_dhw_heating
                name: AVG / 24h
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
                group_by:
                  func: avg
                  duration: 1d
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 24h
            apex_config:
              legend:
                show: false
              chart:
                height: 250px
            header:
              show: true
              title: CoP Act / AVG last 24h Space Heating
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop_space_heating
                name: Actual
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                curve: stepline
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
              - entity: sensor.cop_space_heating
                name: AVG / 24h
                show:
                  in_brush: true
                fill_raw: last
                stroke_width: 1
                color_threshold:
                  - value: -20
                    color: purple
                  - value: -10
                    color: red
                  - value: 3
                    color: '#ff9900'
                  - value: 4
                    color: '#03a034'
                group_by:
                  func: avg
                  duration: 1d
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 2week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: CoP / Day Overall
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop
                name: AVG CoP / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: avg
                  duration: 1d
                color_threshold:
                  - value: -10
                    color: purple
                  - value: 0
                    color: red
                  - value: 2
                    color: orange
                  - value: 3
                    color: yellow
                  - value: 4
                    color: lightgreen
                  - value: 5
                    color: green
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 2week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: CoP / Day DHW Heating
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop_dhw_heating
                name: AVG CoP / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: avg
                  duration: 1d
                color_threshold:
                  - value: -10
                    color: purple
                  - value: 0
                    color: red
                  - value: 2
                    color: orange
                  - value: 3
                    color: yellow
                  - value: 4
                    color: lightgreen
                  - value: 5
                    color: green
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 2week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: CoP / Day Space Heating
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.cop_space_heating
                name: AVG CoP / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: avg
                  duration: 1d
                color_threshold:
                  - value: -10
                    color: purple
                  - value: 0
                    color: red
                  - value: 2
                    color: orange
                  - value: 3
                    color: yellow
                  - value: 4
                    color: lightgreen
                  - value: 5
                    color: green
      - type: vertical-stack
        cards:
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
              brush: true
            graph_span: 24h
            brush:
              selection_span: 24h
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Temperature Charts
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.inlet_water_temperature_r4t
                fill_raw: last
                stroke_width: 1
                name: Inlet Temp.
                color: blue
              - entity: sensor.leaving_water_temperature_r1t
                fill_raw: last
                stroke_width: 1
                color: red
                name: Leaving Water Temp.
              - entity: sensor.leaving_water_temperature_setpoint
                fill_raw: last
                stroke_width: 1
                color: purple
                name: LWT setpoint
              - entity: sensor.delta_t
                fill_raw: last
                stroke_width: 1
                color: orange
                name: Delta T
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Water Flow
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.flow_sensor
                fill_raw: last
                curve: stepline
                stroke_width: 1
                color_threshold:
                  - value: 25
                    color: green
                  - value: 20
                    color: orange
                  - value: 15
                    color: red
                  - value: 10
                    color: purple
                  - value: 5
                    color: blue
          - type: custom:apexcharts-card
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Inverter usage Heatpump
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.inverter_usage
                name: Calculated
                fill_raw: last
                curve: stepline
                stroke_width: 1
              - entity: sensor.total_system_power
                name: Measured
                fill_raw: last
                curve: stepline
                stroke_width: 1
          - type: custom:apexcharts-card
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Heat Yield Heatpump
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.heat_yield
                fill_raw: last
                curve: stepline
                stroke_width: 1
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 2week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: Defrost Counter / Day
              show_states: true
              colorize_states: true
            series:
              - entity: counter.defrost
                type: column
                show:
                  in_brush: true
                group_by:
                  func: last
                  duration: 1d
                color_threshold:
                  - value: 0
                    color: green
                  - value: 2
                    color: lightgreen
                  - value: 4
                    color: yellow
                  - value: 6
                    color: orange
                  - value: 8
                    color: red
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Outside Temperature / Defrosts
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.r1t_outdoor_air_temp
                fill_raw: last
                stroke_width: 1
                color_threshold:
                  - value: 30
                    color: red
                  - value: 25
                    color: orange
                  - value: 20
                    color: green
                  - value: 10
                    color: lightgreen
                  - value: 5
                    color: blue
              - entity: counter.defrost
                curve: stepline
                stroke_width: 1
                color_threshold:
                  - value: 0
                    color: black
      - type: custom:apexcharts-card
        experimental:
          color_threshold: true
        graph_span: 180m
        apex_config:
          yaxis:
            min: 0
            max: 3
          chart:
            height: 250px
        header:
          show: true
          title: Water System Pressure
          show_states: true
          colorize_states: true
        series:
          - entity: sensor.water_system_pressure_b1pw
            fill_raw: last
            stroke_width: 1
            color_threshold:
              - value: 1.7
                color: '#03a034'
              - value: 1.5
                color: '#ff9900'
              - value: 1.3
                color: '#cc2900'
              - value: 1
                color: purple
      - type: entities
        entities:
          - entity: sensor.flow_sensor
            icon: mdi:water-pump
            name: Flow Sensor
          - entity: sensor.room_temperature_r1t
            icon: mdi:thermometer
            name: (R1T) Room Temperature
          - entity: sensor.dhw_tank_temperature_r5t
            icon: mdi:thermometer
            name: (R5T) DHW Tank Top Temperature
          - entity: sensor.r1t_outdoor_air_temp
            icon: mdi:thermometer
            name: R1T-Outdoor air temperature
          - entity: sensor.r2t_compressor_discharge_temp
            icon: mdi:thermometer
            name: R2T-Compressor Discharge Temp.
          - entity: sensor.r3t_compressor_suction_temp
            icon: mdi:thermometer
            name: R3T-Compressor Suction Temp.
          - entity: sensor.r4t_air_heat_exchanger_temp
            icon: mdi:thermometer
            Name: R4T-Air Heat exchanger Temp.
          - entity: sensor.r5t_air_heat_exchanger_mid_temp
            icon: mdi:thermometer
            name: R5T-Air Heat Exchanger mid Temp.
          - entity: sensor.refrigerator_liquid_temperature_r3t
            icon: mdi:thermometer
            name: (R3T) Refrigirator liquid Temp.
          - entity: sensor.leaving_water_temperature_r1t
            icon: mdi:thermometer-chevron-down
            name: (R1T) Leaving Water Temperature
          - entity: sensor.inlet_water_temperature_r4t
            icon: mdi:thermometer-chevron-up
            name: (R4T) Inlet Water Temperature
          - entity: sensor.delta_t
            icon: mdi:home-thermometer
            name: Delta T
          - entity: sensor.water_system_pressure_b1pw
            icon: mdi:gauge
            name: Water systempressure (B1PW)
          - entity: sensor.fan_speed
            icon: mdi:fan
            name: Fan Speed
          - entity: sensor.inverter_frequency_2
            icon: mdi:sine-wave
            name: Inverter Frequency output
        title: 'Sensors Heatpump:'
      - type: vertical-stack
        cards:
          - type: entities
            entities:
              - entity: sensor.dhw_heat_losses
              - entity: sensor.inverter_usage
                icon: mdi:lightning-bolt
                name: Heatpump Inverter Usage
              - entity: sensor.total_system_power
              - entity: sensor.heat_yield
                icon: mdi:heating-coil
                name: Heatpump Heat Yield
              - entity: counter.defrost
                icon: mdi:snowflake-melt
                name: Defrost Counter Today
            title: Energy data
            state_color: true
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 1week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: Heatpump kWh / Day
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.daily_kwh_heatpump
                name: Heatpump kWh / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: last
                  duration: 1d
                color_threshold:
                  - value: 0
                    color: green
                  - value: 5
                    color: lightgreen
                  - value: 10
                    color: yellow
                  - value: 15
                    color: orange
                  - value: 20
                    color: red
                  - value: 25
                    color: purple
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 1week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: Heatpump DHW Heating kWh / Day
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.daily_kwh_heatpump_dhw_heating
                name: DHW Heating kWh / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: last
                  duration: 1d
                color_threshold:
                  - value: 0
                    color: green
                  - value: 5
                    color: lightgreen
                  - value: 10
                    color: yellow
                  - value: 15
                    color: orange
                  - value: 20
                    color: red
                  - value: 25
                    color: purple
          - type: custom:apexcharts-card
            experimental:
              color_threshold: true
            graph_span: 1week
            span:
              end: day
            apex_config:
              chart:
                height: 250px
                stroke_width: 1
            header:
              show: true
              title: Heatpump Space heating kWh / Day
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.daily_kwh_heatpump_space_heating
                name: Space Heating kWh / Day
                type: column
                show:
                  in_brush: true
                group_by:
                  func: last
                  duration: 1d
                color_threshold:
                  - value: 0
                    color: green
                  - value: 5
                    color: lightgreen
                  - value: 10
                    color: yellow
                  - value: 15
                    color: orange
                  - value: 20
                    color: red
                  - value: 25
                    color: purple
          - type: custom:apexcharts-card
            chart_type: donut
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Heatpump Energy usage today
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.daily_kwh_heatpump_dhw_heating
              - entity: sensor.daily_kwh_heatpump_space_heating
              - entity: sensor.daily_kwh_heatpump_stand_by
          - type: custom:apexcharts-card
            chart_type: donut
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Heatpump Energy usage this week
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.weekly_kwh_heatpump_dhw_heating
              - entity: sensor.weekly_kwh_heatpump_space_heating
              - entity: sensor.weekly_kwh_heatpump_stand_by
          - type: custom:apexcharts-card
            chart_type: donut
            apex_config:
              chart:
                height: 250px
            header:
              show: true
              title: Heatpump Energy usage this month
              show_states: true
              colorize_states: true
            series:
              - entity: sensor.monthly_kwh_heatpump_dhw_heating
              - entity: sensor.monthly_kwh_heatpump_space_heating
              - entity: sensor.monthly_kwh_heatpump_stand_by
    type: masonry


Even een paar plaatjes van mijn dashboard (kan beter uitgelijnd worden!!)

Afbeeldingslocatie: https://tweakers.net/i/1NRXefTDYDlrGx6J1rlZBto26kw=/800x/filters:strip_exif()/f/image/eD7vOIbw5QTkM3Qa09VMUujQ.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/VZSQSqot36zeQuY6LMiIqynWMHg=/800x/filters:strip_exif()/f/image/bTFSUQmmC1gGbGAWSr6ndvMu.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/lXu2-VN3hMMUixgZsyROMEwkEZ4=/800x/filters:strip_exif()/f/image/WtDy3nBhUaW8lrSYXl5oPYAJ.png?f=fotoalbum_large

Ik hoop dat dit je op weg helpt!

Gr. Benthouse

  • Senaxx
  • Registratie: December 2010
  • Laatst online: 04-11 13:19
benthouse schreef op dinsdag 21 oktober 2025 @ 21:06:
Mijn Daikin.YAML staat in de folder van Home Assistant: /homeassistant/packages
In de Config.YAML file in de hoofdfolder /homeassistant verwijs ik naar de packages folder:

Ik hoop dat dit je op weg helpt!

Gr. Benthouse
Heel erg bedankt! Ik ga er van het weekend eens mee bezig!

  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
Hoi Benthouse, dank voor je uitgebreide scripts en informatie! Hier kan ik zeker weer mee verder!

Heb zelf nog geen aparte kwh meter waardoor ik nog niet direct de 3 fase meting en cop o.b.v. 3 fases kan realiseren, dat is iets wat in de toekomst nog wel gaat komen

Zelf ben ik in de tussentijd ook aan het knutselen geweest om een COP berekening te doen op basis van een berekend 3 fase verbruik.

Dit heb ik als volgt gemaakt:

ik gebruik een aparte templates.yaml die ik include via configuration.yaml
Om een 3 fase COP te berekenen bereken ik dus een 3 fase verbruik
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
- sensor:
  - name: "Inverter current"
    state: "{{ state_attr('sensor.althermasensors','INV primary current (A)') }}"
    unit_of_measurement: "A"
    state_class: measurement
    
  - name: "Inverter usage 3fase"
    unique_id: inverter_usage_3ph
    unit_of_measurement: "W"
    device_class: power
    state_class: measurement
    state: >
        {% set i = states('sensor.inverter_current')|float(0) %}
        {% set th = state_attr('sensor.althermasensors','Thermostat ON/OFF')|string|upper %}
        {% set pf = states('input_number.altherma_pf')|float(0.95) %}
        {% set u = 400.0 %}
        {% set sqrt3 = 1.732 %}
        {{ (sqrt3 * u * i * pf) | round(0) if th == 'ON' else 0 }}


  - name: "COPv3"
    unique_id: cop_v3_main
    unit_of_measurement: "COP"
      state_class: measurement
      # (optioneel) availability: laat sensor beschikbaar, tenzij inputs echt ontbreken
    availability: >
        {{ state_attr('sensor.althermasensors','Flow sensor (l/min)') not in [none, 'unknown', 'unavailable']
           and state_attr('sensor.althermasensors','Leaving water temp. before BUH (R1T)') not in [none]
           and state_attr('sensor.althermasensors','Inlet water temp.(R4T)') not in [none] }}
    state: >
        {% set ent   = 'sensor.althermasensors' %}
        {% set vflow = state_attr(ent,'Flow sensor (l/min)')|float(0) %}
        {% set leave = state_attr(ent,'Leaving water temp. before BUH (R1T)')|float(0) %}
        {% set inlet = state_attr(ent,'Inlet water temp.(R4T)')|float(0) %}
        {% set dT    = leave - inlet %}
        {% set mode_ok = is_state_attr(ent,'Operation Mode','Heating') %}
        {% set freeze_ok = is_state_attr(ent,'Freeze Protection','OFF') %}


        {# -- BUH check (bij R1T niet strikt nodig, maar houden we aan) -- #}
        {% set buh = state_attr(ent,'BUH Step1') %}
        {% set buh_off = (buh|string|lower) in ['off','0','false','inactive','none'] or buh in [0, false, none] %}

        {# -- Elektrisch vermogen uit jouw 3-fase sensor: W -> kW -- #}
        {% set pel_w  = states('sensor.inverter_usage_3fase')|float(0) %}
        {% set pel_kw = pel_w / 1000 %}

        {# -- Thermisch vermogen (kW) -- #}
        {% set qth_kw = 0.06 * 1.16 * vflow * dT %}

        {% if mode_ok and freeze_ok and buh_off
              and pel_kw > 0
              and vflow >= 1
              and 0 < dT < 25 %}
          {{ (qth_kw / pel_kw) | round(2) }}
        {% else %}
          0
        {% endif %}


In de Inverter usage 3fase wordt gebruik gemaakt van een PF helper die toegevoegd is aan configuration.yaml

code:
1
2
3
4
5
6
7
8
9
10
input_number:
  altherma_pf:
    name: Altherma PF
    min: 0.70
    max: 1.00
    step: 0.01
    mode: slider
    icon: mdi:sine-wave
    unit_of_measurement: ""
    initial: 0.95


Korte uitleg over het hoe wat waarom

Sensor: inverter_usage_3fase
Formule:
Afbeeldingslocatie: https://tweakers.net/i/yRTc7L2rMiIW69-xrSzdruXgGAI=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/tcyaFZK87nCHiVvXD8BCPkkp.png?f=user_large

U_LL: 400 V (nominale lijn-lijn spanning)
I: Inverter primary current (A)
PF: Power Factor (instelbaar via helper)

Waarom deze aanpak?

Standaard 3-fase vermogensformule.
PF is variabel → via helper eenvoudig te kalibreren.
Geeft 0 W als thermostaat niet ON is → voorkomt gaten in kWh-integratie.

COPv3 (Coefficient of Performance)
Sensor: copv3
Definitie:
Afbeeldingslocatie: https://tweakers.net/i/w99ZmXvD5EbOnTKxCOqGktSNFl8=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/l5gCRN1TVcHcVKibAd6S7Yy7.png?f=user_large
Thermisch vermogen (Q_th):
Afbeeldingslocatie: https://tweakers.net/i/x7MOnQFL_SfZNOMAjg8VnXJeh2A=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/0yLHEML6jCo35IPGs6xtLtbW.png?f=user_large

Flow: debiet in liter/minuut
ΔT: Leaving water temp. vóór BUH (R1T) – Inlet water temp. (R4T)

Waarom R1T?
Meet vóór BUH → pure warmtepompwarmte, geen beïnvloeding door naverwarming.
Elektrisch vermogen (P_el):
Gebruikt dezelfde bron als elders: inverter_usage_3fase (in kW).
Guardrails:

Operation Mode = Heating
Freeze Protection = OFF
BUH uit (vangnet)

PF Helper (Power Factor)
PF (cosφ) = actief vermogen (kW) ÷ schijnbaar vermogen (kVA)
Voor een 3‑fasige warmtepomp:
Afbeeldingslocatie: https://tweakers.net/i/wGujfFq9cWZaCaXDPGaqM_TjQNo=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/r41TQZlDMJA5H1PZv6U6gvZt.png?f=user_large
Helper: altherma_pf

Waarom een helper?

PF varieert per belasting → via slider eenvoudig te kalibreren.
Geen codewijziging nodig bij aanpassing.

Bereik:
0.70 – 1.00 (default 0.95)
Typisch: 0.90–0.98 bij invertercompressoren.


Eerlijkheidshalve moet ik er bij vermelden dat deze kennis niet volledig in mijn hoofd zat, heb hiervoor Ai gebruikt. Om die reden ben ik wel heel benieuwd naar hoe anderen hier naar kijken

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
[quote]doomoo schreef op donderdag 23 oktober 2025 @ 11:19:
[...]


Hallo,

wat is de reden dat je de Powerfacor (cos phi) zou willen weten? De inverter heeft een cos.phi van rond de 1, en is dus niet van toepassing. (Ps/Pw is bijna gelijk).

Daarnaast is de stroom van de inverter niet echt nauwkeurig. Als ik in mijn grafiek kijk tussen berekende verbruik op basis van de Inverterstroom uit de WP en de stroom die aan de ingaande kant uit de energiemeter komt dan zit daar een behoorlijk verschil in. M.a.w. de inverterstroom uit de WP is niet zo nauwkeurig en meer indicatief.
Ik ga de COP berekening ook binnenkort aanpassen (zal naar beneden gaan) op basis van werkelijk gemeten verbruik.

Maar goed ieder zijn ding!
Ik vind zowizo je benadering mooi en je neemt keurig alle variabelen mee in de berekeningen zie ik :-).

Ook ik heb in mijn scripts een verschil aangebracht in verbruik WP gedurende Space heating (ruimteverwarming) en verwarming boilervat (Domestic Hotwater Heating) en stand-by (dus geen warmtevraag).

[ Voor 10% gewijzigd door benthouse op 23-10-2025 16:56 ]


  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
benthouse schreef op donderdag 23 oktober 2025 @ 16:53:
[quote]doomoo schreef op donderdag 23 oktober 2025 @ 11:19:
[...]


Hallo,

wat is de reden dat je de Powerfacor (cos phi) zou willen weten? De inverter heeft een cos.phi van rond de 1, en is dus niet van toepassing. (Ps/Pw is bijna gelijk).

Daarnaast is de stroom van de inverter niet echt nauwkeurig. Als ik in mijn grafiek kijk tussen berekende verbruik op basis van de Inverterstroom uit de WP en de stroom die aan de ingaande kant uit de energiemeter komt dan zit daar een behoorlijk verschil in. M.a.w. de inverterstroom uit de WP is niet zo nauwkeurig en meer indicatief.
Ik ga de COP berekening ook binnenkort aanpassen (zal naar beneden gaan) op basis van werkelijk gemeten verbruik.

Maar goed ieder zijn ding!
Ik vind zowizo je benadering mooi en je neemt keurig alle variabelen mee in de berekeningen zie ik :-).

Ook ik heb in mijn scripts een verschil aangebracht in verbruik WP gedurende Space heating (ruimteverwarming) en verwarming boilervat (Domestic Hotwater Heating) en stand-by (dus geen warmtevraag).
Waarom pf is tweeledig. Voornaamste reden is dat Daikin zelf aangeeft dat pf een factor is die ergens tussen de 0,93 en 0,98 ligt
https://www.daikinuae.com...ter%20Leaflet%20Final.pdf

Daarnaast heb ik dus alleen een geschat/berekend verbruik door het missen van een energiemeter.

Het kunnen instellen van de pf brengt mijn schatting hopelijk iets dichter bij de realiteit.

Een kleine PF-aanpassing (0.95 → 0.98) verlaagt COP met ~3 %.

Het onderscheid tussen ruimte- en boiler verwarming ga ik ook nog maken, dat vind ik inderdaad een nuttige differentiatie!

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • benthouse
  • Registratie: November 2009
  • Laatst online: 18:00
Hieronder even een verschil tussen berekend verbruik op basis van de inverterstroom en het werkelijk gemeten verbruik. Oranje = berekend inverterverbruik (gemeten fasespanning x inverterstroom x Wortel 3), blauw is werkelijk gemeten verbruik uit energiemeter voor de WP.

Inverter ligt een stuk lager; je ziet het al mede door de stand-by energie, die is in rust 104W (kan ook veel lager zijn, vaak rond de 18W) terwijl de inverter 0W aangeeft. Ook in bedrijf (dus inverter actief) ligt het werkelijke gemeten verbruik (veel) hoger dan de inverter stroom x de fasespanning (die varieert ook!!) x cos phi (voor enkelfasige systemen of inverterstroom x lijnspanning x cos.phi x Wortel 3 (voor 3-fase systemen; ook daar varieert de lijnspanning en kan je hem niet gelijkstellen op 400V).

Afbeeldingslocatie: https://tweakers.net/i/7sQrLgXSIpQzuPmkvPtzTSZdv88=/800x/filters:strip_exif()/f/image/DCMnxRhOHuyvcLIRpwKDwQEI.png?f=fotoalbum_large

Afbeeldingslocatie: https://tweakers.net/i/UxuUQ631y4k_qowQkw_r-o_Uni8=/fit-in/4000x4000/filters:no_upscale():strip_exif()/f/image/sxNkJLtCISzsVer5pcVrwMni.png?f=user_large

[ Voor 36% gewijzigd door benthouse op 24-10-2025 12:19 ]


  • doomoo
  • Registratie: Oktober 2018
  • Laatst online: 17:59
benthouse schreef op vrijdag 24 oktober 2025 @ 12:08:
Hieronder even een verschil tussen berekend verbruik op basis van de inverterstroom en het werkelijk gemeten verbruik. Oranje = berekend inverterverbruik (gemeten fasespanning x inverterstroom x Wortel 3), blauw is werkelijk gemeten verbruik uit energiemeter voor de WP.

Inverter ligt een stuk lager; je ziet het al mede door de stand-by energie, die is in rust 104W (kan ook veel lager zijn, vaak rond de 18W) terwijl de inverter 0W aangeeft. Ook in bedrijf (dus inverter actief) ligt het werkelijke gemeten verbruik (veel) hoger dan de inverter stroom x de fasespanning (die varieert ook!!) x cos phi (voor enkelfasige systemen of inverterstroom x lijnspanning x cos.phi x Wortel 3 (voor 3-fase systemen; ook daar varieert de lijnspanning en kan je hem niet gelijkstellen op 400V).

[Afbeelding]

[Afbeelding]
Dank voor deze uitgebreide reactie en voor de vergelijking. Dat maakt een hoop duidelijk, die paar procent PF verschil vallen in het niet bij de afwijkingen van de inverter usage en de standby gaten. De conclusie is wel duidelijk, een KW meter is noodzakelijk om echt iets zinnigs over het verbruik van de WP te zeggen.

WarmtePomp Daikin EBLA09DA3W1 || Boiler: Daikin EKHWS300D3V3 || Thermostaat: Daikin BRC1HHDW || Pelletkachel: Nordic Fire Ilvar 9KW || Zonnepanelen: 21x a 7,7 kwP


  • Senaxx
  • Registratie: December 2010
  • Laatst online: 04-11 13:19
Ik dacht om weer eens van scratch te beginnen met het flashen van mijn M5 StickC Plus2, alleen het lijkt er op dat die niet meer te builden is. Bij het builden krijg ik de error:

Afbeeldingslocatie: https://tweakers.net/i/tv9A6tFuHKQj0s6lB_r-2XHcMN8=/800x/filters:strip_exif()/f/image/h5hqVLqUK8Gj6GTtvUNMptP6.png?f=fotoalbum_large

Na wat onderzoek kwam ik bij deze tweet uit waarop het lijkt dat de M5 stick C Plus 2 repo depricated is en dat er nu een nieuwe M5 unified library is.

Iemand dit al gedaan hier?

Edit: Voor mij heeft dit geholpen: https://github.com/raomin/ESPAltherma/issues/533

[ Voor 5% gewijzigd door Senaxx op 02-11-2025 16:54 ]


  • Thieske2478
  • Registratie: Januari 2012
  • Laatst online: 00:30
Weet iemand wellicht of mijn Daikin Altherma 3 R goed loopt of juist aan het pendelen is.
Afbeeldingslocatie: https://tweakers.net/i/kaxyF9yC79OB11PXLJ3sZ6Kl_mc=/800x/filters:strip_exif()/f/image/LXXFtmo6UHozdjV0XUYjKjeB.png?f=fotoalbum_large. Wel mooie app van emoncms. Heb voor de stroommeting de Homewizard energiemeter in de meterkast zitten.

  • Tanuki
  • Registratie: Januari 2005
  • Niet online
Ik heb een hele tijd geleden eens ESPAltherma willen installeren op een ESP32-wroom32 (of zoiets). Dat is toen helemaal niet gelukt. Ook niet eens foutmeldingen of zo tijdens het compilen/flashen. De ESP kwam ook gewoon online. Maar wel weinig respons van de warmtepomp binnenunit(?), er stond iets van "Connecting to unit ...... Failed". Ik weet de exacte foutmelding niet meer.

Ik ga het nu eens proberen met een "ESP32-C3 Super Mini". Misschien wat meer geluk deze keer.

Maar misschien heb ik ook het verkeerde model gekozen o.i.d.? Zijn er mensen die ervaring hebben met deze wroom32 ESP en/of die ervaring hebben met ESPAltherma in combinatie met de ERGA08EVH7 + EHBX08E6V?
Misschien heb ik gewoonweg een verkeerde instelling gedaan ergens.

Ik ga er in ieder geval vandaag mee aan de slag. Het zal niet heel vlot gaan allemaal, met een drukke peuter erbij. :p Maar misschien heeft iemand handige input. En anders kom ik vanzelf in de lucht met de foutmeldingen weer. :p

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?


  • Goofman2
  • Registratie: Juni 2022
  • Laatst online: 21:07
Tanuki schreef op dinsdag 4 november 2025 @ 15:47:
Ik heb een hele tijd geleden eens ESPAltherma willen installeren op een ESP32-wroom32 (of zoiets). Dat is toen helemaal niet gelukt. Ook niet eens foutmeldingen of zo tijdens het compilen/flashen. De ESP kwam ook gewoon online. Maar wel weinig respons van de warmtepomp binnenunit(?), er stond iets van "Connecting to unit ...... Failed". Ik weet de exacte foutmelding niet meer.

Ik ga het nu eens proberen met een "ESP32-C3 Super Mini". Misschien wat meer geluk deze keer.

Maar misschien heb ik ook het verkeerde model gekozen o.i.d.? Zijn er mensen die ervaring hebben met deze wroom32 ESP en/of die ervaring hebben met ESPAltherma in combinatie met de ERGA08EVH7 + EHBX08E6V?
Misschien heb ik gewoonweg een verkeerde instelling gedaan ergens.

Ik ga er in ieder geval vandaag mee aan de slag. Het zal niet heel vlot gaan allemaal, met een drukke peuter erbij. :p Maar misschien heeft iemand handige input. En anders kom ik vanzelf in de lucht met de foutmeldingen weer. :p
Ik gebruik sinds 3 jaar Esp32-wroom32 zonder enige problemen
Esp32-c3 heeft bij mij voorerg veel packet-loss bij wifi gezorgd. is bekend dat de Wifi ontvangst bij deze modules minder is.

  • Tanuki
  • Registratie: Januari 2005
  • Niet online
@Goofman2 Dan ga ik sowieso wroom32 nog een keer een kans geven... Heb jij ook ERGA08EVH7 + EHBX08E6V of gelijkaardig? Volgens mij is alleen de binnenunit van belang?

PV: Growatt MOD5000TL3-XH + 5720wp, WPB: Atlantic Explorer v4 270LC, L/L: MHI SCM 125ZM-S + SRK 50ZS-W + 2x SRK 25ZS-W + SRK 20ZS-W Modbus kWh meter nodig?

Pagina: 1 ... 10 11 Laatste