'''[wiki:GraspSwControllerCmd expose]''' [[TracNav(GraspContents)]] ||Command:||'''expose'''|| ||Contexts:||Network socket, serial console, stage2 only|| ||Function:||Take an exposure (integration)|| ||Required Parameters:||None.|| ||Optional Parameters:|| || ||'''nowait'''||Starts a non-blocking exposure. If specified, expose command exits before exposure is complete. Remaining exposure is handled in the background allowing the controller to process other commands during exposure. (>= r5641 stage2 ONLY)|| ||'''abort'''||Aborts any non-blocking exposure currently in progress and closes the shutter. (>= r5641 stage2 ONLY)|| === Usage === This command is used after setting up parameters for an exposure. The last [wiki:GraspSwControllerCmdEtype etype] and [wiki:GraspSwControllerCmdEtime etime] commands used since the controller booted will apply. For example, a 45 second DARK exposure (no shutter activation) is performed as follows: {{{ etype dark etime 45000 expose }}} This command is typically preceded by [wiki:GraspSwControllerCmdClean clean] and followed by [wiki:GraspSwControllerCmdReadout readout]. By default, the expose command does not exit until the exposure is complete. This blocks the controller from handling any other commands for the duration of the exposure. As of stage 2 r5641, an optional '''nowait''' parameter is available to allow the exposure to be handled in the background without blocking command handling during the exposure. For example, a 30 second OBJECT exposure run in the background would be performed as follows: {{{ etype object etime 30000 expose nowait }}} The status of the exposure can then be polled with the [wiki:GraspSwControllerCmdExposing exposing] command. If an exposure launched in the background needs to be stopped prematurely before the entire etime has elapsed, the '''abort''' option can be specified to cut the exposure short and close the shutter: {{{ expose abort }}} Aborting the exposure will result in an unpredictable exposure time. The actual shutter close time (and thus exposure duration) can be determined with the [wiki:GraspSwControllerCmdExposing exposing] command.