diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..4ca17ee
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "third-party/Catch2"]
+ path = third-party/Catch2
+ url = https://github.com/catchorg/Catch2.git
diff --git a/.idea/cmake.xml b/.idea/cmake.xml
index 857e3e2..eac66eb 100644
--- a/.idea/cmake.xml
+++ b/.idea/cmake.xml
@@ -2,10 +2,10 @@
-
-
-
-
+
+
+
+
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e4bf8b5..dab41af 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -112,4 +112,7 @@ add_custom_command(TARGET ${PROJECT_NAME}.elf POST_BUILD
COMMAND ${CMAKE_OBJCOPY} -Oihex $ ${HEX_FILE}
COMMAND ${CMAKE_OBJCOPY} -Obinary $ ${BIN_FILE}
COMMENT "Building ${HEX_FILE}
-Building ${BIN_FILE}")
\ No newline at end of file
+Building ${BIN_FILE}")
+
+# Integrate Catch2 Tests
+add_subdirectory(third-party/Catch2)
diff --git a/third-party/Catch2 b/third-party/Catch2
new file mode 160000
index 0000000..f3c0a3c
--- /dev/null
+++ b/third-party/Catch2
@@ -0,0 +1 @@
+Subproject commit f3c0a3cd091aba8341a77e5c8580e5697f0e6892