Real-Time Global Live Satellite Monitoring App

An application that fetches live global satellite positions and visualises them on an interactive world map in real time, all 195 Countries.

https://www.innotechsolution.com/

You are now following this Submission

Live Satellite Tracker is a fully functional MATLAB App Designer application for real-time satellite tracking over any country in the world. The app connects to the N2YO REST API using MATLAB's built-in webread() function to retrieve live orbital data — no third-party toolboxes or external libraries required.
OVERVIEW
The app presents a clean two-tab interface. The Home tab contains an interactive UIAxes map, a country selector dropdown covering 195 countries, a satellite category dropdown (All Satellites, Starlink, GPS, ISS, Weather, NOAA, and more), a search radius knob (0–90 degrees), configurable max-distance and max-satellite-count fields, and four action buttons — Play, Refresh, Export, and Stop. The Reports tab displays a sortable UITable with full per-satellite data.
HOW IT WORKS
1. Country selection: the user selects a country from a dropdown. The app instantly resolves the country's geographic centre coordinates (latitude and longitude) from a built-in lookup table covering all 195 UN-recognised countries.
2. API call: pressing Play sends a live HTTP request to the N2YO /above/ endpoint, querying for all satellites visible above the selected location within the configured search radius and category. The full URL is constructed programmatically using sprintf() and executed via webread() with a weboptions timeout.
3. Data parsing: the JSON response is parsed into a structured MATLAB table with columns for Satellite ID, Satellite Name, Latitude, Longitude, Altitude (km), Speed (km/s), Distance from country centre (km), and Launch Date.
4. Haversine distance filter: a custom haversine() function computes the great-circle distance between each satellite's current ground position and the selected country's centre. Only satellites within the user-defined maximum distance are retained.
5. Speed calculation: orbital speed is derived analytically from altitude using the vis-viva equation — v = sqrt(GM / (Re + alt)) — giving an accurate approximation for circular low Earth orbits without requiring any additional data field from the API.
6. Map visualisation: satellites are rendered on app.UIAxes as a colour-coded scatter plot. Marker colour encodes altitude (dark blue = low orbit, cyan = high orbit) and marker size encodes proximity (larger = closer to the country centre). The top 8 nearest satellites are labelled with name, altitude, and speed. A gold star marks the country's geographic centre. An orange ring highlights the single nearest satellite with its distance.
7. Auto-refresh: a MATLAB timer() object running in fixedRate mode triggers a full data fetch and map redraw every 30 seconds. The lamp indicator shows the app state — red (idle), yellow (fetching), cyan (country ready), green (data loaded).
8. Export: every refresh automatically writes the current satellite table to a CSV file using writetable(), compatible with Microsoft Excel and Google Sheets.
TECHNICAL HIGHLIGHTS
  • Zero external toolboxes required for core functionality (Mapping Toolbox used optionally for coastline rendering; falls back to a grid overlay if unavailable)
  • Fully event-driven architecture using App Designer callbacks and MATLAB timer objects
  • Robust error handling with uialert dialogs, lamp state feedback, and graceful API timeout management
  • Supports all N2YO satellite categories including Starlink, OneWeb, GPS, GLONASS, Galileo, ISS, Hubble, Weather, NOAA, and Amateur Radio satellites
  • Clean shutdown: CloseRequestFcn stops and deletes the timer before app deletion, preventing orphaned timer objects
WHAT YOU CAN DO WITH THIS APP
  • Track the International Space Station (ISS) passing over your country
  • Monitor Starlink constellation density over any region
  • Identify GPS and GLONASS satellites currently serving your location
  • Study LEO vs GEO satellite distribution by altitude
  • Export time-series snapshots to CSV for further analysis in MATLAB or Excel

Cite As

SOMNATH BAKSI (2026). Real-Time Global Live Satellite Monitoring App (https://www.mathworks.com/matlabcentral/fileexchange/183473-real-time-global-live-satellite-monitoring-app), MATLAB Central File Exchange. Retrieved .

General Information

MATLAB Release Compatibility

  • Compatible with R2024a and later releases

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0