diff --git a/docs/Modbus-Entity-Registers.md b/docs/Modbus-Entity-Registers.md index b694353c6..b6f9b5bd5 100644 --- a/docs/Modbus-Entity-Registers.md +++ b/docs/Modbus-Entity-Registers.md @@ -3563,6 +3563,12 @@ | meter | meter | uint24 (>=0<=167772) | kWh | false | DHW | 3 | 2 | 1/100 | | heatingstarts | heating control starts | uint24 (>=0<=16777213) | | false | DEVICE_DATA | 42 | 2 | 1 | | startshp | starts hp | uint24 (>=0<=16777213) | | false | DHW | 5 | 2 | 1 | +| fuelheat | fuel consuption heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 44 | 2 | 1/10 | +| fueldhw | fuel consuption | uint32 (>=0<=1677721) | kWh | false | DHW | 7 | 2 | 1/10 | +| elheat | el. consuption heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 46 | 2 | 1/10 | +| eldhw | el consuption | uint32 (>=0<=1677721) | kWh | false | DHW | 9 | 2 | 1/10 | +| elgenheat | el. generation heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 48 | 2 | 1/10 | +| elgendhw | el generation | uint32 (>=0<=1677721) | kWh | false | DHW | 11 | 2 | 1/10 | ### Hybrid Manager HM200 | shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor | @@ -3608,6 +3614,12 @@ | meter | meter | uint24 (>=0<=167772) | kWh | false | DHW | 3 | 2 | 1/100 | | heatingstarts | heating control starts | uint24 (>=0<=16777213) | | false | DEVICE_DATA | 42 | 2 | 1 | | startshp | starts hp | uint24 (>=0<=16777213) | | false | DHW | 5 | 2 | 1 | +| fuelheat | fuel consuption heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 44 | 2 | 1/10 | +| fueldhw | fuel consuption | uint32 (>=0<=1677721) | kWh | false | DHW | 7 | 2 | 1/10 | +| elheat | el. consuption heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 46 | 2 | 1/10 | +| eldhw | el consuption | uint32 (>=0<=1677721) | kWh | false | DHW | 9 | 2 | 1/10 | +| elgenheat | el. generation heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 48 | 2 | 1/10 | +| elgendhw | el generation | uint32 (>=0<=1677721) | kWh | false | DHW | 11 | 2 | 1/10 | ## Devices of type *mixer* ### HM210 diff --git a/docs/dump_entities.csv b/docs/dump_entities.csv index 9a68b69ed..9e0983fbe 100644 --- a/docs/dump_entities.csv +++ b/docs/dump_entities.csv @@ -5137,6 +5137,12 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/ "HP Module",heatpump,252,meter,meter,uint24 (>=0<=167772),kWh,false,sensor.heatpump_dhw_meter,sensor.heatpump_dhw_meter,9,9,1/100,3,2 "HP Module",heatpump,252,heatingstarts,heating control starts,uint24 (>=0<=16777213), ,false,sensor.heatpump_heating_control_starts,sensor.heatpump_heatingstarts,9,0,1,42,2 "HP Module",heatpump,252,startshp,starts hp,uint24 (>=0<=16777213), ,false,sensor.heatpump_dhw_starts_hp,sensor.heatpump_dhw_startshp,9,9,1,5,2 +"HP Module",heatpump,252,fuelheat,fuel consuption heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_fuel_consuption_heating,sensor.heatpump_fuelheat,9,0,1/10,44,2 +"HP Module",heatpump,252,fueldhw,fuel consuption,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_fuel_consuption,sensor.heatpump_dhw_fueldhw,9,9,1/10,7,2 +"HP Module",heatpump,252,elheat,el. consuption heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_el._consuption_heating,sensor.heatpump_elheat,9,0,1/10,46,2 +"HP Module",heatpump,252,eldhw,el consuption,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_el_consuption,sensor.heatpump_dhw_eldhw,9,9,1/10,9,2 +"HP Module",heatpump,252,elgenheat,el. generation heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_el._generation_heating,sensor.heatpump_elgenheat,9,0,1/10,48,2 +"HP Module",heatpump,252,elgendhw,el generation,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_el_generation,sensor.heatpump_dhw_elgendhw,9,9,1/10,11,2 "Hybrid Manager HM200",heatpump,248,airhumidity,relative air humidity,uint8 (>=0<=100),%,false,sensor.heatpump_relative_air_humidity,sensor.heatpump_airhumidity,9,0,1,0,1 "Hybrid Manager HM200",heatpump,248,dewtemperature,dew point temperature,uint8 (>=0<=254),C,false,sensor.heatpump_dew_point_temperature,sensor.heatpump_dewtemperature,9,0,1,1,1 "Hybrid Manager HM200",heatpump,248,curflowtemp,current flow temperature,int16 (>=-3199<=3199),C,false,sensor.heatpump_current_flow_temperature,sensor.heatpump_curflowtemp,9,0,1/10,2,1 @@ -5178,6 +5184,12 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/ "Hybrid Manager HM200",heatpump,248,meter,meter,uint24 (>=0<=167772),kWh,false,sensor.heatpump_dhw_meter,sensor.heatpump_dhw_meter,9,9,1/100,3,2 "Hybrid Manager HM200",heatpump,248,heatingstarts,heating control starts,uint24 (>=0<=16777213), ,false,sensor.heatpump_heating_control_starts,sensor.heatpump_heatingstarts,9,0,1,42,2 "Hybrid Manager HM200",heatpump,248,startshp,starts hp,uint24 (>=0<=16777213), ,false,sensor.heatpump_dhw_starts_hp,sensor.heatpump_dhw_startshp,9,9,1,5,2 +"Hybrid Manager HM200",heatpump,248,fuelheat,fuel consuption heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_fuel_consuption_heating,sensor.heatpump_fuelheat,9,0,1/10,44,2 +"Hybrid Manager HM200",heatpump,248,fueldhw,fuel consuption,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_fuel_consuption,sensor.heatpump_dhw_fueldhw,9,9,1/10,7,2 +"Hybrid Manager HM200",heatpump,248,elheat,el. consuption heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_el._consuption_heating,sensor.heatpump_elheat,9,0,1/10,46,2 +"Hybrid Manager HM200",heatpump,248,eldhw,el consuption,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_el_consuption,sensor.heatpump_dhw_eldhw,9,9,1/10,9,2 +"Hybrid Manager HM200",heatpump,248,elgenheat,el. generation heating,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_el._generation_heating,sensor.heatpump_elgenheat,9,0,1/10,48,2 +"Hybrid Manager HM200",heatpump,248,elgendhw,el generation,uint32 (>=0<=1677721),kWh,false,sensor.heatpump_dhw_el_generation,sensor.heatpump_dhw_elgendhw,9,9,1/10,11,2 "WM10",switch,71,activated,activated,boolean, ,false,binary_sensor.switch_activated,binary_sensor.switch_activated,11,0,1,0,1 "WM10",switch,71,flowtemphc,flow temperature (TC1),uint16 (>=0<=3199),C,false,sensor.switch_flow_temperature_(TC1),sensor.switch_flowtemphc,11,0,1/10,1,1 "WM10",switch,71,status,status,int8 (>=-126<=126), ,false,sensor.switch_status,sensor.switch_status,11,0,1,2,1 diff --git a/docs/dump_telegrams.csv b/docs/dump_telegrams.csv index 506144656..dad39a148 100644 --- a/docs/dump_telegrams.csv +++ b/docs/dump_telegrams.csv @@ -13,7 +13,7 @@ telegram_type_id,name,is_fetched 0x19,UBAMonitorSlow, 0x1A,UBASetPoints, 0x1C,UBAMaintenanceStatus, -0x1E,HydrTemp, +0x1E,WM10TempMessage, 0x23,JunkersSetMixer,fetched 0x26,UBASettingsWW,fetched 0x28,WeatherComp,fetched @@ -29,7 +29,7 @@ telegram_type_id,name,is_fetched 0x3B,Energy, 0x3D,RC35Set, 0x3E,RC35Monitor, -0x3F,RC35Timer, +0x3F,RC30Timer, 0x40,RC30Temp, 0x41,RC30Monitor, 0x42,RC35Timer2, @@ -75,6 +75,8 @@ telegram_type_id,name,is_fetched 0x0104,ISM2StatusMessage, 0x010C,IPMStatusMessage, 0x011E,IPMTempMessage, +0x012E,HPEnergy1, +0x013B,HPEnergy2, 0x0165,JunkersSet, 0x0166,JunkersSet, 0x0167,JunkersSet, @@ -105,10 +107,10 @@ telegram_type_id,name,is_fetched 0x02A0,RC300Curves, 0x02A1,RC300Curves, 0x02A2,RC300Curves, -0x02A5,CRFMonitor, +0x02A5,RC300Monitor, 0x02A6,RC300Monitor, -0x02A7,RC300Monitor, -0x02A8,CRFMonitor, +0x02A7,CRFMonitor, +0x02A8,RC300Monitor, 0x02A9,RC300Monitor, 0x02AA,RC300Monitor, 0x02AB,RC300Monitor, diff --git a/src/modbus_entity_parameters.hpp b/src/modbus_entity_parameters.hpp index 904847f5d..f51b117bf 100644 --- a/src/modbus_entity_parameters.hpp +++ b/src/modbus_entity_parameters.hpp @@ -500,10 +500,16 @@ const std::initializer_list Modbus::modbus_register_ma REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterEHeat), 38, 2), // metereheat REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterHeat), 40, 2), // meterheat REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatingStarts), 42, 2), // heatingstarts + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(fuelHeat), 44, 2), // fuelheat + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(elHeat), 46, 2), // elheat + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(elGenHeat), 48, 2), // elgenheat REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(hybridDHW), 0, 1), // hybriddhw REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(nrgWw), 1, 2), // nrg REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(meterWw), 3, 2), // meter REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(wwStartsHp), 5, 2), // startshp + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(fuelDhw), 7, 2), // fueldhw + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(elDhw), 9, 2), // eldhw + REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(elGenDhw), 11, 2), // elgendhw REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(activated), 0, 1), // activated REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(flowTempHc), 1, 1), // flowtemphc REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(status), 2, 1), // status