diff --git a/src/sensor.cpp b/src/sensor.cpp
index d38fbd9..c4973cd 100644
--- a/src/sensor.cpp
+++ b/src/sensor.cpp
@@ -1,14 +1,11 @@
 #include "sensor.hpp"
 
-#include "utils/detached_timer.hpp"
-
 #include <boost/container/flat_map.hpp>
 #include <phosphor-logging/log.hpp>
 #include <sdbusplus/asio/property.hpp>
 #include <sdbusplus/bus/match.hpp>
 
 #include <functional>
-#include <iostream>
 
 Sensor::Sensor(interfaces::Sensor::Id sensorId, boost::asio::io_context& ioc,
                const std::shared_ptr<sdbusplus::asio::connection>& bus) :
@@ -40,24 +37,10 @@
         "xyz.openbmc_project.Sensor.Value", "Value",
         [lock, id = sensorId,
          weakSelf = weak_from_this()](boost::system::error_code ec) {
-            phosphor::logging::log<phosphor::logging::level::ERR>(
+            phosphor::logging::log<phosphor::logging::level::WARNING>(
                 "DBus 'GetProperty' call failed on Sensor Value",
                 phosphor::logging::entry("sensor=%s, ec=%lu", id.str().c_str(),
                                          ec.value()));
-
-            if (auto self = weakSelf.lock())
-            {
-
-                constexpr auto retryIntervalAfterFailedRead =
-                    std::chrono::seconds(30);
-                utils::makeDetachedTimer(
-                    self->ioc, retryIntervalAfterFailedRead, [weakSelf] {
-                        if (auto self = weakSelf.lock())
-                        {
-                            self->async_read();
-                        }
-                    });
-            }
         },
         [lock, weakSelf = weak_from_this()](double newValue) {
             if (auto self = weakSelf.lock())
diff --git a/src/utils/detached_timer.hpp b/src/utils/detached_timer.hpp
index 21343f9..224e5a1 100644
--- a/src/utils/detached_timer.hpp
+++ b/src/utils/detached_timer.hpp
@@ -1,7 +1,6 @@
 #pragma once
 
 #include <boost/asio/io_context.hpp>
-#include <boost/asio/spawn.hpp>
 #include <boost/asio/steady_timer.hpp>
 
 #include <chrono>
