diff --git a/tasmota/support.ino b/tasmota/support.ino index 50cc4f920..ae42f3840 100644 --- a/tasmota/support.ino +++ b/tasmota/support.ino @@ -906,6 +906,17 @@ void SerialSendRaw(char *codes) } } +// values is a comma-delimited string: e.g. "72,101,108,108,111,32,87,111,114,108,100,33,10" +void SerialSendDecimal(char *values) +{ + char* &p; + uint8_t code; + for (str = strtok_r(values, ",", &p); str; str = strtok_r(nullptr, ",", &p)) { + code = (uint8_t)atoi(str); + Serial.write(code); + } +} + uint32_t GetHash(const char *buffer, size_t size) { uint32_t hash = 0; diff --git a/tasmota/support_command.ino b/tasmota/support_command.ino index abd75960e..5854c0ed1 100644 --- a/tasmota/support_command.ino +++ b/tasmota/support_command.ino @@ -1354,6 +1354,9 @@ void CmndSerialSend(void) else if (5 == XdrvMailbox.index) { SerialSendRaw(RemoveSpace(XdrvMailbox.data)); // "AA004566" as hex values } + else if (6 == XdrvMailbox.index) { + SerialSendDecimal(XdrvMailbox.data); + } ResponseCmndDone(); } }