These instructions were written after-the-fact, so there are errors and omissions. 

1. Initial setup (already done)

  1. First off, acquire an Raspberry Pi microprocessor (in this case donated by Dave Chapman with 4G RAM and micro SD memory). 
  2. Donated hardware by Jane and Alfred Howard: Celestron AUX, 8" Celestron Edge HD SCT, HyperStar, Atik 428ex 1931 x 1451 pixel colour CCD.
  3. Downloaded Rob Lancaste's excellent AstroPi3 installer script from GitHub - rlancaste/AstroPi3. This script automates the many setup steps involved with configuring a Raspberry Pi or similar single board computer (SBC) running Ubuntu or Raspbian, so that it can be an Astrophotography hub using INDI, KStars, and Ekos. Follow the instructions on that GitHub page to create a bootable microSD OS image and run this script to install the astronomy software.
    sudo ./

    In this case we chose the option to install the x11vnc VNC server, as well as creation of it's own automatic hot-spot when no known networks are found.

  4. After connecting the RPi to an HDMI display, attaching a keyboard, mouse and providing an ethernet cable link to the home router, power up the RPi.
  5. With the ethernet connection active, download NoMachine Remote Desktop software, the ARMv8 DEB installation and install that on the RPi. I chose this approach based on discussions on If you don't want to use this software, the AstroPi3 installer script will install alternatives (below).
  6. With NoMachine running as a Remote Desktop server disconnect the HDMI, keyboard and mouse and access the RPi via an installation of NoMachine (on the MacBook Pro) (a RPi reboot permitted the Remote Desktop to be reconfigured to a lower readable pixel density).
  7. When that is completed, launch KStars to complete the initialization of KStars and test it using the telescope simulators.
  8. Connect the physical telescope equipment to the RPi and create a new Profile in EKOS containing the matching drivers for each of your devices. In my case we are using Celestron AVX mount, Starizona microlight focuser, Atik 428ex camera.
  9. Download the Index files (to allow StellarSolver to plate solve) via the Solver Options Index Files dialog. I chose to update files at the predefined Location: /home/odroid/.local/share/kstars/astrometry. There are check boxes that allow KStars to download these files for you. You don't need to download the most detailed (largest) indexes, depending on the Field of View of you scope/camera.
  10. Generate an Artificial Horizon polygon for the KStars desktop planetarium to provide a visual indicator of your unobstructed view. 
  11. I our use case, there is no need to use Phd2 (included) for guiding and haven't a profile configured for this scenario. 
  12. After noticing some warnings about missing locale during the software updates, I ran 
    sudo dpkg-reconfigure locales
    sudo localectl set-locale LANG=en_CA.UTF-8
    to set up my locale for my language/country e.g. en_CA.UTF-8. (A reboot was required to have locale show the updated info)

Installing Source code version of KStars

The 1st step is from

A shell script to automate Installing Kstars/Indi from their git repositories

Link to repository

Before running this script uninstall INDI and KStars from repository.


  1. Clone git repository git clone
  2. Enter cloned directory cd astro-soft-build
  3. Install dependencies by running ./ This need to be done only first time.
  4. If you are using QHY camera then run ./
  5. Run one of or

For general use run stable version. Use latest version if you want to test new bleeding edge feature in development.
Latest build sometimes fail because some breaking change in base indi and not every driver was updated. In this case try to wait day and try again.
If stable build fail try remove all build-* directories in $HOME/astro-soft or $HOME/astro-soft-stable

I update stable script when new stable version of INDI is released so to get latest version run

Enter astro-soft-build directory

Run git pull origin

Run one of or

Configure novnc SSL

raspberrypi@raspberrypi-desktop:~$ openssl req -x509 -nodes -newkey rsa:3072 -keyout novnc.pem -out novnc.pem -days 3650
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
Country Name (2 letter code):CA
State or Province Name (full name):Nova-Scotia
Locality Name (eg, city):Halifax
Organization Name (eg, company):RASC-Halifax
Organizational Unit Name (eg, section):
Common Name (e.g. server FQDN or YOUR name):SCO
Email Address:j******.com


# launch novnc
/usr/share/novnc/utils/ --cert /usr/share/novnc/novnc.pem --web /usr/share/novnc
# install novnc as a service
sudo --preserve-env bash -c 'cat > /lib/systemd/system/novnc.service' << EOF
Description=Start novnc at startup.
ExecStart=/usr/share/novnc/utils/ --cert /usr/share/novnc/novnc.pem --web /usr/share/novnc
# This enables the Service so it runs at startup
sudo systemctl enable novnc.service
sudo systemctl daemon-reload
# launch vnc server
sudo /usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared
# install x11vnc as a service
# Note: RealVNC does not work on non-Raspberry Pi ARM systems as far as I can tell.
# This will install x11vnc instead
sudo apt -y install x11vnc
# This will get the password for VNC
x11vnc -storepasswd /etc/x11vnc.pass
# This will store the service file.
sudo --preserve-env bash -c 'cat > /lib/systemd/system/x11vnc.service' << EOF
Description=Start x11vnc at startup.
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /etc/x11vnc.pass -rfbport 5900 -shared
# This enables the Service so it runs at startup
sudo systemctl enable x11vnc.service
sudo systemctl daemon-reload

Alternative build method for KStars

These 3 line are meant to install Kstars, not update it
sudo apt-add-repository ppa:mutlaqja/ppa
sudo apt-get update
sudo apt-get install indi-full kstars-bleeding

To update the software, you need these 2 lines
sudo apt update
sudo apt upgrade

The "upgrade" line is meant to update the softwares.

Auto start Kstars and EKOS

Created the indiwebmanager.service by opening http://localhost:8624/ in Firefox on the RPi4 and creating a new profile "SCO-AVX+HyperStar+Atik" 

by choosing the Atik CCD, Celestron Advanced VX HC and Microtouch Drivers

using the default Port 7624 and configured to Auto Start and Auto Connect.

Add a Real Time Clock to the RPi4

# These commands were used to add a Real Time Clock to Ubuntu 22.04
#   taken from
# this script can't be executed directly as there are 2 sections to insert into files 
# that are not structured to be run as a command.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install i2c-tools
sudo i2cdetect -y 1
sudo modprobe rtc-ds1307 
sudo bash
echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -r 
sudo hwclock -w
cd /etc/modules-load.d
sudo pluma modules.conf
#This loads the rtc-1307 module

cd /etc/
sudo pluma rtc
#this is the script to be executed at boot to create the rtc interface
echo 'ds1307 0x68' | sudo tee /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -s
# end of rtc text

cd /etc/systemd/system/
sudo pluma rtc.service
#this calls the rtc script at boot to create the rtc interface new_device
Description=RTC Clock
# end of rtc.service text

sudo systemctl start rtc.service
sudo systemctl enable rtc.service

2. Reference Manuals

Celestron C8 Manual

Celestron Edge HD Instruction Manual.pdf

Hyperstar 4 on a Celestron C8 Manual


Atik 428ex Manual

KStars Manual

KStars Manual