diff --git a/cmake/corryvreckan.cmake b/cmake/corryvreckan.cmake
index e0df3599ee3db52af29f0e07ac818da9505dc01a..206331ca45b10773610081f7ee541ddcd2e97d55 100644
--- a/cmake/corryvreckan.cmake
+++ b/cmake/corryvreckan.cmake
@@ -86,9 +86,9 @@ MACRO(corryvreckan_exclude_aux name)
     TARGET_COMPILE_DEFINITIONS(${name} PRIVATE CORRYVRECKAN_EXCLUDE_AUX=1)
 ENDMACRO()
 
-# Select whether to exclude passive detectors or not
-MACRO(corryvreckan_exclude_passive name)
-    TARGET_COMPILE_DEFINITIONS(${name} PRIVATE CORRYVRECKAN_EXCLUDE_PASSIVE=1)
+# Select whether to include passive detectors or not
+MACRO(corryvreckan_include_passive name)
+    TARGET_COMPILE_DEFINITIONS(${name} PRIVATE CORRYVRECKAN_INCLUDE_PASSIVE=0)
 ENDMACRO()
 
 # Append list of possible detector types as compile definition
diff --git a/doc/usermanual/chapters/development.tex b/doc/usermanual/chapters/development.tex
index 5967a759ddf2b6cd31558493eee043c1ef1ed9fa..8752b8dc8caf79574e4b4e290e17d60a41a0460b 100644
--- a/doc/usermanual/chapters/development.tex
+++ b/doc/usermanual/chapters/development.tex
@@ -93,7 +93,7 @@ CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "Timepix3" "CLICpix2")
 \end{minted}
 The module will then only be instantiated for detectors of one of the given types. This is particularly useful for event loader modules which read a very specific file format.
 
-\item For detector modules, auxiliary detectors can be excluded from being instantiated by adding \parameter{CORRYVRECKAN_EXCLUDE_AUX(MODULE_NAME)} below the definition of the module type. Passive detectors can be excluded from being instantiated by adding \parameter{CORRYVRECKAN_EXCLUDE_PASSIVE(MODULE_NAME)} below the definition of the module type.
+\item For detector modules, auxiliary detectors can be excluded from being instantiated by adding \parameter{CORRYVRECKAN_EXCLUDE_AUX(MODULE_NAME)} below the definition of the module type. Passive detectors will be excluded from being instantiated, unless the \parameter{CORRYVRECKAN_INCLUDE_PASSIVE(MODULE_NAME)} is added below the definition of the module type.
 \item The following lines should contain the logic to load possible dependencies of the module (below is an example to load Geant4).
 Only ROOT is automatically included and linked to the module.
 \item A line with \texttt{\textbf{CORRYVRECKAN\_MODULE\_SOURCES(\$\{MODULE\_NAME\} \textit{sources})}} defines the module source files. Here, \texttt{sources} should be replaced by a list of all source files relevant to this module.
diff --git a/etc/addModule.sh b/etc/addModule.sh
index 2cfd6bff4c93e097e14f9afe284554ad836a98a8..c895f4d6bee3a47c0fa304773fa60229d3329e77 100755
--- a/etc/addModule.sh
+++ b/etc/addModule.sh
@@ -32,7 +32,7 @@ if [ "$type" == 2 ]; then
 fi
 
 # If type is detector, ask if pass should be excluded:
-exclude_pass=0
+exclude_pass=1
 if [ "$type" == 2 ]; then
     echo -e "Should passive detectors be excluded from this module?\n"
     select yn in "yes" "nope"; do
@@ -121,9 +121,9 @@ if [ "$type" != 1 ]; then
         eval $command
     fi
 
-    # Add pass exclusion for detector module if selected:
-    if [ "$exclude_pass" == 1  ]; then
-        command="sed $opt '/_DETECTOR_/ a CORRYVRECKAN_EXCLUDE_PASSIVE(\${MODULE_NAME})' $MODDIR/$MODNAME/CMakeLists.txt"
+    # Add inclusion of passive detectors for detector module if selected:
+    if [ "$exclude_pass" == 0  ]; then
+        command="sed $opt '/_DETECTOR_/ a CORRYVRECKAN_INCLUDE_PASSIVE(\${MODULE_NAME})' $MODDIR/$MODNAME/CMakeLists.txt"
         eval $command
     fi
 
diff --git a/src/core/module/ModuleManager.cpp b/src/core/module/ModuleManager.cpp
index 414632c90e62439b01f5cee5384c714e9b4e496a..15ce537c72fbdbee8f80e7dfad63d61324a01522 100644
--- a/src/core/module/ModuleManager.cpp
+++ b/src/core/module/ModuleManager.cpp
@@ -32,7 +32,7 @@
 #define CORRYVRECKAN_GLOBAL_FUNCTION "corryvreckan_module_is_global"
 #define CORRYVRECKAN_DUT_FUNCTION "corryvreckan_module_is_dut"
 #define CORRYVRECKAN_AUX_FUNCTION "corryvreckan_module_exclude_aux"
-#define CORRYVRECKAN_PASS_FUNCTION "corryvreckan_module_exclude_passive"
+#define CORRYVRECKAN_PASS_FUNCTION "corryvreckan_module_include_passive"
 #define CORRYVRECKAN_TYPE_FUNCTION "corryvreckan_detector_types"
 
 using namespace corryvreckan;
@@ -241,7 +241,7 @@ void ModuleManager::load_modules() {
         bool global = reinterpret_cast<bool (*)()>(globalFunction)();      // NOLINT
         bool dut_only = reinterpret_cast<bool (*)()>(dutFunction)();       // NOLINT
         bool exclude_aux = reinterpret_cast<bool (*)()>(auxFunction)();    // NOLINT
-        bool exclude_pass = reinterpret_cast<bool (*)()>(passFunction)();  // NOLINT
+        bool include_pass = reinterpret_cast<bool (*)()>(passFunction)();  // NOLINT
         char* type_tokens = reinterpret_cast<char* (*)()>(typeFunction)(); // NOLINT
 
         std::vector<std::string> types = get_type_vector(type_tokens);
@@ -256,7 +256,7 @@ void ModuleManager::load_modules() {
             mod_list.emplace_back(create_unique_module(loaded_libraries_[lib_name], config));
         } else {
             mod_list =
-                create_detector_modules(loaded_libraries_[lib_name], config, dut_only, exclude_aux, exclude_pass, types);
+                create_detector_modules(loaded_libraries_[lib_name], config, dut_only, exclude_aux, include_pass, types);
         }
 
         // Loop through all created instantiations
@@ -403,7 +403,7 @@ std::vector<std::pair<ModuleIdentifier, Module*>> ModuleManager::create_detector
                                                                                          Configuration& config,
                                                                                          bool dut_only,
                                                                                          bool exclude_aux,
-                                                                                         bool exclude_pass,
+                                                                                         bool include_pass,
                                                                                          std::vector<std::string> types) {
     LOG(TRACE) << "Creating instantiations for module " << config.getName() << ", using generator \""
                << CORRYVRECKAN_GENERATOR_FUNCTION << "\"";
@@ -508,7 +508,7 @@ std::vector<std::pair<ModuleIdentifier, Module*>> ModuleManager::create_detector
             continue;
         }
 
-        if(exclude_pass && detector->isPassive()) {
+        if(!include_pass && detector->isPassive()) {
             LOG(TRACE) << "Skipping instantiation \"" << identifier.getUniqueName() << "\", detector is passive";
             continue;
         }
diff --git a/src/core/module/ModuleManager.hpp b/src/core/module/ModuleManager.hpp
index 428ecf68a62e4041b76b59058bdad287dfe49e5f..c6d953e7284cae4e7e0b693fd3cca3fb8abd7587 100644
--- a/src/core/module/ModuleManager.hpp
+++ b/src/core/module/ModuleManager.hpp
@@ -120,7 +120,7 @@ namespace corryvreckan {
          * @param config Configuration of the module
          * @param dut_only Boolean signaling whether should be instantiated only for DUT detectors
          * @param exclude_aux Boolean to exclude instantiations for auxliary detectors
-         * @param exclude_pass Boolean to exclude instantiations for passive detectors
+         * @param include_pass Boolean to include instantiations for passive detectors
          * @param types List of detector type restrictions imposed by the module itself
          * @return A list of all created detector modules and their identifiers
          */
@@ -128,7 +128,7 @@ namespace corryvreckan {
                                                                                   Configuration& config,
                                                                                   bool dut_only,
                                                                                   bool exclude_aux,
-                                                                                  bool exclude_pass,
+                                                                                  bool include_pass,
                                                                                   std::vector<std::string> types);
 
         using IdentifierToModuleMap = std::map<ModuleIdentifier, ModuleList::iterator>;
diff --git a/src/core/module/dynamic_module_impl.cpp b/src/core/module/dynamic_module_impl.cpp
index 1ee6302377573225397718fbe7351399a572efee..cc1323bc94a64a2a82e90ef951a8fe476a301386 100644
--- a/src/core/module/dynamic_module_impl.cpp
+++ b/src/core/module/dynamic_module_impl.cpp
@@ -55,11 +55,11 @@ namespace corryvreckan {
     bool corryvreckan_module_exclude_aux();
 
     /**
-     * @brief Returns if the linked module should be excluded for PASS detectors
+     * @brief Returns if the linked module should be included for PASSIVE detectors
      *
      * Used by the ModuleManager to determine if it should instantiate a modules for passive detectors
      */
-    bool corryvreckan_module_exclude_passive();
+    bool corryvreckan_module_include_passive();
 
     /**
      * @brief Returns a list of detector types this module can run on
@@ -149,12 +149,12 @@ namespace corryvreckan {
     bool corryvreckan_module_exclude_aux() { return false; }
 #endif
 
-#if(!CORRYVRECKAN_MODULE_GLOBAL && defined(CORRYVRECKAN_EXCLUDE_PASSIVE)) || defined(DOXYGEN)
-    // Return that this module should not be instantiated for pass detectors
-    bool corryvreckan_module_exclude_passive() { return true; }
+#if(!CORRYVRECKAN_MODULE_GLOBAL && defined(CORRYVRECKAN_INCLUDE_PASSIVE)) || defined(DOXYGEN)
+    // Return that this module should be instantiated for passive detectors
+    bool corryvreckan_module_include_passive() { return true; }
 #else
-    // Return that this module should not exclude pass detectors
-    bool corryvreckan_module_exclude_passive() { return false; }
+    // Return that this module should exclude passive detectors
+    bool corryvreckan_module_include_passive() { return false; }
 #endif
     }
 } // namespace corryvreckan
diff --git a/src/modules/AnalysisFASTPIX/CMakeLists.txt b/src/modules/AnalysisFASTPIX/CMakeLists.txt
index 34a27778ae1d376bbbf98f796b2cb03f106a12aa..f1b796134ee630f464a66ca0f5427edb2504d856 100644
--- a/src/modules/AnalysisFASTPIX/CMakeLists.txt
+++ b/src/modules/AnalysisFASTPIX/CMakeLists.txt
@@ -5,7 +5,6 @@
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "FASTPIX")
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/AnalysisTimingATLASpix/CMakeLists.txt b/src/modules/AnalysisTimingATLASpix/CMakeLists.txt
index 4ec319f4e461fa12ab75f63b04dc4b324d958bf2..2010b0d6c64622f3fce3dba02b7c9b3edcebfadf 100644
--- a/src/modules/AnalysisTimingATLASpix/CMakeLists.txt
+++ b/src/modules/AnalysisTimingATLASpix/CMakeLists.txt
@@ -5,7 +5,6 @@
 CORRYVRECKAN_DUT_MODULE(MODULE_NAME)
 CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "ATLASpix")
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/AnalysisTimingFASTPIX/CMakeLists.txt b/src/modules/AnalysisTimingFASTPIX/CMakeLists.txt
index 24d4b4510ab6f91feed78a385051de6642399658..a9ef3b8a37092a90cdf631d200188dd9c3b6d282 100644
--- a/src/modules/AnalysisTimingFASTPIX/CMakeLists.txt
+++ b/src/modules/AnalysisTimingFASTPIX/CMakeLists.txt
@@ -5,7 +5,6 @@
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "FASTPIX")
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/Clustering4D/CMakeLists.txt b/src/modules/Clustering4D/CMakeLists.txt
index 62574fdd7454ebe965d9d36e1a24b71ca64a97de..3d5229dee37444e170e471221088331a51080c07 100644
--- a/src/modules/Clustering4D/CMakeLists.txt
+++ b/src/modules/Clustering4D/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/ClusteringAnalog/CMakeLists.txt b/src/modules/ClusteringAnalog/CMakeLists.txt
index 254db70acf8375c8e93dd4065c335466dcea3d15..48022c3f85cf7cf0154793d27724cefb90844e9b 100644
--- a/src/modules/ClusteringAnalog/CMakeLists.txt
+++ b/src/modules/ClusteringAnalog/CMakeLists.txt
@@ -6,7 +6,6 @@ CORRYVRECKAN_ENABLE_DEFAULT(ON)
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/ClusteringSpatial/CMakeLists.txt b/src/modules/ClusteringSpatial/CMakeLists.txt
index a38b8cbacca8b959b4d8101c53a8608e28461eaf..7c4a55b51433be3e20853ecb0630218a08037bba 100644
--- a/src/modules/ClusteringSpatial/CMakeLists.txt
+++ b/src/modules/ClusteringSpatial/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/Correlations/CMakeLists.txt b/src/modules/Correlations/CMakeLists.txt
index 3e9dbf27d5e2920e6819f252e5d02db34521cee6..79b36af9fd0b9532a33e2f2afe408b6dfdeabb3e 100644
--- a/src/modules/Correlations/CMakeLists.txt
+++ b/src/modules/Correlations/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/EtaCalculation/CMakeLists.txt b/src/modules/EtaCalculation/CMakeLists.txt
index ba2f81ee103333fbac5b76faaf8c4e1258fbdada..962964b4c35909cbff346e90ccc42f611a0233bd 100644
--- a/src/modules/EtaCalculation/CMakeLists.txt
+++ b/src/modules/EtaCalculation/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/EtaCorrection/CMakeLists.txt b/src/modules/EtaCorrection/CMakeLists.txt
index 4bf1b8f445d8cf6c5f01830f0f369e7eca8154e7..25f6753a0c60fdcb222cf7d4000d8919083cb397 100644
--- a/src/modules/EtaCorrection/CMakeLists.txt
+++ b/src/modules/EtaCorrection/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/EventLoaderFASTPIX/CMakeLists.txt b/src/modules/EventLoaderFASTPIX/CMakeLists.txt
index 4c9a08a4ade29f97036896e81db322641ab7156d..054302a08b8d2e1add6db047a084935accb64d38 100644
--- a/src/modules/EventLoaderFASTPIX/CMakeLists.txt
+++ b/src/modules/EventLoaderFASTPIX/CMakeLists.txt
@@ -5,7 +5,6 @@
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "FASTPIX")
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/MaskCreator/CMakeLists.txt b/src/modules/MaskCreator/CMakeLists.txt
index c85da6568562bd781c898fcd4fa23e6f32e6fddb..521b7ab372cd2e263a4d8a290888c3cc1a1ad421 100644
--- a/src/modules/MaskCreator/CMakeLists.txt
+++ b/src/modules/MaskCreator/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/MaskCreatorTimepix3/CMakeLists.txt b/src/modules/MaskCreatorTimepix3/CMakeLists.txt
index bdbbfd742ce951ff431920ee87862537b3e0bf31..f5392ac605e7ddd4503fedee4189681d25214a2c 100644
--- a/src/modules/MaskCreatorTimepix3/CMakeLists.txt
+++ b/src/modules/MaskCreatorTimepix3/CMakeLists.txt
@@ -5,7 +5,6 @@
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_DETECTOR_TYPE(${MODULE_NAME} "Timepix3")
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}
diff --git a/src/modules/Prealignment/CMakeLists.txt b/src/modules/Prealignment/CMakeLists.txt
index 8447340c88b6cc7e3a575be656acd80c91fbc908..7d278deef12375e3d6f6dc23d79c9881af35b55f 100644
--- a/src/modules/Prealignment/CMakeLists.txt
+++ b/src/modules/Prealignment/CMakeLists.txt
@@ -4,7 +4,6 @@
 # Define module and return the generated name as MODULE_NAME
 CORRYVRECKAN_DETECTOR_MODULE(MODULE_NAME)
 CORRYVRECKAN_EXCLUDE_AUX(${MODULE_NAME})
-CORRYVRECKAN_EXCLUDE_PASSIVE(${MODULE_NAME})
 
 # Add source files to library
 CORRYVRECKAN_MODULE_SOURCES(${MODULE_NAME}