added GFSK

This commit is contained in:
2026-07-06 08:50:30 +03:00
parent a5fe5db0f2
commit 11e8ee8d7f
21 changed files with 883 additions and 166 deletions
+60
View File
@@ -180,6 +180,38 @@ def test_reference_point_session_stats(temp_db):
assert session["reference_context"]["distance_m"] > 0
def test_reference_point_session_gfsk_tx_params(temp_db):
storage.init_db()
start = storage.start_reference_point_session(
"android-12345678", "gfsk-yard", 55.75, 37.62
)
sid = start["session_id"]
storage.record_telemetry(TelemetryIn(
device_id="android-11111111",
lat=55.751,
lon=37.621,
role="TX",
ts=start["started_at"],
meta='{"role":"TX","modem_mode":"GFSK","frequency_hz":467712500,'
'"power_dbm":-9,"bitrate_bps":20000,"fdev_hz":10000,'
'"modulation_index":1.0,"rx_bandwidth_hz":46900,"sync_word_length_bits":32}',
))
storage.add_reference_point_samples(
sid,
[{"ts": 1.0, "lat": 55.75, "lon": 37.62, "role": "RX", "meta": {"per_percent": 5}}],
)
storage.finish_reference_point_session(sid)
session = storage.get_reference_point_session(sid)
tx_params = session["reference_context"]["tx_params"]
assert tx_params["modem_mode"] == "GFSK"
assert tx_params["bitrate_bps"] == 20000
assert tx_params["fdev_hz"] == 10000
assert tx_params["modulation_index"] == 1.0
assert tx_params["rx_bandwidth_hz"] == 46900
assert tx_params["sync_word_length_bits"] == 32
def test_macro_presets_crud(temp_db):
storage.init_db()
result = storage.upsert_macro_preset(
@@ -200,3 +232,31 @@ def test_macro_presets_crud(temp_db):
storage.delete_macro_preset("sf7-test")
assert storage.list_macro_presets() == []
def test_macro_preset_gfsk_params(temp_db):
storage.init_db()
result = storage.upsert_macro_preset(
"GFSK RX",
"GFSK RX",
"gfsk baseline",
params={
"modem_mode": "GFSK",
"frequency_hz": 467712500,
"power_dbm": -9,
"bitrate_bps": 20000,
"fdev_hz": 10000,
"preamble": 48,
"send_timeout_ms": 0,
"role": "RX",
},
lines=[
"S", "AT+MD=GFSK", "AT+FQ=467712500", "AT+PW=-9",
"AT+BR=20000", "AT+FD=10000", "AT+PL=48", "AT+TM=0", "AT+RX",
],
device_role="RX",
)
preset = result["preset"]
assert preset["params"]["modem_mode"] == "GFSK"
assert preset["params"]["bitrate_bps"] == 20000
assert preset["lines"][1] == "AT+MD=GFSK"