diff --git a/src/calng/JungfrauCorrection.py b/src/calng/JungfrauCorrection.py
index 03a8f27e0fdbcf29d2b1f867e553d6ffb9d948fa..9209ffe7023c7ed263a2d06f15c499ceebaf8ce3 100644
--- a/src/calng/JungfrauCorrection.py
+++ b/src/calng/JungfrauCorrection.py
@@ -44,9 +44,7 @@ class JungfrauGpuRunner(base_gpu.BaseGpuRunner):
         input_data_dtype=cupy.uint16,
         output_data_dtype=cupy.float32,
         bad_pixel_mask_value=cupy.nan,
-        burst_mode=False,
     ):
-        self.burst_mode = burst_mode
         self.input_shape = (memory_cells, pixels_y, pixels_x)
         self.processed_shape = self.input_shape
         super().__init__(
@@ -79,12 +77,16 @@ class JungfrauGpuRunner(base_gpu.BaseGpuRunner):
                 "input_data_dtype": utils.np_dtype_to_c_type(self.input_data_dtype),
                 "output_data_dtype": utils.np_dtype_to_c_type(self.output_data_dtype),
                 "corr_enum": utils.enum_to_c_template(CorrectionFlags),
-                "burst_mode": self.memory_cells > 1,
+                "burst_mode": self.burst_mode,
             }
         )
         self.source_module = cupy.RawModule(code=kernel_source)
         self.correction_kernel = self.source_module.get_function("correct")
 
+    @property
+    def burst_mode(self):
+        return self.memory_cells > 1
+
     def _get_raw_for_preview(self):
         return self.input_data_gpu
 
@@ -305,7 +307,6 @@ class JungfrauCorrection(BaseCorrection):
 
         self._kernel_runner_init_args = {
             "bad_pixel_mask_value": self.bad_pixel_mask_value,
-            "burst_mode": False, # TODO
         }
 
     def process_data(