diff --git a/boards.txt b/boards.txt
index c127c4a621c..5ecb3b5d6d9 100644
--- a/boards.txt
+++ b/boards.txt
@@ -528,6 +528,61 @@ node32s.build.flash_size=4MB
 node32s.build.boot=dio
 node32s.build.partitions=default
 
+
+## node32s.menu.Debug.Disabled=Disabled
+## node32s.menu.Debug.Disabled.build.debug_port=
+## node32s.menu.Debug.Serial=Serial
+## node32s.menu.Debug.Serial.build.debug_port=-DDEBUG_ESP_PORT=Serial
+## node32s.menu.Debug.Serial1=Serial1
+## node32s.menu.Debug.Serial1.build.debug_port=-DDEBUG_ESP_PORT=Serial1
+## 
+## node32s.menu.DebugLevel.None____=None
+## node32s.menu.DebugLevel.None____.build.debug_level=
+## node32s.menu.DebugLevel.Core____=Core
+## node32s.menu.DebugLevel.Core____.build.debug_level=-DDEBUG_ESP_CORE
+## node32s.menu.DebugLevel.SSL_____=Core + SSL
+## node32s.menu.DebugLevel.SSL_____.build.debug_level=-DDEBUG_ESP_CORE -DDEBUG_ESP_SSL
+## node32s.menu.DebugLevel.SSL_MEM_=Core + SSL + TLS Mem
+## node32s.menu.DebugLevel.SSL_MEM_.build.debug_level=-DDEBUG_ESP_CORE -DDEBUG_ESP_SSL -DDEBUG_TLS_MEM
+## node32s.menu.DebugLevel.WiFic___=Core + WiFi
+## node32s.menu.DebugLevel.WiFic___.build.debug_level=-DDEBUG_ESP_CORE -DDEBUG_ESP_WIFI
+## node32s.menu.DebugLevel.WiFi____=WiFi
+## node32s.menu.DebugLevel.WiFi____.build.debug_level=-DDEBUG_ESP_WIFI
+## node32s.menu.DebugLevel.HTTPClient=HTTPClient
+## node32s.menu.DebugLevel.HTTPClient.build.debug_level=-DDEBUG_ESP_HTTP_CLIENT
+## node32s.menu.DebugLevel.HTTPClient2=HTTPClient + SSL
+## node32s.menu.DebugLevel.HTTPClient2.build.debug_level=-DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_SSL
+## node32s.menu.DebugLevel.HTTPUpdate=HTTPUpdate
+## node32s.menu.DebugLevel.HTTPUpdate.build.debug_level=-DDEBUG_ESP_HTTP_UPDATE
+## node32s.menu.DebugLevel.HTTPUpdate2=HTTPClient + HTTPUpdate
+## node32s.menu.DebugLevel.HTTPUpdate2.build.debug_level=-DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_UPDATE
+## node32s.menu.DebugLevel.HTTPUpdate3=HTTPClient + HTTPUpdate + Updater
+## node32s.menu.DebugLevel.HTTPUpdate3.build.debug_level=-DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_UPDATER
+## node32s.menu.DebugLevel.HTTPServer=HTTPServer
+## node32s.menu.DebugLevel.HTTPServer.build.debug_level=-DDEBUG_ESP_HTTP_SERVER
+## node32s.menu.DebugLevel.UPDATER=Updater
+## node32s.menu.DebugLevel.UPDATER.build.debug_level=-DDEBUG_ESP_UPDATER
+## node32s.menu.DebugLevel.OTA_____=OTA
+## node32s.menu.DebugLevel.OTA_____.build.debug_level=-DDEBUG_ESP_OTA
+## node32s.menu.DebugLevel.OTA2____=OTA + Updater
+## node32s.menu.DebugLevel.OTA2____.build.debug_level=-DDEBUG_ESP_OTA -DDEBUG_ESP_UPDATER
+## node32s.menu.DebugLevel.all_____=All
+## node32s.menu.DebugLevel.all_____.build.debug_level=-DDEBUG_ESP_CORE -DDEBUG_ESP_SSL -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_TLS_MEM
+
+
+node32s.menu.DebugLevel.none=None
+node32s.menu.DebugLevel.none.build.code_debug=0
+node32s.menu.DebugLevel.error=Error
+node32s.menu.DebugLevel.error.build.code_debug=1
+node32s.menu.DebugLevel.warn=Warn
+node32s.menu.DebugLevel.warn.build.code_debug=2
+node32s.menu.DebugLevel.info=Info
+node32s.menu.DebugLevel.info.build.code_debug=3
+node32s.menu.DebugLevel.debug=Debug
+node32s.menu.DebugLevel.debug.build.code_debug=4
+node32s.menu.DebugLevel.verbose=Verbose
+node32s.menu.DebugLevel.verbose.build.code_debug=5
+
 node32s.menu.FlashFreq.80=80MHz
 node32s.menu.FlashFreq.80.build.flash_freq=80m
 node32s.menu.FlashFreq.40=40MHz
diff --git a/libraries/HTTPClient/src/HTTPClient.cpp b/libraries/HTTPClient/src/HTTPClient.cpp
index 120cb9af661..87b4bf286dd 100644
--- a/libraries/HTTPClient/src/HTTPClient.cpp
+++ b/libraries/HTTPClient/src/HTTPClient.cpp
@@ -373,6 +373,46 @@ int HTTPClient::sendRequest(const char * type, String payload)
     return sendRequest(type, (uint8_t *) payload.c_str(), payload.length());
 }
 
+/**
+ * sendRequest
+ * @param type const char *     "GET", "POST", ....
+ * @param type const char *     "/URI"
+ * @param payload uint8_t *     data for the message body if null not send
+ * @param size size_t           size for the message body if 0 not send
+ * @return -1 if no info or > 0 when Content-Length is set by server
+ */
+int HTTPClient::sendRequest(const char * type, uint8_t * uri,uint8_t * payload, size_t size)
+{
+    Serial.printf("[HTTP-Client][sendRequest] switch uri <%s> to <%s>\n",_uri.c_str(),uri);
+    _uri = String((char *)uri);
+    
+    // connect to server
+    if(!connect()) {
+        return returnError(HTTPC_ERROR_CONNECTION_REFUSED);
+    }
+
+    if(payload && size > 0) {
+        addHeader(F("Content-Length"), String(size));
+    }
+
+    // send Header
+    if(!sendHeader(type)) {
+        return returnError(HTTPC_ERROR_SEND_HEADER_FAILED);
+    }
+
+    // send Payload if needed
+    if(payload && size > 0) {
+        if(_tcp->write(&payload[0], size) != size) {
+            return returnError(HTTPC_ERROR_SEND_PAYLOAD_FAILED);
+        }
+    }
+
+    // handle Server Response (Header)
+    return returnError(handleHeaderResponse());
+}
+
+
+
 /**
  * sendRequest
  * @param type const char *     "GET", "POST", ....
diff --git a/libraries/HTTPClient/src/HTTPClient.h b/libraries/HTTPClient/src/HTTPClient.h
index d51abca975e..17ff14c4d28 100644
--- a/libraries/HTTPClient/src/HTTPClient.h
+++ b/libraries/HTTPClient/src/HTTPClient.h
@@ -152,6 +152,7 @@ class HTTPClient
     int sendRequest(const char * type, String payload);
     int sendRequest(const char * type, uint8_t * payload = NULL, size_t size = 0);
     int sendRequest(const char * type, Stream * stream, size_t size = 0);
+    int sendRequest(const char * type, uint8_t * uri,uint8_t * payload, size_t size = 0);
 
     void addHeader(const String& name, const String& value, bool first = false, bool replace = true);
 
