init
This commit is contained in:
33
readme.md
Normal file
33
readme.md
Normal file
@@ -0,0 +1,33 @@
|
||||
radio-edge-node
|
||||
|
||||
This repository contains the containerized supervisor and OP25 instance for the SDR nodes. It manages the local RF workload and synchronizes state with the central C2 via MQTT.
|
||||
|
||||
1. Directory Structure
|
||||
|
||||
radio-edge-node/
|
||||
├── app/
|
||||
│ ├── main.py # Entry point & MQTT Startup
|
||||
│ ├── routers/ # FastAPI Routes (op25_controller.py)
|
||||
│ ├── internal/ # Business Logic (config_utils, logger, etc.)
|
||||
│ └── models/ # Pydantic Schemas
|
||||
├── configs/ # Persistent Volume for active.cfg.json
|
||||
├── Dockerfile
|
||||
├── docker-entrypoint.sh
|
||||
└── docker-compose.yml
|
||||
|
||||
|
||||
2. Supervisor Logic
|
||||
|
||||
The supervisor performs three main tasks:
|
||||
|
||||
MQTT Phone-Home: On startup, it sends the Check-In packet to the C2.
|
||||
|
||||
Process Management: It wraps the OP25 multi_rx process. If the process dies, the supervisor can report the failure via MQTT.
|
||||
|
||||
Metadata Tailing: (Planned) Tailing the OP25 stderr/stdout to extract real-time talkgroup grants for the C2 metadata bus.
|
||||
|
||||
3. Deployment
|
||||
|
||||
Set your .env variables (NODE_ID, MQTT_BROKER, etc.)
|
||||
|
||||
docker-compose up --build -d
|
||||
Reference in New Issue
Block a user