Index: /branches/eam_branches/ipp-20220316/fpcamera/src/fpcameraParseCamera.c
===================================================================
--- /branches/eam_branches/ipp-20220316/fpcamera/src/fpcameraParseCamera.c	(revision 42314)
+++ /branches/eam_branches/ipp-20220316/fpcamera/src/fpcameraParseCamera.c	(revision 42315)
@@ -24,6 +24,9 @@
     if (!psphotSetMaskBits (config)) ESCAPE (PS_ERR_UNKNOWN, "failed to set mask bit values");
 
-    // the input smf file is a required argument
-    pmFPAfileDefineFromArgs (&status, config, "FPCAMERA.INPUT.ASTROM", "INPUT.ASTROM");
+    // the input smf file is a required argument.  the smf file is distinct from the input
+    // chips (FPCAMERA.INPUT = input).  accept the return argument to set the selected
+    // chips in this pmFPAfile (as well as input)
+
+    pmFPAfile *astro = pmFPAfileDefineFromArgs (&status, config, "FPCAMERA.INPUT.ASTROM", "INPUT.ASTROM");
     if (!status) ESCAPE(FPCAMERA_ERR_CONFIG, "Failed to build FPA from FPCAMERA.INPUT.ASTROM");
 
@@ -55,7 +58,9 @@
     if (chips->n > 0) {
 	pmFPASelectChip (input->fpa, -1, true); // deselect all chips
+	pmFPASelectChip (astro->fpa, -1, true); // deselect all chips
 	for (int i = 0; i < chips->n; i++) {
 	    int chipNum = atoi(chips->data[i]);
-	    if (! pmFPASelectChip(input->fpa, chipNum, false)) ESCAPE(FPCAMERA_ERR_CONFIG, "Chip number %d doesn't exist in camera.\n", chipNum);
+	    if (! pmFPASelectChip(input->fpa, chipNum, false)) ESCAPE(FPCAMERA_ERR_CONFIG, "Chip number %d doesn't exist in input chip images.\n", chipNum);
+	    if (! pmFPASelectChip(astro->fpa, chipNum, false)) ESCAPE(FPCAMERA_ERR_CONFIG, "Chip number %d doesn't exist in astrometry file.\n", chipNum);
         }
     }
