Documentation
Everything you need to get started with AstroMate and make the most of your astrophotography sessions.
Installation
Choose the installation method that fits your setup.
Raspberry Pi
Dedicated device next to your telescope. Recommended for permanent setups.
Docker
Run on any machine with Docker. Great for existing servers or NAS devices.
Raspberry Pi
Requirements
- •Raspberry Pi 4 or 5 (4GB+ RAM recommended)
- •Raspberry Pi OS 64-bit (Bookworm)
- •Same network as your AsiAir
Step 1: Download and install
Run this single command on your Raspberry Pi. It downloads AstroMate, installs all dependencies, and sets it up as a system service.
curl -sSL https://releases.astro-mate.net/astromate/setup-pi.sh | sudo bash
Step 2: Open AstroMate
Once installed, open a browser and navigate to your Raspberry Pi's IP address. AstroMate runs on port 80 by default. You'll see the license activation screen on first launch.
Step 3: Activate your license
Enter the license key you received by email after subscribing. AstroMate will automatically discover your AsiAir and start monitoring for new photos.
Updating
AstroMate checks for updates automatically. When a new version is available, you'll see a notification in the app. Click "Update" and AstroMate will download and install the latest version, then restart automatically.
Docker
Requirements
- •Docker installed on your machine
- •Same network as your AsiAir
- •Available on amd64 and arm64 architectures
Option A: Docker Run
The simplest way to get started:
docker run -d \ --name astromate \ --network host \ -v astromate-data:/data \ --restart unless-stopped \ astromate/astromate:latest
Using --network host enables AsiAir auto-discovery via mDNS. On macOS/Windows, use port mapping instead:
docker run -d \ --name astromate \ -p 80:80 \ -v astromate-data:/data \ --restart unless-stopped \ astromate/astromate:latest
Option B: Docker Compose
Create a docker-compose.yml:
volumes:
astromate-data:
services:
astromate:
image: astromate/astromate:latest
ports:
- "80:80"
volumes:
- astromate-data:/data
restart: unless-stopped
environment:
ASPNETCORE_ENVIRONMENT: ProductionThen run:
docker compose up -d
Updating
Pull the latest image and recreate the container:
docker pull astromate/astromate:latest docker compose up -d
Your data is stored in the astromate-data volume and is preserved across updates.
Connecting a Telescope
AstroMate connects to AsiAir devices over your local network via SMB.
Auto-Discovery
AstroMate automatically scans your network for AsiAir devices using mDNS. When a device is found, it appears on the Telescopes page with its hostname, IP address, and online status. No manual configuration is needed in most cases.
Adding a Telescope Manually
If auto-discovery doesn't find your device (e.g., different subnet), you can add it manually:
- 1Go to the Telescopes page and click Add Telescope
- 2Enter a display name, the AsiAir's IP address, and the SMB share name (default:
EMMC Images) - 3Click the folder icon to browse available SMB shares and verify the connection
Telescope Settings
Each telescope card shows its online status, IP address, MAC address, and last seen time. You can edit the display name, folder alias (used for organizing downloaded files), and SMB share name directly on the card. The folder alias determines the directory structure where your photos are saved locally.
Important: Do not mount the AsiAir share in your OS file manager (e.g., Finder on macOS) while AstroMate is running. AstroMate uses a direct SMB connection and an OS-level mount may cause conflicts.
Sessions & Images
AstroMate automatically organizes your captures into sessions and photo buckets.
How Sessions Work
When AstroMate detects new FITS files on your AsiAir, it automatically groups them into sessions based on the target object and a configurable time window. Photos captured within the same window for the same object are grouped together. Calibration frames (darks, flats, biases) are grouped into separate calibration sessions.
The Sessions Page
The sessions list shows all your observation sessions with their status (Shooting or Completed), the target object name, telescope used, photo count, and download progress. Active sessions show a Finish button to mark them as complete when your imaging run is done.
Photo Buckets
Inside each session, photos are organized into buckets— groups of frames with the same type (Light, Dark, Flat, Bias), filter, exposure time, and sensor temperature. Each bucket shows:
- •Photo type, filter name, and exposure duration
- •Sensor temperature (auto-detected from filenames)
- •Download progress bar and individual photo status
- •Actions: download as ZIP, delete local files, queue pending downloads
Auto-Download
Photos captured within the configured auto-download window (default: 14 days) are queued for download automatically. Older photos can be queued manually from the session or bucket view. Downloads happen sequentially to avoid overwhelming the AsiAir or Raspberry Pi.
Calibration Bookmarks
Assign dark, flat, and bias frames to your light sessions for streamlined stacking.
What Are Calibration Bookmarks?
Calibration bookmarks let you pre-assign which dark, flat, and bias frames should be used with your light frames. When you create a stack later, these assignments are automatically applied — saving you from manually pairing calibration frames every time.
Setting Bookmarks
Bookmarks are set from the session detail page:
- •Bias bookmarkis set at the session level — it applies to all buckets in the session
- •Dark bookmarksare set per exposure group — AstroMate matches darks by exposure time and sensor temperature (within the configured tolerance)
- •Flat bookmarksare set per light bucket — matched by filter
The Calibration Picker
When you click to assign a calibration frame, a picker opens showing all available calibration buckets filtered by the correct type. Buckets are sorted by relevance: darks are matched by exposure and temperature, flats are sorted by capture time proximity to your lights, and the picker highlights the recommended choice. Already-bookmarked frames appear at the top with a badge.
The Calibration Page
The dedicated Calibration page gives you an overview of all your calibration frames organized by type. Dark frames are grouped by exposure time and temperature, flat frames by filter, and bias frames together. Each group shows the frame count and download progress, and you can ingest, download, or delete frames in bulk.
Creating Stacks
Combine your light frames with calibration data and process them with Siril for a final stacked image.
Creating a New Stack
The stack creation wizard guides you through selecting your frames:
- 1Choose an object — select the space object you imaged (e.g., M42, IC1805)
- 2Pick a telescope — select which telescope captured the frames
- 3Select a session — choose the imaging session
- 4Choose light buckets — select which light frame groups to include (by filter and exposure)
- 5Name your stack — auto-generated from the object name, or customize it
Configuring Calibration
On the stack detail page, AstroMate automatically applies your calibration bookmarks. You can review and change the assigned darks, flats, and bias for each light entry. A warning banner alerts you if any calibration frames are missing. Light frames are grouped by exposure and temperature, making it easy to assign the correct darks for each group.
Processing Settings
Before processing, you can configure:
- •Stacking method — Winsorized Sigma Clipping (recommended), Average, Median, Sum, or Linear Fit
- •Sigma values— Low and high rejection thresholds (for clipping methods)
- •Normalization— Additive+Scale (recommended), Linear, or None
Running a Stack
Click Run Stack to start processing. AstroMate generates a Siril script, calibrates your frames (bias, dark, flat), registers (aligns) them, and stacks the result. You can watch the Siril log in real-time as it processes. When complete, download the resulting FITS file for further processing in your favorite editor (PixInsight, Siril GUI, etc.).
Re-running and Resetting
If a stack fails or you want to try different settings, use the Reset button to clear the previous result, then Re-run Stack with adjusted parameters. The reset also cleans up the working directory on disk.