A Proof-of-Concept Distributed Mini-SLR Network for Global Space Debris Monitoring
Imagine 1,000 tracking stations across the globe — positioned at universities, schools, and amateur astronomy clubs — working together to monitor space debris in real time. Not to replace expensive precision systems, but to complement them with wide-area coverage that fills the critical blind spots in our current monitoring infrastructure.
LMS and other mini SLR stations are the first step toward that vision. This project demonstrates that satellite tracking technology doesn't need to cost millions. With accessible hardware and open-source software, we can build a distributed network that democratizes space situational awareness.
Over 170 million fragments of space debris orbit Earth right now. With more than 12,000 active satellites in Low Earth Orbit (88% of all satellites), the risk of catastrophic collisions grows daily. A single collision could trigger the Kessler Syndrome — a cascade of debris-generating impacts that could render entire orbital zones unusable for generations.
Traditional Satellite Laser Ranging (SLR) stations are the gold standard for tracking orbital objects:
- ~50 stations globally — heavily concentrated in the Northern Hemisphere
- $5-10 million per station — prohibitively expensive for most organizations
- Significant blind spots — especially in the Southern Hemisphere and equatorial regions
- Overloaded capacity — existing stations struggle to keep pace with the growing number of objects
We need more eyes on the sky. LMS makes that possible.
LMS is a proof-of-concept mini-SLR station built with off-the-shelf components for under $500. While professional SLR systems achieve millimeter-level precision, LMS targets a different role in the ecosystem:
┌─────────────────────────────────┐
│ Professional SLR Stations │
│ (Precision tracking & ranging) │
│ ~50 stations | $5-10M each │
└────────────┬────────────────────┘
│
│ High-precision
│ follow-up
│
┌────────────▼────────────────────┐
│ LMS Network (Early Detection) │
│ Wide-area coverage & alerting │
│ Target: 1000+ stations | $500 │
└─────────────────────────────────┘
Think of it as a pyramid:
- Top tier: Precision SLR stations for detailed orbital determination
- Base tier: Thousands of LMS-like stations for detection, early warning, and continuous coverage
When an LMS station detects unexpected orbital changes, it alerts the nearest precision facility for detailed analysis.
- 4x TFmini-S LiDAR sensors — organized in vertical and horizontal pairs for 3D positioning
- Dual-axis tracking — stepper motor (azimuth) + servo motor (elevation)
- Raspberry Pi 4 controller — handles sensor fusion, real-time tracking algorithms
- Total cost: ~$500 (10,000x cheaper than traditional SLR)
- Binary detection algorithm — compares sensor pairs to determine target position
- Independent axis control — elevation and azimuth threads for responsive tracking
- Automatic target acquisition — initial scan followed by lock-on
- Sub-degree accuracy — sufficient for initial detection and handoff to precision systems
- MQTT telemetry — real-time sensor data streaming (20 measurements/sec)
- InfluxDB time-series database — optimized for high-frequency sensor data
- Live 3D visualization — browser-based Three.js rendering of tracked coordinates
- Multi-tenancy architecture — supports multiple stations and organizations
- Write-only tokens — stations can only publish to their own data bucket
- ACL isolation — MQTT broker enforces strict topic-level permissions
- RAM-only credentials — no sensitive tokens stored on disk
- JWT authentication — secure frontend access control
┌─────────────────────────────────────────────────────────────┐
│ LMS Station (Hardware) │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ LIDAR 1 │ │ LIDAR 2 │ │ LIDAR 3 │ │ LIDAR 4 │ │
│ │(Elev top)│ │(Elev bot)│ │(Azim L) │ │(Azim R) │ │
│ └─────┬────┘ └─────┬────┘ └─────┬────┘ └─────┬────┘ │
│ └──────────────┴──────────────┴──────────────┘ │
│ │ │
│ Raspberry Pi 4 │
│ (Tracking algorithms + MQTT) │
└──────────────────────────┬──────────────────────────────────┘
│ MQTT/TLS
▼
┌─────────────────────────────────────────────────────────────┐
│ Controller Platform │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Mosquitto │─▶│ Elysia │◀─│ InfluxDB │ │
│ │ MQTT Broker │ │ Backend │ │ (TSDB) │ │
│ └─────────────┘ └──────┬───────┘ └──────────────┘ │
│ │ WebSocket │
│ ▼ │
│ ┌──────────────┐ │
│ │ Next.js │ │
│ │ Frontend │ │
│ │ (3D Viz) │ │
│ └──────────────┘ │
└─────────────────────────────────────────────────────────────┘
This project uses a multi-repository architecture:
- Didi0dum/LMS (this repo) — Main integration hub & documentation
- rangelovkiril/lms-hardware — Raspberry Pi station software (Python)
- rangelovkiril/lms-controller — Backend, frontend, MQTT broker & database (TypeScript/Bun)
- 4-LIDAR dual-axis tracking platform
- Real-time coordinate streaming via MQTT
- InfluxDB time-series storage
- Live 3D browser visualization
- Multi-station infrastructure support
- Security model (tokens, ACL, JWT)
- Kalman filtering for noise reduction
- Velocity estimation and predictive tracking
- Automatic data quality assessment
- Weather station integration (temperature, humidity, cloud cover)
- Dockerized deployment (one-command setup)
- Pulsed laser emitter integration — transition from passive LiDAR to active laser ranging
- Retroreflector detection — target satellites equipped with corner-cube retroreflectors
- Time-of-flight measurement — ns-precision timing for distance calculation
- Orbit determination pipeline — generate orbital elements from ranging data
- TLE catalog integration — compare live observations with predicted orbits (Space-Track API)
- Anomaly detection — automatic alerts when objects deviate from expected trajectories
- Station coordination — handoff between stations as objects move across the sky
- Distributed orbit solving — combine data from multiple stations for improved accuracy
- Public dashboard — global map of active stations and current detections
- 1,000+ station network — strategic placement in underserved regions
- Educational partnerships — deployment at universities and astronomy clubs
- Amateur astronomer integration — open protocol for community contributions
- ILRS coordination — formal data sharing with International Laser Ranging Service
- Raspberry Pi 4 Model B — main controller (ARM Cortex-A72, 4GB RAM)
- TFmini-S LiDAR (4x) — ToF distance sensors (I²C, 12m range, ±5cm accuracy)
- HY200-1607 Stepper Motor — azimuth axis (200 steps/rev, 1:4 gearing)
- A4988 Stepper Driver — microstepping control (up to 1/16 step)
- SG90 Micro Servo — elevation axis (180° range, PWM control)
- Python 3.11+ — primary language
- smbus2 — I²C communication with LiDAR sensors
- pigpio — hardware PWM for servo control
- RPi.GPIO — stepper motor control
- paho-mqtt — telemetry streaming
- Bun — JavaScript runtime (4x faster than Node.js)
- Elysia — lightweight web framework
- Next.js — frontend with SSR
- Three.js — WebGL 3D visualization
- InfluxDB — time-series database (90x compression for sensor data)
- Mosquitto — MQTT broker with ACL support
| Metric | Value | Notes |
|---|---|---|
| Detection Range | 0.01 - 12 meters | LiDAR hardware limitation |
| Angular Accuracy | ~0.5° | Combined servo + stepper error |
| Update Rate | 20 Hz | Per-axis measurement frequency |
| Data Throughput | 1 KB/sec/station | Sustainable with 1000 stations |
| Tracking Latency | <100 ms | Sensor read → decision → actuation |
For a satellite at 400 km altitude:
- 5 cm ranging error → 0.007° angular error (acceptable for detection)
- Detection window → ~10 minutes (horizon to horizon at LEO)
- Handoff coordination → Alert precision station when object enters their FOV
- 1 station → Local testing, algorithm development
- 10 stations → Regional network, redundancy validation
- 100 stations → Continental coverage, anomaly detection
- 1,000 stations → Global network, continuous monitoring
- Fill blind spots in existing SLR networks (Southern Hemisphere, equatorial zones)
- Increase temporal coverage — more frequent observations of critical objects
- Enable rapid response — distributed detection reduces time-to-alert
- Hands-on space science — universities can deploy their own tracking station
- STEM engagement — tangible connection between orbital mechanics and hardware
- Open-source learning — complete codebase available for study and modification
- 10,000x cost reduction compared to traditional SLR
- Modular design — upgrade components incrementally (LiDAR → laser, servo → precision mount)
- Consumer hardware — no specialized equipment or export restrictions
# Clone main repository
git clone --recursive https://github.com/Didi0dum/LMS.git
cd LMS
# Hardware setup
cd lms-hardware
# See hardware/README.md for detailed assembly and configuration
# Controller setup
cd ../lms-controller
# See controller/README.md for Docker Compose deployment- Raspberry Pi 4 (2GB+ RAM recommended)
- 4x TFmini-S LiDAR sensors
- Stepper motor + driver (A4988 or compatible)
- Servo motor (SG90 or similar)
- Docker + Docker Compose (for controller)
We welcome contributions from:
- Hardware enthusiasts — alternative sensor configurations, mechanical improvements
- Software developers — algorithm optimization, new features, bug fixes
- Astronomers — orbital mechanics expertise, TLE integration
- Educators — curriculum development, documentation improvements
- Kalman filter implementation — reduce noise, improve coordinate stability
- Weather integration — correlate tracking quality with atmospheric conditions
- Simulation environment — test algorithms without physical hardware
- Mobile app — remote station monitoring and control
See CONTRIBUTING.md for guidelines.
Developed for НОИТ 2026 (National Olympiad in Information Technologies)
- Dilyana Vasileva — Hardware architecture, sensor integration, tracking algorithms
- Kiril Rangelov — Backend infrastructure, real-time visualization, security model
Supervisor: Milen Spasov (TUES)
- miniSLR Stuttgart — Low-budget SLR proof-of-concept (Paper)
- ILRS Network — International Laser Ranging Service (ilrs.gsfc.nasa.gov)
- Space-Track.org — Public satellite catalog (TLE data)
- ESA Space Debris Office — Space debris statistics and research
This project is licensed under the GNU License — see LICENSE file for details.
- Benewake — TFmini-S LiDAR documentation and support
- InfluxData — Time-series database guidance
- Raspberry Pi Foundation — Enabling accessible hardware prototyping
- Open-source community — Libraries and tools that made this possible
- Project Repository: github.com/Didi0dum/LMS
- Hardware Module: github.com/rangelovkiril/lms-hardware
- Controller Module: github.com/rangelovkiril/lms-controller
- Email: dilyana.k.vasileva@gmail.com, kiril.l.rangelov.2022@elsys-bg.org