diff --git a/src/entity_manager/dbus_interface.cpp b/src/entity_manager/dbus_interface.cpp
index 461b27c..d7169ce 100644
--- a/src/entity_manager/dbus_interface.cpp
+++ b/src/entity_manager/dbus_interface.cpp
@@ -3,7 +3,6 @@
 #include "perform_probe.hpp"
 #include "utils.hpp"
 
-#include <boost/algorithm/string/case_conv.hpp>
 #include <boost/container/flat_map.hpp>
 #include <phosphor-logging/lg2.hpp>
 
diff --git a/src/entity_manager/entity_manager.cpp b/src/entity_manager/entity_manager.cpp
index 522c6f3..f9560f3 100644
--- a/src/entity_manager/entity_manager.cpp
+++ b/src/entity_manager/entity_manager.cpp
@@ -13,7 +13,6 @@
 #include "topology.hpp"
 #include "utils.hpp"
 
-#include <boost/algorithm/string/case_conv.hpp>
 #include <boost/asio/io_context.hpp>
 #include <boost/asio/post.hpp>
 #include <boost/asio/steady_timer.hpp>
diff --git a/src/entity_manager/utils.cpp b/src/entity_manager/utils.cpp
index 4e46395..86024c5 100644
--- a/src/entity_manager/utils.cpp
+++ b/src/entity_manager/utils.cpp
@@ -5,7 +5,6 @@
 #include "expression.hpp"
 #include "phosphor-logging/lg2.hpp"
 
-#include <boost/algorithm/string/case_conv.hpp>
 #include <phosphor-logging/lg2.hpp>
 #include <sdbusplus/bus/match.hpp>
 
@@ -291,8 +290,7 @@
                                      const std::string& boardType)
 {
     std::string path = "/xyz/openbmc_project/inventory/system/";
-    std::string boardTypeLower = boost::algorithm::to_lower_copy(boardType);
-
+    std::string boardTypeLower = toLowerCopy(boardType);
     std::regex_replace(boardName.begin(), boardName.begin(), boardName.end(),
                        illegalDbusMemberRegex, "_");
 
diff --git a/src/utils.cpp b/src/utils.cpp
index de433c8..d88df36 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -235,3 +235,11 @@
         pos += replace.size();
     }
 }
+
+std::string toLowerCopy(std::string_view str)
+{
+    std::string result(str);
+    std::transform(result.begin(), result.end(), result.begin(),
+                   [](unsigned char c) { return asciiToLower(c); });
+    return result;
+}
diff --git a/src/utils.hpp b/src/utils.hpp
index 5ec882c..107d97e 100644
--- a/src/utils.hpp
+++ b/src/utils.hpp
@@ -103,6 +103,8 @@
 void replaceAll(std::string& str, std::string_view search,
                 std::string_view replace);
 
+std::string toLowerCopy(std::string_view str);
+
 template <typename T>
 std::from_chars_result fromCharsWrapper(const std::string_view& str, T& out,
                                         bool& fullMatch, int base = 10)
