diff --git a/notebooks/Jungfrau/Jungfrau_gain_Spectra_Fit_Summary_NBC.ipynb b/notebooks/Jungfrau/Jungfrau_gain_Spectra_Fit_Summary_NBC.ipynb
index 49a5814a16d73372d62aa06fcb266e4782d20c86..8f932e8c4ffe58c8ab1e3911ee000a3323e060e5 100644
--- a/notebooks/Jungfrau/Jungfrau_gain_Spectra_Fit_Summary_NBC.ipynb
+++ b/notebooks/Jungfrau/Jungfrau_gain_Spectra_Fit_Summary_NBC.ipynb
@@ -46,13 +46,12 @@
     "import matplotlib.gridspec as gridspec\n",
     "import matplotlib.pyplot as plt\n",
     "import numpy as np\n",
-    "import yaml\n",
     "from IPython.display import Markdown, display\n",
     "\n",
     "matplotlib.use(\"agg\")\n",
     "%matplotlib inline\n",
     "\n",
-    "from cal_tools.plotting import init_jungfrau_geom, show_processed_modules_jungfrau\n",
+    "from cal_tools.plotting import init_jungfrau_geom\n",
     "from cal_tools.tools import CalibrationMetadata\n",
     "from XFELDetAna.plotting.simpleplot import simplePlot\n",
     "from cal_tools.restful_config import calibration_client\n",
@@ -82,26 +81,6 @@
     "da_to_pdu = {k: v[\"physical_name\"] for k, v in da_mapping.items()}"
    ]
   },
-  {
-   "cell_type": "code",
-   "execution_count": null,
-   "metadata": {},
-   "outputs": [],
-   "source": [
-    "# display(Markdown('## Processed modules'))\n",
-    "\n",
-    "# processed_modules = list(da_to_pdu.values())\n",
-    "# processed_pdus = list(da_to_pdu.keys())\n",
-    "\n",
-    "# show_processed_modules_jungfrau(\n",
-    "#     jungfrau_geom=geom,\n",
-    "#     constants=[\"RelativeGain10Hz\", \"BadPixelsFF10Hz\"],\n",
-    "#     processed_modules=processed_modules,\n",
-    "#     expected_modules=expected_modules,\n",
-    "#     display_module_names=processed_pdus,\n",
-    "#     )"
-   ]
-  },
   {
    "cell_type": "code",
    "execution_count": null,
diff --git a/notebooks/Jungfrau/Jungfrau_gain_map_Summary_NBC.ipynb b/notebooks/Jungfrau/Jungfrau_gain_map_Summary_NBC.ipynb
index 6d9e6e09028950a7423f406848387790c9070cc9..9f1a6ae5e7f8298f14654c124341d6f1192a5b18 100644
--- a/notebooks/Jungfrau/Jungfrau_gain_map_Summary_NBC.ipynb
+++ b/notebooks/Jungfrau/Jungfrau_gain_map_Summary_NBC.ipynb
@@ -44,12 +44,14 @@
     "import matplotlib\n",
     "import matplotlib.pyplot as plt\n",
     "import numpy as np\n",
-    "from IPython.display import Markdown, display\n",
+    "import tabulate\n",
+    "from IPython.display import Latex, Markdown, display\n",
     "\n",
     "matplotlib.use(\"agg\")\n",
     "%matplotlib inline\n",
     "\n",
-    "from cal_tools.plotting import init_jungfrau_geom, show_processed_modules_jungfrau\n",
+    "from cal_tools.enums import BadPixels\n",
+    "from cal_tools.plotting import init_jungfrau_geom\n",
     "from cal_tools.restful_config import calibration_client\n",
     "from cal_tools.calcat_interface import CalCatApi"
    ]
@@ -77,34 +79,41 @@
     "da_to_pdu = {k: v[\"physical_name\"] for k, v in da_mapping.items()}"
    ]
   },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "## Created gain calibration constants"
+   ]
+  },
   {
    "cell_type": "code",
    "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
-    "# display(Markdown('## Processed modules'))\n",
-    "\n",
-    "# processed_modules = list(da_to_pdu.values())\n",
-    "# processed_pdus = list(da_to_pdu.keys())\n",
     "const_names_dict = {\n",
     "    \"RelativeGain10Hz\": \"RelativeGain\",  # TODO: This name is not relevant should we display gain instead of Relative??\n",
     "    \"BadPixelsFF10Hz\": \"BadPixelsFF\",\n",
     "}\n",
-    "# show_processed_modules_jungfrau(\n",
-    "#     jungfrau_geom=geom,\n",
-    "#     constants=list(const_names_dict.keys()),\n",
-    "#     processed_modules=processed_modules,\n",
-    "#     expected_modules=expected_modules,\n",
-    "#     display_module_names=processed_pdus,\n",
-    "#     )"
-   ]
-  },
-  {
-   "cell_type": "markdown",
-   "metadata": {},
-   "source": [
-    "## Created gain calibration constants"
+    "\n",
+    "gains = [\"High gain\", \"Medium gain\", \"Low gain\"]\n",
+    "stacked_constants = {g: np.full(geom.expected_data_shape, np.nan) for g in gains}\n",
+    "constants = dict()\n",
+    "\n",
+    "def badpx(constant_name):\n",
+    "   return True if \"bad\" in constant_name.lower() else False\n",
+    "\n",
+    "\n",
+    "def bp_entry(bp):\n",
+    "   return [f\"{bp.name:<30s}\", f\"{bp.value:032b}\", f\"{int(bp.value)}\"]\n",
+    "\n",
+    "\n",
+    "badpixels = [\n",
+    "   BadPixels.FF_NO_ENTRIES,\n",
+    "   BadPixels.FF_GAIN_EVAL_ERROR,\n",
+    "   BadPixels.FF_GAIN_DEVIATION,\n",
+    "]"
    ]
   },
   {
@@ -113,12 +122,16 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "gains = [\"High gain\", \"Medium gain\", \"Low gain\"]\n",
-    "stacked_constants = {g: np.full(geom.expected_data_shape, np.nan) for g in gains}\n",
-    "constants = dict()\n",
-    "\n",
     "for cname in const_names_dict.values():\n",
-    "\n",
+    "   if badpx(cname):\n",
+    "      table = [bp_entry(bp) for bp in badpixels]\n",
+    "      display(Markdown(\"\"\"**The bad pixel** mask is encoded as a bit mask.\"\"\"))\n",
+    "      display(Latex(\n",
+    "         tabulate.tabulate(\n",
+    "               table,\n",
+    "               tablefmt='latex',\n",
+    "               headers=[\"Name\", \"bit value\", \"integer value\"]\n",
+    "         )))\n",
     "   for i, (da, pdu) in enumerate(da_to_pdu.items()):\n",
     "      with h5file(\n",
     "         Path(out_folder) / f\"const_{cname}_{pdu}.h5\",\n",
@@ -131,11 +144,15 @@
     "                  f[\"data\"][..., j],\n",
     "                  axis=-1\n",
     "               ), 0, 1).astype(np.float32 if cname == \"RelativeGain\" else np.uint32)\n",
-    "\n",
+    "   \n",
     "   display(Markdown(f\"### {cname} map per gain\"))\n",
     "   for g in gains:\n",
     "      fig, ax = plt.subplots(figsize=(18, 10))\n",
-    "      vmin, vmax = np.percentile(stacked_constants[g], [5, 95])\n",
+    "      if badpx(cname):\n",
+    "         vmin, vmax = (0, sorted([bp.value for bp in badpixels])[-2])\n",
+    "      else:\n",
+    "         vmin, vmax = np.percentile(stacked_constants[g], [5, 95])\n",
+    "\n",
     "      geom.plot_data_fast(\n",
     "         stacked_constants[g],\n",
     "         ax=ax,\n",