mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 07:49:52 +03:00
special char for servicecode
This commit is contained in:
@@ -414,6 +414,10 @@ char * Helpers::render_string(char * result, const char * c, const uint8_t len)
|
||||
*p = 0xC3;
|
||||
*(++p) = 0xBC;
|
||||
break;
|
||||
case 0xF0: // greek capital Xi, used for boiler servicecode dhw+heat
|
||||
*p = 0xCE;
|
||||
*(++p) = 0x9E;
|
||||
break;
|
||||
default:
|
||||
*p = (*c & 0x80) ? '?' : *c;
|
||||
break;
|
||||
|
||||
@@ -1308,7 +1308,8 @@ void Boiler::process_UBAMonitorFast(std::shared_ptr<const Telegram> telegram) {
|
||||
if ((telegram->message_length > 18) && (telegram->offset == 0)) {
|
||||
char serviceCode[4];
|
||||
telegram->read_value(serviceCode[0], 18);
|
||||
serviceCode[0] = (serviceCode[0] == (char)0xF0) ? '~' : serviceCode[0];
|
||||
// 0xF0 for 3 stacked horizontal lines like greek capital Xi
|
||||
// serviceCode[0] = (serviceCode[0] == (char)0xF0) ? '~' : serviceCode[0];
|
||||
telegram->read_value(serviceCode[1], 19);
|
||||
serviceCode[2] = '\0'; // null terminate string
|
||||
has_update(serviceCode_, serviceCode, sizeof(serviceCode_));
|
||||
@@ -1474,9 +1475,9 @@ void Boiler::process_UBAMonitorFastPlus(std::shared_ptr<const Telegram> telegram
|
||||
if ((telegram->message_length > 3) && (telegram->offset == 0)) {
|
||||
char serviceCode[4] = {0};
|
||||
telegram->read_value(serviceCode[0], 1);
|
||||
serviceCode[0] = (serviceCode[0] == (char)0xF0) ? '~' : serviceCode[0];
|
||||
// serviceCode[0] = (serviceCode[0] == (char)0xF0) ? '~' : serviceCode[0];
|
||||
telegram->read_value(serviceCode[1], 2);
|
||||
serviceCode[1] = (serviceCode[1] == (char)0xF0) ? '~' : serviceCode[1];
|
||||
// serviceCode[1] = (serviceCode[1] == (char)0xF0) ? '~' : serviceCode[1];
|
||||
telegram->read_value(serviceCode[2], 3);
|
||||
serviceCode[3] = '\0';
|
||||
has_update(serviceCode_, serviceCode, sizeof(serviceCode_));
|
||||
|
||||
Reference in New Issue
Block a user