diff --git a/src/cal_tools/lpdlib.py b/src/cal_tools/lpdlib.py
index 6d0054ef3e367623e7a27da3cee380a9e35545f8..eec0c11b411385b53d8580ecd2d03acf2b78abda 100644
--- a/src/cal_tools/lpdlib.py
+++ b/src/cal_tools/lpdlib.py
@@ -4,7 +4,7 @@ from typing import Optional
 from warnings import warn
 
 import numpy as np
-from extra_data import RunDirectory
+from extra_data import RunDirectory, SourceNameError
 
 
 def get_mem_cell_pattern(run, sources) -> np.ndarray:
@@ -15,7 +15,11 @@ def get_mem_cell_pattern(run, sources) -> np.ndarray:
     """
     patterns = []
     for source in sources:
-        cell_id_data = run[source, 'image.cellId'].drop_empty_trains()
+        try:
+            cell_id_data = run[source, 'image.cellId'].drop_empty_trains()
+        except SourceNameError:
+            continue  # Source missing
+
         if len(cell_id_data.train_ids) == 0:
             continue  # No data for this module
         cell_ids = cell_id_data[0].ndarray().flatten()