diff --git a/src/ADCSensor.cpp b/src/ADCSensor.cpp
index e77261a..5abee29 100644
--- a/src/ADCSensor.cpp
+++ b/src/ADCSensor.cpp
@@ -35,7 +35,6 @@
 #include <vector>
 
 static constexpr size_t warnAfterErrorCount = 10;
-static constexpr unsigned int gpioBridgeEnableMs = 20;
 // scaling factor from hwmon
 static constexpr unsigned int sensorScaleFactor = 1000;
 
@@ -110,7 +109,7 @@
         // value. Guarantee that the HW signal can be stable, the HW signal
         // could be instability.
         waitTimer.expires_from_now(
-            boost::posix_time::milliseconds(gpioBridgeEnableMs));
+            boost::posix_time::milliseconds(bridgeGpio->setupTimeMs));
         waitTimer.async_wait(
             [weakRef, buffer](const boost::system::error_code& ec) {
                 std::shared_ptr<ADCSensor> self = weakRef.lock();
diff --git a/src/ADCSensorMain.cpp b/src/ADCSensorMain.cpp
index 9d29895..4f35a7f 100644
--- a/src/ADCSensorMain.cpp
+++ b/src/ADCSensorMain.cpp
@@ -37,6 +37,7 @@
 
 static constexpr bool debug = false;
 static constexpr float pollRateDefault = 0.5;
+static constexpr float gpioBridgeSetupTimeDefault = 0.02;
 
 namespace fs = std::filesystem;
 
@@ -281,7 +282,18 @@
                                     polarity = gpiod::line::ACTIVE_LOW;
                                 }
                             }
-                            bridgeGpio = BridgeGpio(gpioName, polarity);
+
+                            float setupTime = gpioBridgeSetupTimeDefault;
+                            auto findSetupTime =
+                                suppConfig.second.find("SetupTime");
+                            if (findSetupTime != suppConfig.second.end())
+                            {
+                                setupTime = std::visit(VariantToFloatVisitor(),
+                                                       findSetupTime->second);
+                            }
+
+                            bridgeGpio =
+                                BridgeGpio(gpioName, polarity, setupTime);
                         }
 
                         break;
