diff --git a/Modules/include/BitMask.h b/Modules/include/BitMask.h
index c28609a395b6a5e0475057b232d45967733d79ea..2a7c25db23c1026c582ba336581dde4170d1613b 100644
--- a/Modules/include/BitMask.h
+++ b/Modules/include/BitMask.h
@@ -32,6 +32,9 @@ namespace ChimeraTK {
       ScalarOutput<int32_t> bitmask{this, "bitmask", "", "Output bit mask."};
 
       void mainLoop() {
+
+        auto readGroup = input.readAnyGroup();
+
         while(true) {
 
           // create bit mask
@@ -44,7 +47,7 @@ namespace ChimeraTK {
           bitmask.write();
 
           // wait for new input values (at the end, since we want to process the initial values first)
-          input.readAny();
+          readGroup.readAny();
         }
       }