{ "sweep": { "duration": 600, "nodes": [0, 1, 2, 3, 4, 9, 14, 19, 24], "repeats": 1, "overhead_sec": 25, "out_root": "./logs", "analyze": true, "analyzer": "./analyze_ptp_runs.py", "sweep_name": "ptp_param_matrix", "pass_through": "", "notify": { "telegram": { "enabled": true, "token": "file:./telegram/tg_token", "chat_id": "file:./telegram/tg_chat_id", "quiet": true, "force_ipv4": true } }, "analysis": { "out_name": "_analysis", "warmup_sec": 60.0, "sarb_skip": 60, "clean_mad": 6.0, "lock_threshold_ns": 5000.0, "lock_consec": 5 }, "defaults": { "role_mode":["BC"], "transport": ["UDPv4"], "log_sync": [0, 1, -3], "log_announce": [1], "log_delayreq": [-3] }, "profiles": [ { "name": "E2E_PI", "fixed": { "delay": "E2E", "servo": "pi" }, "sweep": { "kp": [0.0, 0.2, 0.4, 0.6, 1.0], "ki": [0.0, 0.2, 0.3, 0.4, 0.8, 1.2, 1.6, 2.0 ] } }, { "name": "P2P_PI", "fixed": { "delay": "P2P", "servo": "pi" }, "sweep": { "kp": [0.0, 0.2, 0.4, 0.6, 1.0], "ki": [0.0, 0.2, 0.3, 0.4, 0.8, 1.2, 1.6, 2.0 ] } }, { "name": "E2E_LINREG", "fixed": { "delay": "E2E", "servo": "linreg" }, "sweep": { "linreg_win": [64, 128], "linreg_hist": [256] } }, { "name": "P2P_LINREG", "fixed": { "delay": "P2P", "servo": "linreg" }, "sweep": { "linreg_win": [64, 128], "linreg_hist": [256] } } ] } }