diff --git a/src/trigger.cpp b/src/trigger.cpp
index f534dbd..f71e515 100644
--- a/src/trigger.cpp
+++ b/src/trigger.cpp
@@ -186,8 +186,8 @@
                 });
 
             dbusIface.register_property_r(
-                "Discrete", isDiscreate(), sdbusplus::vtable::property_::const_,
-                [this](const auto& x) { return isDiscreate(); });
+                "Discrete", isDiscrete(), sdbusplus::vtable::property_::const_,
+                [this](const auto& x) { return isDiscrete(); });
 
             dbusIface.register_property_rw(
                 "Name", name, sdbusplus::vtable::property_::emits_change,
@@ -278,9 +278,13 @@
     });
 }
 
-bool Trigger::isDiscreate() const
+bool Trigger::isDiscrete() const
 {
     const auto labeledThresholds = getLabeledThresholds();
+    if (labeledThresholds.empty())
+    {
+        return true;
+    }
 
     return utils::isFirstElementOfType<std::monostate>(labeledThresholds) ||
            utils::isFirstElementOfType<discrete::LabeledThresholdParam>(
diff --git a/src/trigger.hpp b/src/trigger.hpp
index e636334..c0b2845 100644
--- a/src/trigger.hpp
+++ b/src/trigger.hpp
@@ -48,7 +48,7 @@
   private:
     std::vector<LabeledSensorInfo> getLabeledSensorInfo() const;
     std::vector<LabeledThresholdParam> getLabeledThresholds() const;
-    bool isDiscreate() const;
+    bool isDiscrete() const;
 
     const TriggerId id;
     const sdbusplus::message::object_path path;
