diff --git a/src/shared/utils/PinObserver/PinObserver.cpp b/src/shared/utils/PinObserver/PinObserver.cpp
index 145b5ae795b6e96bfb410b371f26e07df1291417..34e7d00d3bf1c462017faf587c6c657528f77c17 100644
--- a/src/shared/utils/PinObserver/PinObserver.cpp
+++ b/src/shared/utils/PinObserver/PinObserver.cpp
@@ -52,12 +52,6 @@ bool PinObserver::registerPinCallback(miosix::GpioPin pin, PinCallback callback,
     return false;
 }
 
-bool PinObserver::start() { return scheduler.start(); }
-
-void PinObserver::stop() { scheduler.stop(); }
-
-bool PinObserver::isRunning() { return scheduler.isRunning(); }
-
 PinData PinObserver::getPinData(miosix::GpioPin pin) { return callbacks[pin]; }
 
 void PinObserver::resetPinChangesCount(miosix::GpioPin pin)
diff --git a/src/shared/utils/PinObserver/PinObserver.h b/src/shared/utils/PinObserver/PinObserver.h
index 86cec33f1cfdfd77f7f6a4672b88b11dc27779f9..b87d58e29fa91c36b9d27ceba91af091b7e43661 100644
--- a/src/shared/utils/PinObserver/PinObserver.h
+++ b/src/shared/utils/PinObserver/PinObserver.h
@@ -94,26 +94,6 @@ public:
                              uint32_t detectionThreshold = 1,
                              bool reverted               = false);
 
-    /**
-     * @brief Starts the PinObserver's task scheduler.
-     *
-     * Note that the scheduler is started as soon as the PinObserver is first
-     * used.
-     *
-     * @return Whether the task scheduler was started or not.
-     */
-    bool start();
-
-    /**
-     * @brief Stops the PinObserver's task scheduler.
-     */
-    void stop();
-
-    /**
-     * @brief True if the PinObserver started correctly.
-     */
-    bool isRunning();
-
     /**
      * @brief Returns the information for the specified pin.
      */
diff --git a/src/tests/test-pinobserver.cpp b/src/tests/test-pinobserver.cpp
index 10dd5e98780b78a9c3e84e44d5949f59a5b45ec9..b8aca2808924da1d443ed11fb7671b5511462815 100644
--- a/src/tests/test-pinobserver.cpp
+++ b/src/tests/test-pinobserver.cpp
@@ -71,6 +71,8 @@ int main()
     observer.registerPinCallback(pin1, std::bind(onTransition, pin1, _1), 10);
     observer.registerPinCallback(pin2, std::bind(onTransition, pin2, _1), 10);
 
+    scheduler.start();
+
     while (true)
         Thread::sleep(10000);
 }