diff --git a/.gitmodules b/.gitmodules
index 6c69fe14..f760c09f 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -61,3 +61,6 @@
 [submodule "third_party/dynarmic"]
 	path = third_party/dynarmic
 	url = https://github.com/Panda3DS-emu/dynarmic
+[submodule "third_party/nihstro"]
+	path = third_party/nihstro
+	url = https://github.com/neobrain/nihstro.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 25ce0644..8c5a8305 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -524,7 +524,11 @@ endif()
 
 if(ENABLE_TESTS)
     enable_testing()
+
     find_package(Catch2 3 REQUIRED)
+    add_library(nihstro-headers INTERFACE)
+    target_include_directories(nihstro-headers SYSTEM INTERFACE ./third_party/nihstro/include)
+
     add_executable(AlberTests
         tests/dynapica.cpp
     )
@@ -533,6 +537,7 @@ if(ENABLE_TESTS)
         PRIVATE
         Catch2::Catch2WithMain
         AlberCore
+        nihstro-headers
     )
 
     add_test(AlberTests AlberTests)
diff --git a/third_party/nihstro b/third_party/nihstro
new file mode 160000
index 00000000..e924e21b
--- /dev/null
+++ b/third_party/nihstro
@@ -0,0 +1 @@
+Subproject commit e924e21b1da60170f0f0a4e5a073cb7d579969c0