Manual Operation

How to manually operate your PANOPTES unit to take custom pictures.

Instruction set title (step label):

Manual Operation (MANUAL)

Validity date of this instruction set:

2020.02 - now

Prerequisite steps:



Describes how to observe interesting astronomical targets, including known exoplanet transits.

Something unclear? Please email [email protected] or post on the forum at


This document provides advice and a general outline on how to conduct manual observations of interesting targets with your PANOPTES unit for fun, outside of its default survey mode in POCS. Note that the default survey mode, described in the POCS Automated Operation Guide, would be a good prerequisite step for testing newly-deployed units.

M93 Butterfly Cluster (PAN001, Mauna Loa)

M31 Andromeda Galaxy (PAN012, Mt. Wilson)

Finding targets

With a rather large 10° by 15° field of view, PANOPTES units have photographed everything from bright galaxies, nebulae, star clusters, the Milky Way, and even comets! The celestial coordinates for your targets (Right Ascension, abbreviated as RA or α, and Declination, abbreviated as DEC or δ) can be obtained through an astronomical almanac, star charts, or an astronomy app.

Note that solar system planets might not be as ideal targets for PANOPTES units, because the large field of view doesn’t offer the magnification necessary to resolve any detail (ie. the rings of Saturn or the cloud patterns on Jupiter). Also note that in POCS, it isn’t currently possible to photograph the Sun (which would require solar filters to protect the camera detectors) or the Moon, as by default POCS has been programmed to avoid these targets.

Known exoplanet transits

- your unit can also observe known exoplanet transits!

- learn how to pick transits: see Using the Swarthmore Transit Finder in the Appendix

Consider observing transits with the following:

100% visibility, plus ~an hour before and after

Bright star

(magnitudes ~)


Observing preparations

Once you have a target in mind, quickly run through a checklist similar to the following to get set up before observing.

1. Check sky conditions

Because the Moon can drastically brighten the night sky, be aware of its current phase (which also determines the time it rises and sets). You can use an online calendar (such as the Lunar Calendar at to check this. Depending on how close the Moon is to full, you may have to compensate for extra brightness in your camera’s exposure length later.

It can also be helpful to view an hourly forecast of the night’s weather beforehand, to help you plan your time accordingly. Note that offers hourly forecasts based on location for many parts of the world. Additionally, if your unit is located nearby an observatory, it’s possible that it has its own weather station or cloud cover webcams that update online.

2. Plot star trails

(This step is optional.) You can use a program like Stellarium ( or iObserve ( to watch the path your target traces in the sky over time. This will help you get an idea for which part of the sky the target is in, and see how close it is to the Moon.

3. Create scheduler file

Set up a custom scheduler file for your target(s): in a terminal window on the NUC, change directory to the scheduler directory (at $POCS/resources/targets), then create a new .yaml file using the following scheme to specify observation parameters for each target.


Target name: allowed characters include letters, numbers, spaces, and hyphens (-).


RA and DEC coordinates formatted in hours-minutes-seconds and degrees-minutes- seconds, respectively.


An arbitrary number you can set to bias the scheduler toward picking certain targets (optional; default: 100). A relatively larger number = higher priority. Must be greater than 1.


Exposure time in seconds (optional; default: 120). Take the Moon phase and proximity into account! Note that this can be adjusted while observing.


Minimum number of exposures to take during the observation (optional; default: 60).


The exposures will be taken in smaller sets of this size (optional; default: 10). The minimum number of exposures (min_nexp) must be an integer multiple of this size!

Note: An observation may consist of more exposures than min_nexp but exposures will always come in groups of exp_set_size.

EXAMPLE 1 andromeda.yaml


name: Andromeda Galaxy

position: 00h42m44s +41d16m09s

priority: 100

exptime: 120

min_nexp: 10

exp_set_size: 2

EXAMPLE 2 star_wars.yaml


name: Tatooine

position: 11h03m22s +63d09m00s

priority: 100

exptime: 60

min_nexp: 15

exp_set_size: 3


name: Arvala-7

position: 03h45m01s -07d15m31s

priority: 100

exptime: 100

min_nexp: 10

exp_set_size: 2


name: Alderaan

position: 05h29m47s -01d34m01s

priority: 500

exptime: 120

min_nexp: 6

exp_set_size: 3

Tip: in the scheduler .yaml file, use a hyphen (-) on a new line in front of each new target, and hit Tab in front of each parameter to indent it properly.

- add some tips for observing from a light-polluted area (ie. city)

- include illustrative comparison between good and bad sky darkness (ie.

mauna loa vs. pasadena)

- camera settings

- approx magnitude ranges

4. Update POCS Configuration

In the pocs_local.yaml configuration file under scheduler, change the fields_file from the survey mode target list to the filename of your new scheduler file, from the previous step.

Make sure to also enable the setting for POCS to follow changes to the scheduler file so that you can tweak parameters, such as exposure time, while observing: under scheduler, set check_file to true.

Tip: the scheduler part of pocs_local.yaml should now look something like:


check_file: true

fields_file: star_wars.yaml


After editing the config file, restart the config server: docker restart config-server

Observing sequence overview

A high-level description for starting and fine-tuning observations follows, with links to relevant sections from the POCS Automated Operation Guide and Appendix for further instructions. Sample log file excerpts are also included to help you know what to expect and easily recognize important messages.

1. Start PEAS and POCS

Start PEAS, and optionally check that the last readings from the camera board and weather station look OK – see Starting PEAS Shell for all commands.

Then start POCS if it’s not already running, or if it hasn’t been restarted since changing the scheduler filename in pocs_local.yaml – see Starting POCS Shell.

Make sure to have both PEAS and POCS log files visible, as you will need to monitor them for errors now and while you observe.

In the POCS log, check that both cameras were detected after running setup_pocs. For each camera, you’ll see confirmation messages similar to the following as it is connected. (If one or both are not detected, try re-running setup_pocs.)


D0213 05:03:10.384] Camera created: Canon00 (XXXXXX) on usb:001,024

D0213 05:02:52.824] Connecting to camera

D0213 05:02:52.846] Getting output from proc 133

D0213 05:03:01.305] gphoto2 command: ['/usr/local/bin/gphoto2', '--port', 'usb:001,023', '--set-config-index', '/main/action s/viewfinder=1', '--set-config-index

', '/main/capturesettings/autoexposuremode=3', '--set-config-index', '/main/capturesett

ings/continuousaf=0', '--set-config-index', '/main/capturesettings/drivemode=0', '--set

-config-index', '/main/capturesettings/focusmode=0', '--set-config-index', '/main/captu

resettings/shutterspeed=0', '--set-config-index', '/main/imgsettings/imageformat=9', '-

-set-config-index', '/main/imgsettings/imageformatcf=9', '--set-config-index', '/main/i

mgsettings/imageformatsd=9', '--set-config-index', '/main/imgsettings/iso=1', (ETC.)]



D0213 05:03:10.262] Canon00 connected

2. Begin observing

In POCS, begin observing by doing run_pocs, and follow along what the unit is doing by watching the POCS log file. If anything goes wrong past this point, you can hit Ctrl+C to stop observing and park the unit. (If possible, wait for current exposures to finish before doing so.)


I0122 05:06:45.901] PANCHAT Ok, I'm all set up and ready to go!

I0122 05:06:50.739] PANCHAT Ok, I'm finding something good to look at…


I0213 05:06:52.470] PANCHAT Got it! I'm going to check out: Alderaan

I0213 05:06:57.820] PANCHAT I'm slewing over to the coordinates to track the target.

D0213 05:06:57.821] Slewing to target


I0213 05:07:25.411] PANCHAT I'm at the target, checking pointing.

I0213 05:07:31.788] PANCHAT Taking pointing picture.

I0213 05:07:32.325] Taking pointing image 1/5 on: Canon01 [Primary] (01abcd) on usb:001,002

D0213 05:07:32.333] image_id: PAN000_01abcd_20200213T050732

D0213 05:07:32.334] Taking 30.0 s exposure on Canon01: /var/panoptes/images/fields/Alderaan/01abcd/20200213T050652/pointing00.cr2

D0213 05:08:02.893] Waiting for pointing events: 30 seconds elapsed

As you can see from the log, POCS will start by selecting a target from your scheduler file. Then it’ll slew the mount to that part of the sky, and take a few pointing images using your primary camera. These are short exposures (30 seconds long by default) that POCS analyzes to help very precisely aim the mount at your target.

Once the target coordinates have been perfectly centered in the camera field of view, your unit will start taking the actual photos, following the exposure settings you’ve specified in the scheduler file. Both cameras will take exposures at the same time, of the same field of view.

3. Check first exposures

After the first few images have been taken, you can take a look to make sure the photos are satisfactory. Each exposure will be saved as the 3 following file types:

  • The original .cr2 image: the Canon raw file format, which saves all exposure data. With regards to astrophotography, raw files are good for artistic image processing in an editing program such as Adobe Lightroom or Photoshop.

  • A .fits image: a file type commonly used in astronomy and scientific image processing. FITS files will require a specialized program to open (see Checking FITS exposure with DS9 in the Appendix). Note that on the secondary camera, the FITS files will be immediately compressed, with the extension .fits.fz

  • A .jpeg image: this will have a much smaller file size, and is a good format for posting on the Internet. POCS generates these to have a timestamp and additional information displayed along the bottom of the photo.

The filenames of these photos will be the UTC timestamp at which they were taken.

The photos will all be located on the NUC under

/var/panoptes/images/images/fields/[TARGET NAME]/[CAMERA ID]/ [TIMESTAMPED FOLDER]

where the formatting and capitalization of TARGET NAME will have been determined by POCS, and the TIMESTAMPED FOLDER will be the UTC date that the observation was started.

Tip: you can easily copy image file paths from the POCS log output as you wait for the images to be taken.


I0226 07:59:34.831] PANCHAT I'm finding exoplanets!

D0226 07:59:34.832] Getting headers for : Alderaan: 120.0 s exposures in blocks of 10, minimum 60, priority 500

D0226 07:59:35.368] Exposing for camera: Canon00

D0226 07:59:35.377] image_id: PAN012_358d0f_20200226T075935

D0226 07:59:35.378] Taking 120.0 s exposure on Canon00: /var/panoptes/images/fields/Alderaan/345efg/20200213T050652/20200213T051030.cr2

D0226 07:59:35.401] Exposing for camera: Canon01

D0226 07:59:35.413] image_id: PAN012_95cdbc_20200226T075935

D0226 07:59:35.414] Taking 120.0 s exposure on Canon01: /var/panoptes/images/fields/Alderaan/01abcd/20200213T050652/20200213T051030.cr2

D0226 08:00:05.923] Waiting for observing events: 30 seconds elapsed

Notice that:

  • The filenames and paths from either camera are identical, except for the camera folder name

  • The filename of the original .cr2 raw file will be the same as the .jpeg and .fits files, once the raw file has been converted to these formats. So, the path from the log can be used for any file type; just change the extension at the end.

You can either view the photos directly on the NUC (if you are with the unit and there is a computer monitor connected) or copy them over to your computer using the scp command.

Tip: the scp command goes as follows (run it in a terminal window on your computer)


Example: scp [email protected]:/var/panoptes/images/fields/ Alderaan/345efg/20200213T050652/20200213T051030.jpg ~/Documents/PANOPTES_obs/

4. Make adjustments

(This step is optional.) You can adjust the observation as necessary (ie. increase exposure time if target is too faint) by editing the parameters you’ve set in the scheduler file.

5. Monitor observations

Keep the terminal window open and continue to occasionally check the POCS log file output for observing progress and any errors.

Tip: at this point it may be a good idea to start writing down a short summary of how the observation is going, ie. in an observing log notebook, for your own records. In the future, you can refer to this to keep track of what you’ve observed and plan camera settings, such as which exposure length was optimal for a target of a given magnitude.

Returning to survey mode

Follow these steps when you’re done observing to have your unit resume its automated nightly sky survey operations.

  • In the pocs_local.yaml configuration file, change the fields_file back to the survey mode target list. Currently, PANOPTES units are set to look at TESS sectors (, which are defined in the tess_sectors_north.yaml and tess_sectors_south.yaml files. Set your unit to view the TESS sectors corresponding to its location in the northern or southern hemisphere.

  • Restart config server afterwards.

  • Restart POCS.


Using the Swarthmore Transit Finder

The online Swarthmore Transit Finder ( makes it easy to search across various databases for stars with known exoplanet transits.

Fill out the form and hit Submit to generate a table of upcoming transits visible from your unit’s location. It may help to narrow down results by setting the following constraints on the form (change as needed based on your location's sky conditions):


Only show transits with a depth of at least 5 millimag (5 “parts per thousand”, or ppt).

V magnitude

Only show targets brighter than visual magnitude V = 12.

Day/night definition (Under Output format and labeling)

Start night at Sun altitude of −18 degrees (astronomical twilight)

After getting query results back as a table from the Swarthmore site, it can be useful to sort the results by % of transit visible, then local evening date, as shown in the GIF below.

Tip: To view transits with the same constraints at a later date, you can bookmark the results page URL. No need to fill out the form next time!

About meridian flips

The following information may be helpful when planning long, time-sensitive observations of known exoplanet transits.

What is a meridian flip?

In astronomy, the meridian is defined to be the circle intersecting the zenith at your location (the highest point in the sky, directly overhead) and both celestial poles. In the above animation, the star Sirius crosses the meridian, the line shown in green, as the sky rotates over a few hours. At this point on the meridian, Sirius reaches its highest elevation in the night – after it has risen from the east and is beginning to set in the west.

Similarly, if the target you're observing crosses the meridian, the German Equatorial-style mount that PANOPTES units use will need to swing over and reposition itself to continue tracking that part of the sky. This repositioning of the mount is called a meridian flip. (The photos on this webpage can help you visualize why the mount does this. 🔭)

How will a meridian flip affect observations?

The POCS scheduler vetoes targets that are going to cross the meridian during the minimum observing window (which is 60 120-second exposures long, by default) because after the mount flips, all the stars being photographed will potentially end up on completely different parts of the camera detector. With Project PANOPTES being an exoplanet survey, this is not ideal for generating transit light curves from the photos later on, because the data before and after the flip should be treated as 2 different observations and will have to be processed separately. So if possible, try to pick targets that either keep rising, or keep decreasing in elevation for as long as you plan to observe, to avoid the need for a flip.

Tip: One of the columns on the Swarthmore site lets you check each star’s elevation throughout the transit. When choosing a target, you may wish to prioritize this after factors such as the percentage of transit visible, star brightness, and transit depth.

Otherwise, it’s possible to work around the scheduler vetoing the target by shortening the minimum observing window: in the scheduler file, set min_nexp and exp_set_size to be small (ie. 1) for the target. If the target is the only one in the scheduler, it will be observed for as long as possible. However, note that mount tracking errors may occur in POCS, which could interrupt or stop observations altogether. In addition, the scheduler will also re-run more frequently, wasting around 20 seconds of time in between exposure sets.

The following animations demonstrate whether or not a meridian flip is needed for two different targets. The meridian is the vertical line, and the target trail is plotted in orange.

Flip required: target crosses meridian

No flip required: target stays west of meridian

Checking FITS exposure with DS9

DS9 ( is a program that astronomers like to use to view FITS files.

Download DS9 for your operating system at:

Once installed on your computer, click on the FITS file you wish to view. (You may need to right-click select “SAOImageDS9” to be the program to open FITS files by default.)

The following is an example of an observation FITS file opened in DS9.

When you move the cursor around the image, the info in the top left corner (Value/counts, RA/Dec, image xy coordinates) will update.

(Explain WCS)

Also notice that the “counts” value for the stars are higher than those of the surrounding background pixels. The brightness of a pixel on the Canon camera detector is given here in “counts” (as in # of photons recorded). The maximum brightness that can be recorded before the detector becomes saturated is ~13,000 counts. To get count readings for a specific target, go to Analysis > Name Resolution… (second option) and type in the object’s name in the window that comes up. Click the Resolve button, then on the top menu bar, select File > Crosshair To and then File > Pan To. The counts for the star will be in the Value box at the top left of DS9.

For an optimal exposure time, the counts on the main target should be around ~7000, but shouldn’t exceed 10,000. The counts for the background should be as low as possible.

Plate solving with

In astronomy, “plate solving” means figuring out which part of the sky your camera was aimed at, using software to find a match between the pattern of stars in your image and existing star catalogs. ( is a popular online plate solving tool commonly used by astrophotographers, which can output an image’s exact sky coordinates (RA and DEC) and other information, such as any interesting deep sky objects or planets contained in the field of view.

You can upload your images to

  • Through the web interface, at, you can upload any jpeg/fits/etc photos to plate solve an image of the sky containing stars. The process will take a few minutes. After it’s done, you can get more information about the photo, such as interesting objects in the field of view