Gammal tråd, men jag tänkte att jag delar med mig vad jag har hittat, eftersom det inte verkar finnas någon "rådata" vad CTC pumparna kommunicerar med varandra.
Men detta har jag börjat göra för att få in min CTC Ecopart 400 serie till Home Assistant. Pumpen står helt standalone och är kopplad till mitt befintliga system.
Från pumpen satt en färdig Modbus LIYCY-kabel.
Kopplade grön till RX- och Vit till RX+.
9600 Baudrate
Jämn paritet
8 databitar
1 stoppbit
(ingen paritet = 2 stoppbitar tydligen)
Slavadress 1
Bas 0
Pumpen kan svara på MAX 100 adresser åt gången.
Kopplade in modbusen till en Schneider ETG100 och ställde in IP på den.
Sedan var det bara att köra på.
Har hittat följande adresser: (tänk på bas 0 när det skall in i Home Assistant)
2 Brine in temp
3 Brine out temp
4 Returtemp
6 framledning
209 Setpoint värme
210 Differenstemp (dödzon)
I Configuration.yaml:
modbus:
- name: CTC
type: tcp
host: "Ditt IP till modbusgateway"
port: 502
climates:
- name: CTC Setpoint
temperature_unit: °C
slave: 1
address: 208
target_temp_register: 208
scale: 0.1
temp_step: 1
max_temp: 54
min_temp: 15
count: 1
sensors:
- name: "Framledning"
unit_of_measurement: °C
address: 5
scale: 0.1
slave: 1
- name: "Returledning"
unit_of_measurement: °C
address: 3
scale: 0.1
slave: 1
- name: "Brine ut"
unit_of_measurement: °C
address: 1
scale: 0.1
slave: 1
- name: "Brine in"
unit_of_measurement: °C
address: 2
scale: 0.1
slave: 1
- name: "Difftemp"
unit_of_measurement: °C
address: 209
scale: 0.1
slave: 1
scan_interval: 10
Fyll gärna på med mer adresser om det är någon som hittar.
Jag uppdaterar med mer adresser när jag hunnit hitta fler.
Jag kör CTC EcoPart 400 utan CTC-styrning (EcoLogic eller liknande), så enda möjligheten att köra modbus var att koppla in sig direkt på LIYCY-kabeln med RS485 och esphome.
Kom igång med temperaturerna tack vare Crosskungen, och har nu luskat ut några fler ganska sannolika adresser.
I manualen för CTC BasicDisplay (
https://ctc.se/file-download/90d58490c4af89c41d5e56ee6be7934e.pdf) står en massa värden man kan knappa fram i menyerna, och dessa tycks ofta matcha mot ett modbus-register, dessutom ofta listat i samma ordning som i BasicDisplay-manualen.
Så här kommer mitt bidrag av modbus-adresser som CTC:s displayer använder för att prata direkt med värmepumpen:
Detta är ESPHome-kod, så det kan läsas som att modbus-adressen mappar mot menvalsnumret direkt efter #, och det är samma nummer som står i BasicDisplay-manualen
packages:
1: !include { file: temp.yaml, vars: { addr: 1, id: vp_brine_out_temp} } # 106
2: !include { file: temp.yaml, vars: { addr: 2, id: vp_brine_in_temp} } # 107
3: !include { file: temp.yaml, vars: { addr: 3, id: vp_return_temp} } # 108
4: !include { file: hex.yaml, vars: { addr: 4, id: vp_modbus_4 } } # ?
5: !include { file: temp.yaml, vars: { addr: 5, id: vp_flow_temp} } # 109
6: !include { file: temp.yaml, vars: { addr: 6, id: vp_discharge_temp } } # 103 Discharge Uppmätt hetgastemperatur visas här.
7: !include { file: temp.yaml, vars: { addr: 7, id: vp_suction_temp } } # 110 Suggastemperatur Uppmätt Suggastemperatur visas här.
8: !include { file: number.yaml, vars: { addr: 8, id: vp_high_pressure } } # 111 Högtryck/lågtryck? 111 Högtryck Uppmätt tryck i bar på högtryckssidan visas här
9: !include { file: number.yaml, vars: { addr: 9, id: vp_low_pressure } } # 112 Högtryck/lågtryck? 112 Lågtryck Uppmätt tryck i bar på lågtryckssidan visas här.
10: !include { file: temp.yaml, vars: { addr: 10, id: vp_evaporation_temp} } # 113 förångning? 113 Förångning ºC Beräknad förångningstemperatur visas här. EA + EP
11: !include { file: temp.yaml, vars: { addr: 11, id: vp_condensing_temp} } # 114 kondensering? 114 Kondensering ºC Beräknad kondenseringstemperatur visas här.
12: !include { file: temp.yaml, vars: { addr: 12, id: vp_suction_superheat_temp} } # 115 överhettning??? 115 Överhettning SH Överhettningen visas här.
13: !include { file: number.yaml, vars: { addr: 13, id: vp_expansion_valve } } # 116 EV % Expansionsventilens öppning visas här i %
14: !include { file: number.yaml, vars: { addr: 14, id: vp_heat_capacity} } # 117 fel faktor, offset 15,7: Kapacitet KW Värmemängdsmätning visas här
15: !include { file: number.yaml, vars: { addr: 15, id: vp_soft_Start_current } } # 118 Current (from soft starter) is shown here
16: !include { file: number.yaml, vars: { addr: 16, id: vp_defrost_timer } } # 119 defrost timer
18: !include { file: number.yaml, vars: { addr: 18, id: vp_compressor_delay } } # 120 compressor delay
19: !include { file: number.yaml, vars: { addr: 19, id: vp_charge_pump } } # 121 charge pump
20: !include { file: number.yaml,vars: { addr: 20, id: vp_brine_pump } } # 122 brine pump
21: !include { file: temp.yaml, vars: { addr: 21, id: vp_discharge_superheat_temp1 } } # 123
22: !include { file: temp.yaml, vars: { addr: 22, id: vp_max_condensing_envelope } } # 124 Max Kond. K Hur långt ifrån maxkondensing, i kuvertet
23: !include { file: number.yaml, vars: { addr: 23, id: vp_outside_envelope_countdown } } #125 Nedräkning s Nedräkning innan kompressorstopp, för utanför kuvertet.
24: !include { file: number.yaml, vars: { addr: 24, id: vp_evd_Status } } # 126 EVD Status
25: !include { file: number.yaml, vars: { addr: 25, id: vp_compressor_status } } # 127 VP Status
31: !include { file: temp.yaml, vars: { addr: 31, id: vp_modbus_31 } }
32: !include { file: hex.yaml,vars: { addr: 32, id: vp_modbus_32 } }
33: !include { file: hex.yaml, vars: { addr: 33, id: vp_modbus_33 } }
34: !include { file: hex.yaml, vars: { addr: 34, id: vp_modbus_34 } }
35: !include { file: hex.yaml, vars: { addr: 35, id: vp_modbus_35 } }
42: !include { file: hex.yaml, vars: { addr: 42, id: vp_modbus_42 } }