Astroberry Server

From Astroberry Wiki
Jump to navigation Jump to search

Astroberry Server is ready to use system for Raspberry Pi for controlling astronomy equipment.

It runs on single board computer and is powered by Linux operating system. Astroberry lets you remotely control your telescope, focuser, camera and many other devices used in astronomy. It can manage your equipment located in the backyard or hundreds kilometers away. The system can be accessed as a remote desktop via a web browser or VNC client or it can act as INDI server accessible by INDI clients such as KStars, Skycharts / Cartes du Ciel or Stellarium. Astroberry Server is based on open-source software, developed and improved by astrofans around the globe.

Astroberry Server project site is located at


  • Support for Raspberry Pi 3 and 4, Pi Zero and... probably any other Raspberry Pi version released so far
  • Official Raspbian Buster Desktop by Raspberry Pi Foundation
  • APT repository for Raspbian Buster (yes, now any Raspbian Buster user can install Astroberry Server with 'apt install')
  • Web interface featuring GPS Panel and Astro Panel (celestial almanac for your localization)
  • Astroberry Wireless Hotspot allowing to access the system directly i.e. without external wireless network eg. in the field
  • Remote desktop accessible over VNC at astroberry.local:5900 or a web browser at http://astroberry.local/desktop
  • INDI framework with all available device drivers
  • KStars planetarium software and Ekos with all available device drivers plus custom astroberry drivers
  • SkyChart / Cartes du Ciel planetarium program (only in precooked image)
  • Hallo Northern SKY planetarium program (only in precooked image)
  • CCDciel capture software (only in precooked image)
  • Astrometry for field solving (index files not provided and must be downloaded separately)
  • ASTAP, the Astrometric STAcking Program (only in precooked image)
  • PHD2 for autoguiding
  • Gnome Predict for satellite tracking
  • oaCapture for planetary imaging
  • FireCapture for planetary imaging
  • SER Player for watching captured video streams (only in precooked image)
  • Astroberry DIY drivers for focuser and relay board
  • Astroberry PiFace drivers for focuser and relay board
  • Astroberry Motor HAT for focuser based on Adafruit Motor HAT
  • Virtual GPS for users who do not have GPS device
  • File sharing server allowing for network access to captured images
  • Support for raspi-config (console) and rc_gui (graphical UI) for easy configuration of Raspberry Pi options

System Requirements

  • Raspberry Pi 4 (recommended) or Raspberry Pi 3 (minimal)
  • microSD card 32GB (recommended) or 16BG (minimal)

Quick Start

Image Verification

You can verify downloaded file with any checksum software available for your system or by running below commands in your terminal:


Make sure that the output of the command is 098d986f9e31f209e2bf58321977d3d7232d63d2b5981dce5f23036c6ef0d141.

If it's not, the file is corrupted and must be downloaded again. If you download the file again and the checksum is incorrect, please let us know.


Basic installation of the system requires flashing your microSD card with system image file. It's not the same as copying the file to microSD card. If you just copy downloaded file to your microSD card it's not going to work.

You can flash your microSD card (minimum 16GB required) using or running below commands in your terminal:

sudo dd if=astroberry-server_2.0.1.img of=/dev/sdX bs=8M status=progress

Note: Replace sdX with your microSD card identifier. Make sure it is correct before running the above command!

The process takes some time and you need to be patient. If you abort the flashing process your system is not going to boot at all.

First Boot

After the first boot, search for 'astroberry' wireless hotspot and connect your PC to it using 'astroberry' for password. Point your browser to https://astroberry.local or to access Astroberry Server. For the Internet access connect your Astroberry to your home wireless network. Right-click top bar Wi-Fi icon and edit Wireless connection by entering your home network SSID and password. While connected to the Internet you can update your system by running below commands in your terminal: sudo apt update && sudo apt upgrade && sudo apt dist-upgrade


Easy installation

See #Quick Start section

Advanced installation

You can install Astroberry Server packages on top of official Raspbian Buster with desktop system. This approach is not recommended for beginners. It does not provide all Astroberry Server features available in precooked image and you have to configure your system on your own, which requires advanced understanding of linux system. It's time consuming but you keep full control over the process.

Download official Raspbian Buster with desktop image and flash your microSD card with it. Connect keyboard, mouse and HDMI display to your Raspberry Pi, setup your system with the official first boot wizard and run the following commands in your terminal:

wget -O - | sudo apt-key add -
sudo su -c "echo 'deb buster main' > /etc/apt/sources.list.d/astroberry.list"
sudo apt update
sudo apt upgrade

At this point you can choose to install all Astroberry packages at once by running sudo apt install astroberry-server-full or you can install only selected packages.

Packages installed by astroberry-server-full include:

  • astroberry-server-wui
  • astroberry-server-sysmod
  • indi-full
  • libindi-dev
  • kstars-bleeding
  • gsc
  • phd2
  • phdlogview
  • oacapture
  • ser-player
  • gpredict
  • indi-astroberry-amh
  • indi-astroberry-diy
  • indi-astroberry-piface
  • virtualgps
  • gwenview
  • indiwebmanagerapp


Setting time and date

Raspberry Pi does not come with real time clock (RTC), which remembers time and date between restarts. As the result it does not know what time and date is just after start. To overcome this limitation, it synchronizes time and date from the Internet. This can obviously work only if it has Internet access. Otherwise your system will think it is in the 1st of January 1970.

There are a few ways to ensure that you system is set to proper time and date.

Internet connection

Connect Raspberry Pi to a network, which has Internet access e.g. your home network or your smartphone, using wireless tethering function, and the system will do the rest for you. If you can't have Raspberry Pi always connected to a network with access to the Internet you need to use other options.

RTC module

Get a real time clock (RTC) module and connect it to GPIO. It will remember time and date between restarts. Additionally if you connect your Raspberry Pi to a network with access to the Internet, your time and date will be synchronized to minimize any difference.

GPS module

Get GPS module and connect it to Raspberry Pi. You can use either USB connection (plug-and-play) or serial device connected to GPIO. GPS module will synchronize time and date with GPS satellites. Note that satellites provide UTC time and are not aware of your time zone. However if you set your timezone correctly in the system, it will be used to adjust the time received from satellites accordingly. Using GPS module gives you additional feature of setting your location, which is required by various astronomy applications.

Manual configuration

You can always set time and date manually after each boot. It's not the most convenient way to keep system time and date accurate but it's good to know you can do it anyway. To set date to the 19th of May 2020 and time to 11:14:00 run in terminal: sudo date -s "2020-05-19 11:14:00"

Setting geographic location

Setting geographic location is quite important when using Astroberry. Many applications use your location to provide you with accurate position of stars and planets. Make sure that you set your geographic location before running these applications.

GPS device

To provide system-wide location info Astroberry system uses GPSD service. It grabs raw data from GPS device and provides it to whole operating system and applications that need this information. If you use GPS device the whole system and applications can get accurate geographic location from it. When using GPS device make sure that Virtual GPS is stopped and disabled by running systemctl stop virtualgps && systemctl disable virtualgps. Otherwise GPSD service will simultaneously use location from two sources i.e. GPS and Virtual GPS.

Virtual GPS

If you don't have GPS device, Astroberry provides Virtual GPS, which uses static location configured in /etc/location.conf file.

You can set your location by running Preferences/Geographic Location from system menu or running sudo nano /etc/location.conf in console.

After setting location in the file you need to make sure that Virtual GPS service is up and running.

  • Run sudo systemctl status virtualgps to check service status
  • Run sudo systemctl enable virtualgps to enable service
  • Run sudo systemctl disable virtualgps to disable service
  • Run sudo systemctl start virtualgps to start service
  • Run sudo systemctl stop virtualgps to stop service
  • Run sudo systemctl restart virtualgps to restart service

How applications get location data

By default applications use system-wide location data from GPSD service. However there are some other options, which must be noted.

  • Kstars can use system-wide location data from GPSD service or it can read location from one of GPS drivers, namely INDI GPSD or INDI GPS NMEA
  • Astroberry GPS Panel uses system-wide location from GPSD service
  • Astroberry Astro Panel uses system-wide location from GPSD service

Geographic location architecture

Geographic location system architecture is quite complex.

                 |----> Mount with GPS ---------------------------> INDI mount driver ---->|
                 |                                                                         |
Satellites ----> |----> Smart Phone with GPS ---------------------> INDI GPS NMEA -------->|----> KStars 
                 |                                                                         |
                 |----> GPS Device ------>|                  |----> INDI GPSD ------------>|
                                          |-> GPSD service ->|
/etc/location.conf ----> Virtual GPS ---->|                  |----> Astroberry GPS Panel
                                                             |----> Astroberry Astro Panel

Configuring network connections


Maintenance and Upgrade

Upgrading the system

Astroberry comes with online software repository. If you installed your system from downloaded image file, it is already configured for you. Using software repository you can install and update your system without need to manually download updates. Just make sure that Astroberry is connected to a network with access to the Internet and integrated software management system will download and install all updates for you.

Astroberry is Rasbian based Linux system, which uses APT software management system. You can update the system by using aptitude or Software Updater.

If you prefer to use terminal just run sudo apt update && sudo apt upgrade && sudo apt dist-upgrade

Major system upgrades are also released as a new image file. This is only for minimizing amount of updates you would have to apply between major system upgrades. There is no other need to reflash microSD card with new system image. If you decide to reflash your microSD card, make sure to backup your data first. All your data on microSD card will be overwritten during reflashing microSD card. If you update the system from software repository all your data and files are preserved.

Installing alien software

Astroberry is based on Rasbian Buster operating system. This means that it is a Linux operating system compatible with Debian 10 (Buster). Debian packages are distributed as .deb files available in numerous software repositories. Astroberry comes with it's own software repository (KStars, INDI, PHD2 etc) and additionally uses official Raspbian repository for core operating system functionalities. All of these are packages for specific version of operating system i.e. Rasbian Buster.

Using packages from other Linux distributions e.g. Ubuntu is technically possible, but sometimes requires advanced configuration changes. There is no guarantee that alien packages will work properly on Astroberry. It is common error that users add Nightly Builds repository for Ubuntu to Astroberry. It can work for some packages, sometimes. In majority of cases this can be very problematic and make your system unstable. You should not do it, unless you really know what you're doing.

The safest way to bring alien software to your system is to build it from sources. This way all dependencies and requirements are ensured at compilation time.


Flashing microSD card

After downloading Astroberry Server image you need to unzip it first. Use your preferred software to do it or run this command in your terminal:


You can flash your microSD card with unzipped file using or running below commands in your terminal:

sudo dd if=astroberry-server_2.0.1.img of=/dev/sdX bs=8M status=progress

Note that copying downloaded file to a microSD card will not work. You need to flash your microSD card with unzipped file.


How can I update the system?

You can upgrade all system components using regular system upgrade using apt, apt-get, aptitude or Software Updater.

The image is too large for my microSD card

If the image appears to be too big shrink it according to this example

How to connect to my wireless home network?

Wireless connection is predefined for you. Just edit it and change network name and password.

  • Right-click wireless icon on the taskbar
  • Select Edit connections
  • Double-click Wireless connection
  • Enter your network name in SSID field
  • Go to Wi-Fi Security tab
  • Enter your network password in Password field
  • Reboot

I cannot login to astroberry HotSpot

Note that default keyboard layout used in the image is QUERTY. If you use other keyboard layout the password you type in might be different than you think e.g. for French keyboard it may become astroberrz (instead astroberry). Change your keyboard layout using raspi-config or gui_rc to aligh system configuration and your keyboard.

How can I change my regional settings or add support for my language?

The easiest way is to run raspi-config (console) and rc_gui (graphical UI). The latter is accessible in Menu / Preferences / Raspberry Pi Configuration

Screen resolution does not match my display. How can I fix it?

If your display cannot handle FullHD resolution (1920x1080) you need to either connect via web browser and set Local in sliding menu Settings / Scaling OR you need to change the system resolution by running raspi-config in terminal or Raspberry Pi Configuration from Prefferences menu.

What is the source of location data in GPS Panel and Astro Panel?

The panels use GPS readings for your location. If you don't have GPS the panel uses virtualgps provided with Astroberry Server. You can set your static location by editing /etc/location.conf file or using Preferences/Geographic Location menu. After the change reboot or restart virtual GPS by running: sudo systemctl restart virtualgps.service

How can I login to default pi user account?

Pi user account is disabled for security reasons. You can reenable it anytime by running: sudo passwd -u pi

Help and Support

Astroberry Server is free and open-source software. It does not come with commercial support. Lots of information on how to manage it can be found in this documentation and INDI Forum. Also make sure to review open issues at GitHub

Report a Bug

File any issues on GitHub