Add UE PDSCH ChanEst and pre-compensation IQ to imscope
This commit is contained in:
@@ -455,6 +455,29 @@ void ShowUeScope(void *data_void_ptr, float t)
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
if (ImGui::Begin("UE PDSCH Chan est")) {
|
||||
static auto iq_data = new IQData();
|
||||
static auto iq_hist = new IQHist("PDSCH Chan est IQ");
|
||||
bool new_data = false;
|
||||
if (iq_hist->ShouldReadData()) {
|
||||
new_data = iq_data->TryCollect(&scope_array[pdschChanEstimates], t, iq_hist->GetEpsilon(), iq_procedure_timer);
|
||||
}
|
||||
iq_hist->Draw(iq_data, t, new_data);
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
if (ImGui::Begin("UE PDSCH IQ before compensation")) {
|
||||
static auto iq_data = new IQData();
|
||||
static auto iq_hist = new IQHist("PDSCH IQ before compensation");
|
||||
bool new_data = false;
|
||||
if (iq_hist->ShouldReadData()) {
|
||||
new_data = iq_data->TryCollect(&scope_array[pdschRxdataF], t, iq_hist->GetEpsilon(), iq_procedure_timer);
|
||||
}
|
||||
iq_hist->Draw(iq_data, t, new_data);
|
||||
}
|
||||
ImGui::End();
|
||||
|
||||
|
||||
if (ImGui::Begin("Time domain samples")) {
|
||||
static auto iq_data = new IQData();
|
||||
// Issue with imgui deferring draw calls until the end of the frame - cases segfault if scatterplot has too many points
|
||||
|
||||
@@ -131,12 +131,9 @@ void unlockScopeData(enum scopeDataType type)
|
||||
total_size += scope_data.data.data_copied_per_offset[i];
|
||||
}
|
||||
if (total_size != (uint64_t)scope_data.data.scope_graph_data->dataSize) {
|
||||
LOG_E(PHY,
|
||||
"Scope is missing data - not all data that was expected was copied - possibly missed copyDataUnsafeWithOffset call. "
|
||||
"scope = %s, total_size = %lu, dataSize = %d\n",
|
||||
scope_id_to_string(type),
|
||||
total_size,
|
||||
scope_data.data.scope_graph_data->dataSize);
|
||||
scope_data.data.scope_graph_data->dataSize = total_size;
|
||||
scope_data.data.scope_graph_data->lineSz =
|
||||
total_size / scope_data.data.scope_graph_data->elementSz / scope_data.data.scope_graph_data->colSz;
|
||||
}
|
||||
scope_data.data.scope_id = type;
|
||||
scope_data.is_data_ready = true;
|
||||
@@ -179,8 +176,12 @@ const char *scope_id_to_string(scopeDataType type) {
|
||||
return "ueTimeDomainSamplesBeforeSync";
|
||||
case gNbTimeDomainSamples:
|
||||
return "gNbTimeDomainSamples";
|
||||
case pdschChanEstimates:
|
||||
return "pdschChanEstimates";
|
||||
case pdschRxdataF:
|
||||
return "pdschRxdataF";
|
||||
default:
|
||||
return "unknown type";
|
||||
return "unknown scope type";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user