Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v3.7 #504

Merged
merged 14 commits into from
Sep 6, 2024
2 changes: 2 additions & 0 deletions HeatPumpType.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ Assuming that bytes from #129 to #138 are unique for each model of Aquarea heat
|42 | E2 CF 0C 74 09 12 D0 0E 95 05 | WH-ADC0912H9E8 | WH-UX12HE8 | KIT-AXC12HE8 | 12 | 3ph | T-CAP - All-In-One |
|43 | 32 D4 0B 89 84 73 90 0C 86 84 | Monoblock | WH-MXC16J9E8 | Monoblock | 16 | 3ph | T-CAP |
|44 | 32 D4 0B 00 78 62 90 0B 02 78 | Monoblock | WH-MXC12J6E5 | Monoblock | 12 | 1ph | T-CAP |
|45 | E2 CF 0B 82 05 12 D0 0D 91 05 | WH-SQC09H3E8 | WH-UQ09HE8 | KIT-WQC09H3E8 | 9 | 3ph | T-CAP - Super Quiet revised model |


All bytes are used for Heat Pump model identification in the code.

Expand Down
163 changes: 97 additions & 66 deletions HeishaMon/HeishaMon.ino

Large diffs are not rendered by default.

117 changes: 0 additions & 117 deletions HeishaMon/HeishaOT.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -513,123 +513,6 @@ void mqttOTCallback(char* topic, char* value) {
}
}

void openthermTableOutput(struct webserver_t *client) {
char str[64];
//chEnable
webserver_send_content_P(client, PSTR("<tr><td>chEnable</td><td>W</td><td>"), 35);
getOTStructMember(_F("chEnable"))->value.b ? webserver_send_content_P(client, PSTR("enabled"), 7) : webserver_send_content_P(client, PSTR("disabled"), 8);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwEnable
webserver_send_content_P(client, PSTR("<tr><td>dhwEnable</td><td>W</td><td>"), 36);
getOTStructMember(_F("dhwEnable"))->value.b ? webserver_send_content_P(client, PSTR("enabled"), 7) : webserver_send_content_P(client, PSTR("disabled"), 8);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//coolingEnable
webserver_send_content_P(client, PSTR("<tr><td>coolingEnable</td><td>W</td><td>"), 40);
getOTStructMember(_F("coolingEnable"))->value.b ? webserver_send_content_P(client, PSTR("enabled"), 7) : webserver_send_content_P(client, PSTR("disabled"), 8);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//roomtemp
webserver_send_content_P(client, PSTR("<tr><td>roomTemp</td><td>W</td><td>"), 35);
dtostrf( getOTStructMember(_F("roomTemp"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//roomtempset
webserver_send_content_P(client, PSTR("<tr><td>roomTempSet</td><td>W</td><td>"), 38);
dtostrf( getOTStructMember(_F("roomTempSet"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chSetpoint
webserver_send_content_P(client, PSTR("<tr><td>chSetpoint</td><td>W</td><td>"), 37);
dtostrf( getOTStructMember(_F("chSetpoint"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//maxRelativeModulation
webserver_send_content_P(client, PSTR("<tr><td>maxRelativeModulation</td><td>W</td><td>"), 48);
dtostrf( getOTStructMember(_F("maxRelativeModulation"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chSetpoint
webserver_send_content_P(client, PSTR("<tr><td>coolingControl</td><td>W</td><td>"), 41);
dtostrf( getOTStructMember(_F("coolingControl"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwSetpoint
webserver_send_content_P(client, PSTR("<tr><td>dhwSetpoint</td><td>RW</td><td>"), 39);
dtostrf( getOTStructMember(_F("dhwSetpoint"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//maxTSet
webserver_send_content_P(client, PSTR("<tr><td>maxTSet</td><td>RW</td><td>"), 35);
dtostrf( getOTStructMember(_F("maxTSet"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chPressure
webserver_send_content_P(client, PSTR("<tr><td>chPressure</td><td>R</td><td>"), 37);
dtostrf( getOTStructMember(_F("chPressure"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//outsideTemp
webserver_send_content_P(client, PSTR("<tr><td>outsideTemp</td><td>R</td><td>"), 38);
dtostrf( getOTStructMember(_F("outsideTemp"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//inletTemp
webserver_send_content_P(client, PSTR("<tr><td>inletTemp</td><td>R</td><td>"), 36);
dtostrf( getOTStructMember(_F("inletTemp"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//outletTemp
webserver_send_content_P(client, PSTR("<tr><td>outletTemp</td><td>R</td><td>"), 37);
dtostrf( getOTStructMember(_F("outletTemp"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwTemp
webserver_send_content_P(client, PSTR("<tr><td>dhwTemp</td><td>R</td><td>"), 34);
dtostrf( getOTStructMember(_F("dhwTemp"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//relativeModulation
webserver_send_content_P(client, PSTR("<tr><td>relativeModulation</td><td>R</td><td>"), 45);
dtostrf( getOTStructMember(_F("relativeModulation"))->value.f, 0, 2, str);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//flameState
webserver_send_content_P(client, PSTR("<tr><td>flameState</td><td>R</td><td>"), 37);
getOTStructMember(_F("flameState"))->value.b ? webserver_send_content_P(client, PSTR("on"), 2) : webserver_send_content_P(client, PSTR("off"), 3);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chState
webserver_send_content_P(client, PSTR("<tr><td>chState</td><td>R</td><td>"), 34);
getOTStructMember(_F("chState"))->value.b ? webserver_send_content_P(client, PSTR("on"), 2) : webserver_send_content_P(client, PSTR("off"), 3);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwState
webserver_send_content_P(client, PSTR("<tr><td>dhwState</td><td>R</td><td>"), 35);
getOTStructMember(_F("dhwState"))->value.b ? webserver_send_content_P(client, PSTR("on"), 2) : webserver_send_content_P(client, PSTR("off"), 3);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//coolingState
webserver_send_content_P(client, PSTR("<tr><td>coolingState</td><td>R</td><td>"), 39);
getOTStructMember(_F("coolingState"))->value.b ? webserver_send_content_P(client, PSTR("on"), 2) : webserver_send_content_P(client, PSTR("off"), 3);
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwSetUppBound
webserver_send_content_P(client, PSTR("<tr><td>dhwSetUppBound</td><td>R</td><td>"), 41);
itoa( getOTStructMember(_F("dhwSetUppBound"))->value.s8, str, 10);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//dhwSetLowBound
webserver_send_content_P(client, PSTR("<tr><td>dhwSetLowBound</td><td>R</td><td>"), 41);
itoa( getOTStructMember(_F("dhwSetLowBound"))->value.s8, str, 10);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chSetUppBound
webserver_send_content_P(client, PSTR("<tr><td>chSetUppBound</td><td>R</td><td>"), 40);
itoa( getOTStructMember(_F("chSetUppBound"))->value.s8, str, 10);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
//chSetLowBound
webserver_send_content_P(client, PSTR("<tr><td>chSetLowBound</td><td>R</td><td>"), 40);
itoa( getOTStructMember(_F("chSetLowBound"))->value.s8, str, 10);
webserver_send_content(client, str, strlen(str));
webserver_send_content_P(client, PSTR("</td></tr>"), 10);
}

void openthermJsonOutput(struct webserver_t *client) {
webserver_send_content_P(client, PSTR("{"), 1);

Expand Down
1 change: 0 additions & 1 deletion HeishaMon/HeishaOT.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@ extern struct heishaOTDataStruct_t heishaOTDataStruct[];
void HeishaOTSetup();
void HeishaOTLoop(char *actDat, PubSubClient &mqtt_client, char* mqtt_topic_base);
void mqttOTCallback(char* topic, char* value);
void openthermTableOutput(struct webserver_t *client);
void openthermJsonOutput(struct webserver_t *client);

#endif
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Loading