mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-08 00:39:50 +03:00
Merge pull request #202 from kstaniek:MM100
Added pump modulation and valve status
This commit is contained in:
@@ -682,8 +682,10 @@ void showInfo() {
|
||||
|
||||
for (uint8_t hc_num = 1; hc_num <= EMS_THERMOSTAT_MAXHC; hc_num++) {
|
||||
if (EMS_Mixing.hc[hc_num - 1].active) {
|
||||
myDebug_P(PSTR(" Mixing Circuit %d"), hc_num);
|
||||
myDebug_P(PSTR(" Mixing Circuit %d"), hc_num);
|
||||
_renderUShortValue(" Current flow temperature", "C", EMS_Mixing.hc[hc_num - 1].flowTemp);
|
||||
_renderIntValue(" Current pump modulation", "%", EMS_Mixing.hc[hc_num - 1].pumpMod);
|
||||
_renderIntValue(" Current valve status", "%", EMS_Mixing.hc[hc_num - 1].valveStatus);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
16
src/ems.cpp
16
src/ems.cpp
@@ -278,11 +278,13 @@ void ems_init() {
|
||||
EMS_Mixing.detected = false;
|
||||
// init all mixing modules
|
||||
for (uint8_t i = 0; i < EMS_THERMOSTAT_MAXHC; i++) {
|
||||
EMS_Mixing.hc[i].hc = i + 1;
|
||||
EMS_Mixing.hc[i].flowTemp = EMS_VALUE_SHORT_NOTSET;
|
||||
EMS_Mixing.hc[i].device_id = EMS_ID_NONE;
|
||||
EMS_Mixing.hc[i].model_id = EMS_MODEL_NONE;
|
||||
EMS_Mixing.hc[i].product_id = EMS_ID_NONE;
|
||||
EMS_Mixing.hc[i].hc = i + 1;
|
||||
EMS_Mixing.hc[i].flowTemp = EMS_VALUE_SHORT_NOTSET;
|
||||
EMS_Mixing.hc[i].pumpMod = EMS_VALUE_INT_NOTSET;
|
||||
EMS_Mixing.hc[i].valveStatus = EMS_VALUE_INT_NOTSET;
|
||||
EMS_Mixing.hc[i].device_id = EMS_ID_NONE;
|
||||
EMS_Mixing.hc[i].model_id = EMS_MODEL_NONE;
|
||||
EMS_Mixing.hc[i].product_id = EMS_ID_NONE;
|
||||
}
|
||||
|
||||
// UBAParameterWW
|
||||
@@ -1496,7 +1498,9 @@ void _process_MMPLUSStatusMessage(_EMS_RxTelegram * EMS_RxTelegram) {
|
||||
|
||||
if (EMS_RxTelegram->data_length == 1) {
|
||||
} else if (EMS_RxTelegram->data_length > 8) {
|
||||
EMS_Mixing.hc[hc].flowTemp = _toShort(EMS_OFFSET_MMPLUSStatusMessage_flow_temp);
|
||||
EMS_Mixing.hc[hc].flowTemp = _toShort(EMS_OFFSET_MMPLUSStatusMessage_flow_temp);
|
||||
EMS_Mixing.hc[hc].pumpMod = _toByte(EMS_OFFSET_MMPLUSStatusMessage_pump_mod);
|
||||
EMS_Mixing.hc[hc].valveStatus = _toByte(EMS_OFFSET_MMPLUSStatusMessage_valve_status);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -381,6 +381,8 @@ typedef struct {
|
||||
bool active; // true if there is data for this HC
|
||||
|
||||
uint16_t flowTemp;
|
||||
uint8_t pumpMod;
|
||||
uint8_t valveStatus;
|
||||
} _EMS_Mixing_HC;
|
||||
|
||||
// Mixer data
|
||||
|
||||
@@ -145,11 +145,13 @@
|
||||
#define EMS_OFFSET_JunkersStatusMessage_curr 4 // current temp
|
||||
|
||||
// MM100 (EMS Plus)
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC1 0x01D7 // mixer status HC1
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC2 0x01D8 // mixer status HC2
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC3 0x01D9 // mixer status HC3
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC4 0x01DA // mixer status HC4
|
||||
#define EMS_OFFSET_MMPLUSStatusMessage_flow_temp 3 // flow temperature
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC1 0x01D7 // mixer status HC1
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC2 0x01D8 // mixer status HC2
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC3 0x01D9 // mixer status HC3
|
||||
#define EMS_TYPE_MMPLUSStatusMessage_HC4 0x01DA // mixer status HC4
|
||||
#define EMS_OFFSET_MMPLUSStatusMessage_flow_temp 3 // flow temperature
|
||||
#define EMS_OFFSET_MMPLUSStatusMessage_pump_mod 5 // pump modulation
|
||||
#define EMS_OFFSET_MMPLUSStatusMessage_valve_status 2 // valve in percent
|
||||
|
||||
|
||||
// Known EMS devices
|
||||
|
||||
Reference in New Issue
Block a user