Skip to main content

A python package for controlling small optical telescopes

Project description


.. container::

|License| |PyPI Version| |PyPI Python Versions| |PyPI Downloads| |Astropy| |GitHub CI| |Code Coverage| |Documentation Status| |Codespaces Status| |pre-commit| |Black| |isort| |Donate|

This is the repository for pyscope <>_, a pure-Python package for robotic scheduling, operation, and control of small optical telescopes.

pyscope <>_ is an open-source <LICENSE>_ project that provides a set of tools to rapidly and easily control astronomical instrumentation. It is designed to be modular and extensible, allowing users to easily add support for new devices and observatories. pyscope <>_ is built on top of the ASCOM <>_ standard, but also provides support for non-ASCOM devices. Users may also access their devices through third-party applications such as MaxIm DL <>_.

Observatories who use pyscope <>_ can take advantage of the telrun <>_ module, which provides a simple interface for fully-robotic observatory control.

pyscope <>_ is aiming to become an astropy affiliated package <>_.


  • Control observatory hardware with Python

  • Support for ASCOM <>_ and non-ASCOM devices

  • Observatory <>_ convenience methods like run_autofocus <>_ and recenter <>_

  • telrun <>_ module for fully-robotic operation of an observatory

  • Basic data reduction tools like avg_fits <>_ and ccd_calib <>_

  • Simple analysis scripts like calc_zmag <>_

  • Powered by Astropy <>, Astropy-affiliated <> packages, and ASCOM <>_


pyscope is available on PyPI and can be installed with pip:

.. code-block:: bash

pip install pyscope

pyscope will be available on conda-forge soon.

Development Installation


We recommend using a virtual environment for development. You may create a new virtual environment with pip:

.. code-block:: bash

python -m venv pyscope-dev
source pyscope-dev/bin/activate

Or with conda:

.. code-block:: bash

conda create -n pyscope-dev python=3.10.12
conda activate pyscope-dev

To install pyscope for development, clone the repository and install with pip:

.. code-block:: bash

git clone
cd pyscope
pip install -e ".[dev]"




All supporting documentation can be found at readthedocs <>_.


If you use this package in your research, please cite it using the following:

.. include:: CITATION


Please see the developer documentation <>_.


This project is licensed under the GNU AGPLv3 License <LICENSE>_.


Please post any issues you find here <>_.

.. |License| image:: :target: :alt: License

.. |PyPI Version| image:: :target: :alt: PyPI Version

.. |PyPI Python Versions| image:: :target: :alt: PyPI Python Versions

.. |PyPI Downloads| image:: :target: :alt: PyPI Downloads

.. |Astropy| image:: :target: :alt: Powered by Astropy

.. |GitHub CI| image:: :target: :alt: GitHub CI

.. |Code Coverage| image:: :target: :alt: Code Coverage

.. |Documentation Status| image:: :target: :alt: Documentation Status

.. |Codespaces Status| image:: :target: :alt: Codespaces Status

.. |pre-commit| image:: :target: :alt: pre-commit enabled

.. |Black| image:: :target: :alt: Code Style

.. |isort| image:: :target: :alt: isort

.. |Donate| image:: :target: :alt: Donate

.. |Codespaces| image:: :target: :alt: Codespaces

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyscope-0.1.1.tar.gz (153.8 kB view hashes)

Uploaded source

Built Distribution

pyscope-0.1.1-py3-none-any.whl (132.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page