diff --git a/monitor/fan.cpp b/monitor/fan.cpp
index f3937c2..6d88d2a 100644
--- a/monitor/fan.cpp
+++ b/monitor/fan.cpp
@@ -49,13 +49,21 @@
 
     for (auto& s : sensors)
     {
-        _sensors.emplace_back(
-            std::make_unique<TachSensor>(bus,
-                                         *this,
-                                         std::get<sensorNameField>(s),
-                                         std::get<hasTargetField>(s),
-                                         std::get<timeoutField>(def),
-                                         events));
+        try
+        {
+            _sensors.emplace_back(
+                    std::make_unique<TachSensor>(
+                            bus,
+                            *this,
+                            std::get<sensorNameField>(s),
+                            std::get<hasTargetField>(s),
+                            std::get<timeoutField>(def),
+                            events));
+        }
+        catch (InvalidSensorError& e)
+        {
+
+        }
     }
 
     //Start from a known state of functional
