diff --git a/src/CPUSensorMain.cpp b/src/CPUSensorMain.cpp
index 0edbc65..65fad1b 100644
--- a/src/CPUSensorMain.cpp
+++ b/src/CPUSensorMain.cpp
@@ -102,7 +102,6 @@
                                     dbusConnection, sensorConfigurations,
                                     useCache))
         {
-            std::cerr << "error communicating to entity manager\n";
             return false;
         }
         useCache = true;
@@ -232,6 +231,8 @@
         }
     }
 
+    std::cout << "Sensor creation completed\n";
+
     return true;
 }
 
@@ -305,6 +306,7 @@
                     break;
                 }
             }
+
             if (dimmReady)
             {
                 state = State::READY;
@@ -323,8 +325,14 @@
         {
             if (config.state == State::OFF)
             {
+                std::cout << config.ovName << " is detected\n";
                 reloadOverlay(config.ovName);
             }
+            if (state == State::READY)
+            {
+                std::cout << "DIMM(s) on " << config.ovName
+                          << " is/are detected\n";
+            }
             config.state = state;
         }
 
@@ -391,8 +399,6 @@
         if (!getSensorConfiguration(CONFIG_PREFIX + std::string(type),
                                     systemBus, sensorConfigurations, useCache))
         {
-            std::cerr
-                << "getCpuConfig: error communicating to entity manager\n";
             return;
         }
         useCache = true;
@@ -446,6 +452,8 @@
             }
         }
     }
+
+    std::cout << "CPU configs parsed\n";
 }
 
 int main(int argc, char** argv)
