{ "lab": "Lab060", "status": "COMPLETED", "scope": "OFFLINE_SAVED_FILES_AND_SYNTHETIC_ONLY", "rf_tx": 0, "hardware_access": 0, "lab059_commit": "e16ec23fdb57e95ade46e9b6abc215502fca0686", "trackers": [ "T0", "T1", "T2" ], "fixed_design": { "preamble_symbols": 1280, "detector": "normalized decision-directed BPSK phase error", "detector_clip_rad": 1.0471975511965976, "loss_criterion": "two consecutive of 16 post-preamble blocks with symbol error rate >= 0.25; diagnostic truth only, independent of CRC", "receiver_lock_score": "mean cos(2*phase_detector_error), threshold 0.15", "candidate_normalized_bandwidths": [ 0.0002, 0.0005, 0.001, 0.002, 0.004 ], "damping_factor": 0.7071067811865475 }, "selected_parameters": { "T0": { "tracker": "T0", "normalized_bandwidth": 0.0, "damping_factor": 0.7071067811865475, "phase_coefficient": 0.0, "frequency_coefficient": 0.0 }, "T1": { "tracker": "T1", "normalized_bandwidth": 0.0005, "damping_factor": 0.7071067811865475, "phase_coefficient": 0.003136663015045893, "frequency_coefficient": 0.0 }, "T2": { "tracker": "T2", "normalized_bandwidth": 0.0005, "damping_factor": 0.7071067811865475, "phase_coefficient": 0.0013324447407406753, "frequency_coefficient": 8.882964938271169e-07 } }, "selection_source": "synthetic tuning only; frozen before real IQ", "synthetic_clean_rrc": { "20000": { "sample_rate_hz": 8000000, "symbol_rate": 20000, "samples_per_symbol": 400, "rrc_taps": 4001, "symbols": 4096, "clean_evm_rms": 0.010345131990055342 }, "500000": { "sample_rate_hz": 8000000, "symbol_rate": 500000, "samples_per_symbol": 16, "rrc_taps": 161, "symbols": 102400, "clean_evm_rms": 0.00997826463272992 } }, "real": { "T0": { "A_mean_symbol_error_rate": 0.0001775568181818182, "B_mean_symbol_error_rate": 0.036169897151898736, "B_loss_of_lock": 0 }, "T1": { "A_mean_symbol_error_rate": 0.0001775568181818182, "B_mean_symbol_error_rate": 0.035096914556962025, "B_loss_of_lock": 0 }, "T2": { "A_mean_symbol_error_rate": 0.0001775568181818182, "B_mean_symbol_error_rate": 0.03501780063291139, "B_loss_of_lock": 0 } }, "synthetic": [ { "symbol_rate": 20000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5128205128205128, "loss_of_lock_rate": 0.5128205128205128, "self_recovery_rate_after_loss": 0.6, "mean_symbol_error_rate": 0.256050590034965, "p95_symbol_error_rate": 0.6932705965909084, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.3076923076923077, "loss_of_lock_rate": 0.3076923076923077, "self_recovery_rate_after_loss": 0.5, "mean_symbol_error_rate": 0.22378532925407926, "p95_symbol_error_rate": 0.9996981534090909, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.3076923076923077, "loss_of_lock_rate": 0.3076923076923077, "self_recovery_rate_after_loss": 0.4166666666666667, "mean_symbol_error_rate": 0.23574992715617712, "p95_symbol_error_rate": 0.9989879261363636, "mean_abs_final_frequency_error_hz": 1.5891187411987882 }, { "symbol_rate": 20000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5128205128205128, "loss_of_lock_rate": 0.5128205128205128, "self_recovery_rate_after_loss": 0.6, "mean_symbol_error_rate": 0.26575702942890433, "p95_symbol_error_rate": 0.6796519886363631, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.3076923076923077, "loss_of_lock_rate": 0.3076923076923077, "self_recovery_rate_after_loss": 0.3333333333333333, "mean_symbol_error_rate": 0.23310023310023306, "p95_symbol_error_rate": 0.9868607954545454, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.3076923076923077, "loss_of_lock_rate": 0.3076923076923077, "self_recovery_rate_after_loss": 0.5, "mean_symbol_error_rate": 0.2244818983100233, "p95_symbol_error_rate": 0.9553089488636363, "mean_abs_final_frequency_error_hz": 1.8603443403831266 }, { "symbol_rate": 20000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5256410256410257, "loss_of_lock_rate": 0.5256410256410257, "self_recovery_rate_after_loss": 0.5609756097560976, "mean_symbol_error_rate": 0.2953498324592075, "p95_symbol_error_rate": 0.6499644886363632, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.3076923076923077, "loss_of_lock_rate": 0.3076923076923077, "self_recovery_rate_after_loss": 0.4166666666666667, "mean_symbol_error_rate": 0.25189849213286714, "p95_symbol_error_rate": 0.8958274147727272, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 20000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.34615384615384615, "loss_of_lock_rate": 0.34615384615384615, "self_recovery_rate_after_loss": 0.8148148148148148, "mean_symbol_error_rate": 0.21559950466200467, "p95_symbol_error_rate": 0.6481001420454545, "mean_abs_final_frequency_error_hz": 2.45575502919564 }, { "symbol_rate": 500000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5128205128205128, "loss_of_lock_rate": 0.5128205128205128, "self_recovery_rate_after_loss": 0.6, "mean_symbol_error_rate": 0.21852520995618308, "p95_symbol_error_rate": 0.5008054786392402, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 3.6767689061992863e-06, "p95_symbol_error_rate": 1.1372626582278396e-05, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "LAB058_A_EVM", "target_evm_rms": 0.31739, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 3.803554040895813e-06, "p95_symbol_error_rate": 1.1372626582278396e-05, "mean_abs_final_frequency_error_hz": 0.24460262642899053 }, { "symbol_rate": 500000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5128205128205128, "loss_of_lock_rate": 0.5128205128205128, "self_recovery_rate_after_loss": 0.6, "mean_symbol_error_rate": 0.22876703992210323, "p95_symbol_error_rate": 0.5013533425632909, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 0.005101580249918856, "p95_symbol_error_rate": 0.0054603441455696195, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "INTERMEDIATE_EVM", "target_evm_rms": 0.55, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 0.0050972695553391754, "p95_symbol_error_rate": 0.00545342167721519, "mean_abs_final_frequency_error_hz": 0.44270153391594025 }, { "symbol_rate": 500000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T0", "cases": 78, "catastrophic_failure_rate": 0.5512820512820513, "loss_of_lock_rate": 0.5512820512820513, "self_recovery_rate_after_loss": 0.4418604651162791, "mean_symbol_error_rate": 0.2610313209996754, "p95_symbol_error_rate": 0.5018507713607593, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T1", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 0.04729529272151899, "p95_symbol_error_rate": 0.04841574367088607, "mean_abs_final_frequency_error_hz": 2.8846153846153846 }, { "symbol_rate": 500000, "quality": "LAB058_B_EVM", "target_evm_rms": 0.84535, "tracker": "T2", "cases": 78, "catastrophic_failure_rate": 0.0, "loss_of_lock_rate": 0.0, "self_recovery_rate_after_loss": 0.0, "mean_symbol_error_rate": 0.047251044709509894, "p95_symbol_error_rate": 0.04832229034810127, "mean_abs_final_frequency_error_hz": 0.6773541661791916 } ], "packet_controls": { "Lab054": { "T0": { "frames": 16, "preamble_errors": 9020, "header_raw_errors": 1140, "header_voted_errors": 373, "header_accepted": 0, "fec_started": 0, "fec_pass": 0, "crc_started": 0, "crc_pass": 0, "packet_output": 0, "expected_frames": 16 }, "T1": { "frames": 16, "preamble_errors": 9020, "header_raw_errors": 1136, "header_voted_errors": 369, "header_accepted": 0, "fec_started": 0, "fec_pass": 0, "crc_started": 0, "crc_pass": 0, "packet_output": 0, "expected_frames": 16 }, "T2": { "frames": 16, "preamble_errors": 9020, "header_raw_errors": 1136, "header_voted_errors": 371, "header_accepted": 0, "fec_started": 0, "fec_pass": 0, "crc_started": 0, "crc_pass": 0, "packet_output": 0, "expected_frames": 16 } }, "Lab047": { "T0": { "frames": 36, "preamble_errors": 2, "header_raw_errors": 0, "header_voted_errors": 0, "header_accepted": 36, "fec_started": 36, "fec_pass": 36, "crc_started": 36, "crc_pass": 36, "packet_output": 36, "expected_frames": 36 }, "T1": { "frames": 36, "preamble_errors": 2, "header_raw_errors": 0, "header_voted_errors": 0, "header_accepted": 36, "fec_started": 36, "fec_pass": 36, "crc_started": 36, "crc_pass": 36, "packet_output": 36, "expected_frames": 36 }, "T2": { "frames": 36, "preamble_errors": 2, "header_raw_errors": 0, "header_voted_errors": 0, "header_accepted": 36, "fec_started": 36, "fec_pass": 36, "crc_started": 36, "crc_pass": 36, "packet_output": 36, "expected_frames": 36 } } }, "background": [ { "tracker": "T1", "rx_start": 2715712, "samples": 1639072, "initial_frequency_hz": -937.7612498870775, "final_frequency_hz": -937.7612498870775, "phase_detector_mean": -0.0015150218706433782, "phase_detector_rms": 0.7811357144086143, "receiver_lock": { "block_scores": [ 0.10063319237209971, 0.098355222525229, 0.10617276782412359, 0.10274225812168869, 0.10530044294405055, 0.10671948937380842, 0.11254691272704273, 0.11812531996155448, 0.10127773127263748, 0.10319962905173677, 0.1098484248873075, 0.10272435065839519, 0.11920603854407953, 0.09478017318240499, 0.12161673020811553, 0.11789301850760485 ], "locked_blocks": 0, "stable_lock": false, "mean_score": 0.10757135638511743 }, "false_headers": 0, "false_packets": 0 }, { "tracker": "T2", "rx_start": 2715712, "samples": 1639072, "initial_frequency_hz": -937.7612498870775, "final_frequency_hz": -933.958674380653, "phase_detector_mean": 0.0005216208224431538, "phase_detector_rms": 0.7806047027808024, "receiver_lock": { "block_scores": [ 0.10118179010623372, 0.09986514970692226, 0.11115140954707184, 0.11779488228787531, 0.103094855060387, 0.1123272228703127, 0.09447320516431082, 0.11227697460326115, 0.10518389944359968, 0.11354927340964265, 0.11458038182782619, 0.12065786243529855, 0.11608178158767633, 0.09958587362187286, 0.11644130340148548, 0.10533482770132596 ], "locked_blocks": 0, "stable_lock": false, "mean_score": 0.1089737932984439 }, "false_headers": 0, "false_packets": 0 } ], "payload_truth_leak_test": { "receiver_inputs": [ "current complex RX symbol", "own hard decision", "previous loop state" ], "changed_only": "diagnostic TX payload reference after preamble", "rows": [ { "tracker": "T1", "phase_trajectory_equal": true, "frequency_trajectory_equal": true, "hard_decisions_equal": true, "trajectory_equal": true, "original_diagnostic_symbol_error_rate": 0.006747159090909091, "changed_reference_diagnostic_symbol_error_rate": 0.9932528409090909, "diagnostic_metric_changed": true }, { "tracker": "T2", "phase_trajectory_equal": true, "frequency_trajectory_equal": true, "hard_decisions_equal": true, "trajectory_equal": true, "original_diagnostic_symbol_error_rate": 0.010298295454545454, "changed_reference_diagnostic_symbol_error_rate": 0.9897017045454546, "diagnostic_metric_changed": true } ], "passed": true }, "decision_directed_verdict": "SUCCESS", "best_tracker": "T2", "why": "существенно снижены synthetic-срывы, Lab047 и background сохранены, реальный B остаётся в пределах инженерной цели", "remaining_physical_limitation": { "diagnostic_symbol_error_rate": 0.03495896, "evm_rms": 0.84535, "matched_residual_db": 1.464846, "band_gain_nonuniformity_db": 5.471382 }, "recommended_next_single_step": "подготовить отдельное решение о внедрении tracker в штатный receiver", "lab054_historical_result": "NOT_A, 0/16", "lab060_commit": "NOT_PERFORMED", "push": "NOT_PERFORMED", "integrity": { "before": { "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab056\\rx_stream.cs8": { "bytes": 48000000, "sha256": "e336dd653fa554058052fcf851e9f2462f66b8cf7c710815ca2b9a09ffc23ad4" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab056\\tx_abab.cs8": { "bytes": 21177088, "sha256": "5b34bbe1a8e6d037d2d6d367a74e9eb84e8940db7da61600ffaa7f7497d4f600" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab054\\rx_stream.cs8": { "bytes": 48000000, "sha256": "641886879964250c315dd399d469503808aae43fb319bef05e0bf2a78bf14585" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab054\\tx_stream.cs8": { "bytes": 2952192, "sha256": "e84bbce227426c0aac13a48ded1286ca4a44fc6e3efce01f6e5a513217c87ff5" }, "C:\\Users\\user\\Documents\\SDR_Rover_Lab047_raw\\20260903_115747\\rx_stream.cs8": { "bytes": 240000000, "sha256": "8521bf1b574cd1fe4e0a4f980c00c8664f8bb51551a241e46449e1eb2c77e635" } }, "after": { "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab056\\rx_stream.cs8": { "bytes": 48000000, "sha256": "e336dd653fa554058052fcf851e9f2462f66b8cf7c710815ca2b9a09ffc23ad4" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab056\\tx_abab.cs8": { "bytes": 21177088, "sha256": "5b34bbe1a8e6d037d2d6d367a74e9eb84e8940db7da61600ffaa7f7497d4f600" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab054\\rx_stream.cs8": { "bytes": 48000000, "sha256": "641886879964250c315dd399d469503808aae43fb319bef05e0bf2a78bf14585" }, "C:\\Users\\user\\Desktop\\projects\\SDR_Rover\\data\\raw\\lab054\\tx_stream.cs8": { "bytes": 2952192, "sha256": "e84bbce227426c0aac13a48ded1286ca4a44fc6e3efce01f6e5a513217c87ff5" }, "C:\\Users\\user\\Documents\\SDR_Rover_Lab047_raw\\20260903_115747\\rx_stream.cs8": { "bytes": 240000000, "sha256": "8521bf1b574cd1fe4e0a4f980c00c8664f8bb51551a241e46449e1eb2c77e635" } }, "passed": true } }