Satellite Tracking - aaronwmorris/indi-allsky GitHub Wiki
Satellite Tracking
indi-allsky tracks visual satellite passes overhead in real time, determining which spacecraft and orbital objects are within the camera field of view and rendering their positional metadata as text overlays.
1. TLE Orbital Data Synchronization
Satellite orbital ephemerides are retrieved automatically from CelesTrak:
- Catalog: 100+ Brightest Visual Satellites (
GROUP=visual), including the International Space Station (ISS), CSS Tiangong, Hubble Space Telescope (HST), and prominent rocket bodies. - Storage: Stored in the database table
tledata(IndiAllSkyDbTleDataTable). - Refresh Frequency: Polled every 24 hours. If CelesTrak returns rate-limit or network errors, an exponential backoff schedule delays subsequent requests.
2. Ephemeris & Visibility Calculation
When processing an image frame:
indi-allskypropagates satellite orbits using the SGP4 orbital model paired with the observatory's latitude, longitude, and elevation.- The system checks if any satellite has an altitude above the local horizon threshold.
- If an object is visible, its coordinates and photometric properties are exposed as image annotation tokens.
3. Image Overlay Variables
Satellite telemetry tokens can be embedded into custom image label templates under Configuration → Image Overlays → Image Labels:
| Token Variable | Type | Description | Example Output |
|---|---|---|---|
{satellite.title} |
String | Name of the visible satellite. | ISS (ZARYA) |
{satellite.alt} |
Float | Angular altitude above the local horizon (degrees). | 42.5 |
{satellite.az} |
Float | Azimuth bearing (degrees clockwise from North). | 215.3 |
{satellite.dir} |
String | Cardinal compass direction from the observer. | SW |
{satellite.mag} |
Float | Estimated visual magnitude ($m_v$). | -2.1 |
{satellite.elevation} |
Float | Orbital altitude (elevation) above sea level in kilometers. | 418.2 |
{satellite.range} |
Float | Slant range distance from the observer to the spacecraft (km). | 612.4 |
{satellite.range_velocity} |
Float | Radial velocity relative to the observer (km/s). | -6.8 |
{satellite.latitude} |
Float | Sub-satellite geocentric latitude. | 28.52 |
{satellite.longitude} |
Float | Sub-satellite geocentric longitude. | -80.68 |
Sample Overlay Template
Satellite: {satellite.title} | Alt: {satellite.alt:.1f}° | Az: {satellite.az:.1f}° ({satellite.dir}) | Mag: {satellite.mag:.1f}