Rocket Telemetry Project Docs

Node Data Flow Timeline

Migrated from Original Docs/Node/Node-DataFlow-Timeline.md

Node Data Flow Timeline

This section shows the timing of data and configuration flows during lock acquisition after rocket launch.

Typical Lock Acquisition Timeline

T=0 ms:   Operator issues "POST /radio/config" (freq 5400 MHz, gain 32 dB)
          FastAPI publishes to control IPC bus

T=1 ms:   DSP pipeline reads config, updates SoapySDR via FPGA, begins sampling

T=5 ms:   Antenna daemon reads config, points beam to expected location (az 45°, el 30°)

T=50 ms:  RF signal present in received samples (rocket launch)
          DSP applies matched filtering, coarse frequency correction, starts Doppler hold acquisition

T=100 ms: DSP detects carrier (BPSK or QPSK lock)
          Publishes {lock_state: "symbol_lock", frequency_hold_state: "acquiring"} to status IPC

T=200 ms: FastAPI GET /status reflects lock_state; central and downstream consumers receive updated state

T=500 ms: Sync word 0x1ACFFC1D found in bitstream
          DSP publishes {lock_state: "frame_lock", frequency_hold_state: "locked"}

T=600 ms: Telemetry router decodes first frame
          Publishes frame to output port 9002
          Central server receives telemetry

T=1000ms: Continuous frames arriving (1000 frames/sec at 500k symbol rate)
          Antenna daemon adjusts beam via DoA tracking if enabled

T=2000ms: Rocket ascent continues; telemetry and beam tracking steady

Key Latency Targets

  • RF input to lock state in status buffer: <100 ms
  • Sync word detection to frame output: <500 ms
  • Frame output to central server: <100 ms pole-to-pole

Related: See Node-ShutdownRecovery for graceful shutdown and crash recovery procedures.

On this page