The Observatory

In comparison to most professional telescopes, the PEST is tiny.  And it’s not located on a mountain top away from light pollution.

It’s an off-the-shelf 12″ scope sitting in my suburban backyard, protected by a roll-away plywood shelter.  But it has some nice features, all geared towards automated, high quality observations of exoplanets.

The key components;

  1. A 12″ Schmidt-Cassegrain telescope on a computer controlled, motorised fork mount.  Enables computer controlled pointing and tracking of a target as it moves across the sky.  The fork mount avoids the need to re-position the telescope as the target crosses the meridian (its highest point in the sky).  Some mount designs would require a ‘meridian flip’.
  2. QHY183M CMOS camera.  Basically a digital camera, except that it is monochrome, and its sensor is cooled while in operation.  The cooling is to reduce image noise – graininess or speckles in long exposure photographs.  I usually run at -5 °C.
  3. Computer controlled focuser.  Enables auto focusing, which I do at the start of an observation run and every hour after.  Without re-focusing, the image would drift out of focus as the air cools and the telescope tube contracts.
  4. A computer to run everything.  Observations are programmed at the start of the observing session and will run unattended through the night.   No need for me to stay up!
The PEST Observatory: Image Credit: TG Tan
Pre March 2021: View of the back of the scope showing the focuser and camera. Image Credit: TG Tan
View of the telescope with the shelter rolled forward. Image Credit: TG Tan


Now: Back of telescope showing the QHY183M with filter wheel and guide camera. Image Credit: TG Tan


Equipment History

In Sept 2020, my original camera failed.  This section is a record of when particular cameras and other equipment were used at PEST.

2010 to 8 Sept 2020:  SBIG ST-8XME, ‘Audacious Ant‘.  My original camera.

14 Sept 2020 to 26 Feb 2021:  SBIG ST-8XME.  ‘Bowers Beetle‘.   A loan camera from Craig Bowers.

23 Mar 2021 on:  QHY183M, ‘CMOS Slug’.

3 Nov 2021 on:  A set of Astrodon g’, r’, i’, z’ on loan from Perth Observatory installed in place of the B, V, Rc, Ic filters.

29 Nov 2021: Reinstalled BVRI filters.

18 Jan 2022:  Installed Baader g’r’i’zs’ filters.



Technical Details

The description below is current.  Science collaborators who wish to describe the observatory for pre March 2021 observations should refer to this page.

PEST is a backyard observatory with a 12” Meade LX200 SCT f/10 and focal reducer yielding f/4.6.  The camera is a QHY183M with a QHY-CFW3 filter wheel loaded with B, V, Rc, Ic [from 18th Jan 2022, g’r’i’zs’] and Clear filters.  One of the filter slots is occupied by a blocking ‘filter’, used for taking dark frames (the CMOS camera does not have a physical shutter).  Guiding is done with a QHYOAG-S off-axis guider with QHY 5L-II-M guide camera.  Focusing is computer controlled with an Optec TCF-Si focuser.

The observatory is controlled using a laptop running Windows 10 with the following software.  Voyager to script observations, control the camera, manage focusing, and guiding through PHD2.  Both PinPoint and ASTAP are used for plate solving.  The default is Pinpoint, but ASTAP is more robust to initial pointing error so is used as a backup, and if a blind solve is needed.  Internet connection is available.  Dimension 4 is used to synchronize the PC clock with a set list of atomic clocks.  This synchronization is done at observatory startup then every 30 minutes.

The telescope and computer are housed in a roll-off plywood enclosure which is opened and closed manually.

This setup enables completely automated (other than roll-off/on) observations throughout the night, including the acquisition of sky flat frames at dusk and/or dawn, and if necessary other calibration frames.


PEST is located at 31° 58’ S, 115° 47’ E, elevation 24m, in a suburb of the city of Perth, Western Australia.  Distance from the city centre is about 8km, and the site suffers from the resulting skyglow.



The field of view is 32 arcmin x 21 arcmin.   Image scale for all observations is 0.71 arcsec/pixel.  The native image scale is just 0.35 arcsec/pixel but all images are binned 2×2 off-camera.

Exoplanet transit observations are usually done with the Rc filter and individual image integration times of 120s if a star is dimmer than about Vmag = 10.5.  For images in focus the star FWHM achieved is between 3 to 5 arcsec.  Intentional de-focusing is not usually done because the small image scale ensures the star image is spread over many pixels anyway, and most observations also aim to resolve close neighbouring stars in order to make sure they are not the source of the transit signal.

A normal night’s observation starts with the observatory being rolled back, laptop connected and telescope switched on.  Voyager is then started.  Prior to the this I will have prepared the Voyager script (a ‘Dragscript‘) for the night.  I usually re-use a standard script which just needs to be modified with target information, and calibration frames requested.  Connection to all equipment is made and camera cooling started.  The script waits for the sun to set to specified altitude, then if required, starts an automatic sky flat sequence.  The CMOS camera uses an electronic shutter so exposure times can be much shorter than with a physical shutter.  In addition, image download times even with the 40MB unbinned files are only ~2s so that many flat frames can be acquired before it gets too dark.  My current practice is to take 200 raw flats per filter, with exposure times down to 0.05s.  These are not really ‘dusk’ or ‘dawn’ flats given that the sun will be about 6° high at the start.  A better description is ‘blue-sky’ flats!

Once this is finished the script waits for darkness, then slews the scope to a point near the zenith, does a blind plate solve and synch.  I do this so that subsequent slews will be more accurate.  If the target has not risen yet, dark frames may be taken at this point.  At the start of target observations a focus run is done by slewing to a nearby bright star and focusing, before slewing back to the target.  Focusing is then re-done every hour.  Voyager automates all these, including selecting focus stars.

The full observation sequence takes place unattended, although Voyager has a nice feature which enables messages to be sent as the script runs.  I use Telegram as the messaging facility, although you can also use SMS.  Through the night, if all is well I will get a message every hour.  Any errors that arise will be notified as well.  For serious errors the message will come through a separate ‘Urgent’ account which will result in an audible notification on my phone.

As the sky brightens just before dawn, or if the target has set, Voyager will stop data acquisition, then wait for further light before starting to take sky flats, if needed.  On completion of the night’s sequence, Voyager parks the scope, copies data to my home NAS, and warms up the camera.  All I have to do when I wake up is to turn off the telescope, disconnect the laptop and close the observatory.


Camera Technical Data and Linearity

The QHY183M camera has excellent linearity and low noise.  When I first got the camera I had not used a CMOS sensor for photometry before, and there was very limited information online about how they would perform.   So I ran some very detailed tests, which are documented here.  I also produced a full calibration sheet for the camera.


Bit depth

The camera analog digital convertor (ADC) is 12-bit.  So it produces numbers from 0 to (212 – 1) = 4,095.  But the camera driver converts this to ‘pseudo 16-bit’ by multiplying by 16 before output, giving a range of 0 – 65,520.  The gain quoted below is referenced to the ‘native’ or 12-bit ADU, i.e. the output of the camera driver/16.

My processing pipeline uses the 16-bit ADUs as output, but binned 2×2.  Binning is done by averaging each group of 2×2 pixels.  For example, say the 4 pixels to be binned together have ADU’s of 32, 64, 48, 64.  The binned pixel ADU is then 52.  This does not result in any loss of information through rounding because the original ADUs are always multiples of 16.   I do binning post acquisition with my custom written FITSbin utility because the camera driver bins by adding ADUs, which would result in loss of information if the sum exceeds 65,535.  See a much deeper discussion of binning strategies here.


Gain and Offset settings

It is possible to set both Gain and Offset in the camera driver.  All my observations and measurements are made with Gain = 0 and Offset = 8.  Note that I capitalise to indicate that these are settings, so setting ‘Gain’ to 0 gives gain of 3.78 e-/ADU.

The Gain is set low in order to maximise full-well capacity and dynamic range.  See the charts here.  For exoplanet observations we want to collect as many photons as possible without saturating the pixels.

The Offset setting gives a bias level (i.e. ADU level without any light) of 512 (12-bit ADU = 32).  This avoids the situation where, due to random variations in pixel readings, there are negative numbers which would be truncated to zero.


Measurement of gain and read noise

The native gain of my QHY183M CMOS camera is measured to be 3.78 e-/ADU with a read noise of 2.7e-.  I used the method described by Michael Newberry of Mirametrics in a technical note.  In outline, pairs of images are given the same exposure.  This signal level in terms of (native, 12-bit) ADU is noted.  Then a small sub-frame in one member of the pair is subtracted from the other, and the variance of this difference image is noted.  This is repeated for many signal levels all the way up to saturation.  The signal levels are then plotted against corresponding variance.  The slope of this graph is the gain.

Gain calculation, 12-bit (native) ADU.



Linearity is excellent up to about 3,300 native ADU, or 52,800 16-bit ADU.  The plot of ADU vs exposure shows how the response rolls over as saturation is reached.  For photometry, all pixels above 52,800 ADU will be marked invalid.

See here for a more detailed discussion.

Full linearity plot

Well depth

The number of electrons captured per pixel at saturation is the well depth.  Saturation is at 3,300 native ADU and gain = 3.78 e-/ADU, so well depth = 3300 x 3.78 = 12,500 e-.

The well depth of my old ST-8XME was 100,000 e-.  I was concerned that the much smaller well depth would mean I would be able to capture much less signal before saturation, leading to lower precision per frame.   But the QHY183M pixels are much smaller those of the ST-8XME – 2.4 micron vs 9 micron.   Given the same optical system, a better comparison is well depth per unit sensor area.  Per square micron, the QHY183M well depth is 2,170 vs 1,235 for the ST-8XME so for a given exposure time I can now observe brighter stars, capturing more photons, than before.