Index: trunk/ppImage/src/ppImageAstrom.c
===================================================================
--- trunk/ppImage/src/ppImageAstrom.c	(revision 15136)
+++ trunk/ppImage/src/ppImageAstrom.c	(revision 15137)
@@ -19,7 +19,4 @@
     PS_ASSERT (input, false);
 
-    // deactivate the psastro files, reactive when needed
-    // XXX ??? pmFPAfileActivate (config->files, true, "PSASTRO.OUTPUT");
-
     // convert the output sources created by psphot into astrometry objects
     if (!psastroConvertFPA (input->fpa, recipe)) {
@@ -33,4 +30,31 @@
     }
 
+    // deactivate the psastro files, reactive when needed
+    pmFPAfileActivate (config->files, false, NULL);
+    pmFPAfileActivate (config->files, true, "PSASTRO.OUTPUT");
+
+    // loop over all chips and perform IO needed
+    pmFPAview *view = pmFPAviewAlloc(0);// View for level of interest
+    while ((chip = pmFPAviewNextChip(view, input->fpa, 1)) != NULL) {
+        psLogMsg ("ppImageLoop", 4, "Chip %d: %x %x\n", view->chip, chip->file_exists, chip->process);
+
+        // Output and Close at Chip level
+        if (!pmFPAfileIOChecks(config, view, PM_FPA_AFTER)) {
+            psFree(view);
+            return false;
+        }
+    }
+
+    // Output and Close FPA
+    if (!pmFPAfileIOChecks(config, view, PM_FPA_AFTER)) {
+        psFree(view);
+        return false;
+    }
+
+    // deactivate the PSASTRO files, re-active all else 
+    // XXX do we need a way to activate / deactivate other groups?
+    pmFPAfileActivate (config->files, true, NULL);
+    pmFPAfileActivate (config->files, false, "PSASTRO.OUTPUT");
+
     return true;
 }
