diff --git a/src/AmsToMqttBridge.ino b/src/AmsToMqttBridge.ino
index d3aef35b..0783ffdf 100644
--- a/src/AmsToMqttBridge.ino
+++ b/src/AmsToMqttBridge.ino
@@ -608,6 +608,9 @@ void setupHanPort(uint8_t pin, uint32_t baud, uint8_t parityOrdinal, bool invert
hwSerial = &Serial2;
}
#elif defined(CONFIG_IDF_TARGET_ESP32S2)
+ if(pin == 18) {
+ hwSerial = &Serial1;
+ }
#elif defined(CONFIG_IDF_TARGET_ESP32C3)
#endif
#endif
diff --git a/src/web/AmsWebServer.cpp b/src/web/AmsWebServer.cpp
index 8c0fd20b..5de38023 100644
--- a/src/web/AmsWebServer.cpp
+++ b/src/web/AmsWebServer.cpp
@@ -1486,8 +1486,13 @@ String AmsWebServer::getSerialSelectOptions(int selected) {
gpioOptions += "";
}
#if defined(CONFIG_IDF_TARGET_ESP32S2)
- int numGpio = 31;
- int gpios[] = {4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21,22,23,25,32,33,34,35,36,39,40,41,42,43,44};
+ int numGpio = 30;
+ int gpios[] = {4,5,6,7,8,9,10,11,12,13,14,15,16,17,19,21,22,23,25,32,33,34,35,36,39,40,41,42,43,44};
+ if(selected == 18) {
+ gpioOptions += "";
+ } else {
+ gpioOptions += "";
+ }
#elif defined(ESP32)
int numGpio = 24;
int gpios[] = {4,5,6,7,8,10,11,12,13,14,15,17,18,19,21,22,23,25,32,33,34,35,36,39};