MM10 merge from MichaelDvP

This commit is contained in:
Paul
2019-12-30 15:53:13 +01:00
parent cb35277b07
commit 7a1b1603cd
5 changed files with 15 additions and 15 deletions

View File

@@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added ### Added
- Solar Module SM200 support - Solar Module SM200 support
- `set master_thermostat <product id>` to choose with thermostat is master when there are multiple on the bus - `set master_thermostat <product id>` to choose with thermostat is master when there are multiple on the bus
- MM10 Mixer support (thanks @MichaelDvP)
### Fixed ### Fixed
- set boiler warm water temp on Junkers/Bosch HT3 - set boiler warm water temp on Junkers/Bosch HT3

View File

@@ -478,12 +478,11 @@ void showInfo() {
if (EMS_Mixing.hc[hc_num - 1].active) { 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); _renderUShortValue(" Current flow temperature", "C", EMS_Mixing.hc[hc_num - 1].flowTemp);
if (EMS_Mixing.hc[hc_num - 1].flowSetTemp != EMS_VALUE_INT_NOTSET) if (EMS_Mixing.hc[hc_num - 1].flowSetTemp != EMS_VALUE_INT_NOTSET)
_renderIntValue(" Setpoint flow temperature", "C", EMS_Mixing.hc[hc_num - 1].flowSetTemp); _renderIntValue(" Setpoint flow temperature", "C", EMS_Mixing.hc[hc_num - 1].flowSetTemp);
_renderIntValue(" Current pump modulation", "%", EMS_Mixing.hc[hc_num - 1].pumpMod); _renderIntValue(" Current pump modulation", "%", EMS_Mixing.hc[hc_num - 1].pumpMod);
if (EMS_Mixing.hc[hc_num - 1].valveStatus != EMS_VALUE_INT_NOTSET) if (EMS_Mixing.hc[hc_num - 1].valveStatus != EMS_VALUE_INT_NOTSET)
_renderIntValue(" Current valve status", "", EMS_Mixing.hc[hc_num - 1].valveStatus); _renderIntValue(" Current valve status", "", EMS_Mixing.hc[hc_num - 1].valveStatus);
} }
} }
} }
@@ -597,7 +596,7 @@ void publishEMSValues(bool force) {
rootBoiler["sysPress"] = (float)EMS_Boiler.sysPress / 10; rootBoiler["sysPress"] = (float)EMS_Boiler.sysPress / 10;
if (EMS_Boiler.boilTemp != EMS_VALUE_USHORT_NOTSET) if (EMS_Boiler.boilTemp != EMS_VALUE_USHORT_NOTSET)
rootBoiler["boilTemp"] = (float)EMS_Boiler.boilTemp / 10; rootBoiler["boilTemp"] = (float)EMS_Boiler.boilTemp / 10;
if (EMS_Boiler.exhaustTemp != EMS_VALUE_USHORT_NOTSET) if (EMS_Boiler.exhaustTemp != EMS_VALUE_USHORT_NOTSET)
rootBoiler["exhaustTemp"] = (float)EMS_Boiler.exhaustTemp / 10; rootBoiler["exhaustTemp"] = (float)EMS_Boiler.exhaustTemp / 10;
if (EMS_Boiler.wWActivated != EMS_VALUE_BOOL_NOTSET) if (EMS_Boiler.wWActivated != EMS_VALUE_BOOL_NOTSET)
rootBoiler["wWActivated"] = _bool_to_char(s, EMS_Boiler.wWActivated); rootBoiler["wWActivated"] = _bool_to_char(s, EMS_Boiler.wWActivated);

View File

@@ -130,11 +130,11 @@ void ems_init() {
} }
// UBAParameterWW // UBAParameterWW
EMS_Boiler.wWActivated = EMS_VALUE_BOOL_NOTSET; // Warm Water activated EMS_Boiler.wWActivated = EMS_VALUE_BOOL_NOTSET; // Warm Water activated
EMS_Boiler.wWSelTemp = EMS_VALUE_INT_NOTSET; // Warm Water selected temperature EMS_Boiler.wWSelTemp = EMS_VALUE_INT_NOTSET; // Warm Water selected temperature
EMS_Boiler.wWCircPump = EMS_VALUE_BOOL_NOTSET; // Warm Water circulation pump available EMS_Boiler.wWCircPump = EMS_VALUE_BOOL_NOTSET; // Warm Water circulation pump available
EMS_Boiler.wWDesinfectTemp = EMS_VALUE_INT_NOTSET; // Warm Water desinfection temperature to prevent infection EMS_Boiler.wWDesinfectTemp = EMS_VALUE_INT_NOTSET; // Warm Water desinfection temperature to prevent infection
EMS_Boiler.wWComfort = EMS_VALUE_INT_NOTSET; // WW comfort mode EMS_Boiler.wWComfort = EMS_VALUE_INT_NOTSET; // WW comfort mode
// UBAMonitorFast // UBAMonitorFast
EMS_Boiler.selFlowTemp = EMS_VALUE_INT_NOTSET; // Selected flow temperature EMS_Boiler.selFlowTemp = EMS_VALUE_INT_NOTSET; // Selected flow temperature
@@ -1239,8 +1239,8 @@ void _process_MMPLUSStatusMessage(_EMS_RxTelegram * EMS_RxTelegram) {
} }
void _process_MMStatusMessage(_EMS_RxTelegram * EMS_RxTelegram) { void _process_MMStatusMessage(_EMS_RxTelegram * EMS_RxTelegram) {
uint8_t hc = (EMS_RxTelegram->type - EMS_TYPE_MMStatusMessage); uint8_t hc = (EMS_RxTelegram->type - EMS_TYPE_MMStatusMessage);
if (hc!=0) { if (hc != 0) {
return; // invalid type return; // invalid type
} }
EMS_Mixing.hc[hc].active = true; EMS_Mixing.hc[hc].active = true;

View File

@@ -251,11 +251,11 @@ typedef struct {
char version[10]; char version[10];
// UBAParameterWW // UBAParameterWW
uint8_t wWActivated; // Warm Water activated uint8_t wWActivated; // Warm Water activated
uint8_t wWSelTemp; // Warm Water selected temperature uint8_t wWSelTemp; // Warm Water selected temperature
uint8_t wWCircPump; // Warm Water circulation pump Available uint8_t wWCircPump; // Warm Water circulation pump Available
uint8_t wWDesinfectTemp; // Warm Water desinfection temperature uint8_t wWDesinfectTemp; // Warm Water desinfection temperature
uint8_t wWComfort; // Warm water comfort or ECO mode uint8_t wWComfort; // Warm water comfort or ECO mode
// UBAMonitorFast // UBAMonitorFast
uint8_t selFlowTemp; // Selected flow temperature uint8_t selFlowTemp; // Selected flow temperature

View File

@@ -1 +1 @@
#define APP_VERSION "1.9.5b6" #define APP_VERSION "1.9.5b7"