From e328ebef585cea2351b37117b2d5ac4978ecd3c0 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期二, 11 二月 2025 14:57:23 +0800
Subject: [PATCH] 1111111

---
 keil/include/components/app/src/ranging_custom.c |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/keil/include/components/app/src/ranging_custom.c b/keil/include/components/app/src/ranging_custom.c
index bd4a933..789cb1a 100644
--- a/keil/include/components/app/src/ranging_custom.c
+++ b/keil/include/components/app/src/ranging_custom.c
@@ -58,7 +58,7 @@
 #include "board.h"
 
 #if PDOA_3D_EN
-#define PDOA_3D_SUPPORT_NUM 100
+#define PDOA_3D_SUPPORT_NUM 10
 #define PDOA_3D_TIMEOUT_MS 2000
 static struct PDOA_3D_MAC_ADDR_T mac_addr_cache[PDOA_3D_SUPPORT_NUM];
 static struct PDOA_3D_PDOA_DATA_T pdoa_data_cache[PDOA_3D_SUPPORT_NUM];
@@ -197,7 +197,7 @@
     aoa_param_config();
 
 #if PDOA_3D_EN
-    pdoa_3d_param_config(ANT_PATTERN, ANT_LAYOUT, PDOA_3D_AMBIGUITY_LEVEL_HIGH, mac_addr_cache, pdoa_data_cache, PDOA_3D_SUPPORT_NUM, PDOA_3D_TIMEOUT_MS);
+    pdoa_3d_param_config(ANT_PATTERN, ANT_LAYOUT, PDOA_3D_AMBIGUITY_LEVEL_NONE, mac_addr_cache, pdoa_data_cache, PDOA_3D_SUPPORT_NUM, PDOA_3D_TIMEOUT_MS);
     // pdoa_angle_reverse_set(1, 0);
 #endif
 
@@ -497,7 +497,7 @@
     ranging_user_pkt.msg.result_msg[0] = responder_id & 0xff;
     ranging_user_pkt.msg.result_msg[1] = (responder_id >> 8) & 0xff;
 
-    struct RANGING_MEASUREMENT_T *range_result = &ranging_env.range_data.measurements[0];
+    struct TWR_MEASUREMENT_T *range_result = &ranging_env.range_data.measurements[0];
     ranging_user_pkt.msg.result_msg[2] = range_result->distance & 0xff;
     ranging_user_pkt.msg.result_msg[3] = (range_result->distance >> 8) & 0xff;
 
@@ -690,7 +690,7 @@
 
                     target_time = ranging_env.anchor_point - LPM_PPM_COMPENSATION(LOW_POWER_CLOCK_PPM, uwb_app_config.session_param.ranging_interval);
                     mac_rx(EVT_MODE_MAC_ASAP_PHY_FIX, target_time - UWB_RX_OPEN_IN_ADVANCE,
-                           UWB_RX_WINDOW + LPM_PPM_COMPENSATION(LOW_POWER_CLOCK_PPM, uwb_app_config.session_param.ranging_interval));
+                           UWB_RX_WINDOW + 2 * LPM_PPM_COMPENSATION(LOW_POWER_CLOCK_PPM, uwb_app_config.session_param.ranging_interval));
                     power_mode_request(POWER_UNIT_APP, POWER_MODE_SLEEP);
                     ranging_env.responder_final_flag = 0;
                 }
@@ -847,8 +847,8 @@
 #if RANGING_FOM_FILTER_EN
                             // update response taps
                             ranging_env.frame[responder_idx].fap_valid =
-                                first_path_align(ranging_env.frame[responder_idx].gaps, &ranging_env.frame[responder_idx].gaps_num, debug_csi.rframe[0].cir,
-                                                 debug_csi.rframe[0].first_tap, PWR_TH, TAP_MARGIN);
+                                first_path_align(ranging_env.frame[responder_idx].gaps, &ranging_env.frame[responder_idx].gaps_num, debug_csi.frame[0].cir,
+                                                 debug_csi.frame[0].first_tap, PWR_TH, TAP_MARGIN);
 #endif
                         }
                     }
@@ -1176,8 +1176,9 @@
         ind->hdr.event = UWB_PKT_RX_DONE_MSG;
         ind->ranging_stage = (uint8_t)stage;
         ind->status = rx->err_code;
-        ind->rssi = rx->rssi;
-        ind->snr = rx->snr;
+        // ind->rssi = rx->rssi;
+        ind->rssi = correct_rssi(rx->rssi);
+        ind->snr = correct_snr(rx->snr);
 
         if (rx->err_code == UWB_RX_OK)
         {
@@ -1198,8 +1199,9 @@
         if (ranging_debug_csi_en_get())
         {
             uint8_t frame_idx = (ind->ranging_stage == RANGING_FINAL ? 1 : 0);
+
+            debug_csi.antenna = ranging_env.main_ant_id;
             debug_csi.frame_idx = frame_idx;
-            debug_csi.rframe_idx = frame_idx;
 
             uint32_t val = REG_READ(0x40003050);
             debug_csi.frame[frame_idx].rf_gain = (val & 0x07);
@@ -1211,7 +1213,8 @@
             {
                 debug_csi.frame[frame_idx].rssi = ind->rssi;
                 debug_csi.frame[frame_idx].snr = ind->snr;
-
+                debug_csi.frame[frame_idx].channel_power = REG_READ(0x40002064);
+                debug_csi.frame[frame_idx].noise_power = REG_READ(0x40002078);
                 dump_preamble_cir(frame_idx, 128);
                 dump_sts_cir(frame_idx);
             }

--
Gitblit v1.9.3