add firmware file
This commit is contained in:
@ -1 +0,0 @@
|
||||
../BFfirmware_0/build/release/bin/l502-BFfirmware0.ldr
|
||||
BIN
l502-BFfirmware0.ldr
Normal file
BIN
l502-BFfirmware0.ldr
Normal file
Binary file not shown.
11
long_trace_AVG_RPI.cmd
Normal file
11
long_trace_AVG_RPI.cmd
Normal file
@ -0,0 +1,11 @@
|
||||
|
||||
// Default configuration for BF_companion main_state
|
||||
// Format: field value // optional comment
|
||||
|
||||
run_mode INF_RUN // TEST | FINITE_RUN | INF_RUN
|
||||
BF_mode FFT // TRANSPARENT | AVG | FFT
|
||||
run_length 50 // milliseconds
|
||||
runs_N 1000 // total runs (used in FINITE_RUN)
|
||||
run_I 0 // starting run index
|
||||
//data_path /home/feda/MIPT/RadioPhotonic_Subserface_radar/Receiver_GUI/data // base directory for output files
|
||||
data_path /home/awe/Documents/E502_ADC_BF_PC_companion/tmp
|
||||
3
main.c
3
main.c
@ -705,7 +705,7 @@ void receive_to_file(t_x502_hnd hnd, char* logfilename, uint32_t* inp_buff, uint
|
||||
// fprintf(logfile_ptr, "0xFF00000 \n");
|
||||
|
||||
// uint32_t timeout = 100;
|
||||
uint32_t recv_Err_code = X502_Recv(hnd, inp_buff, max_total_words, timeout);
|
||||
int32_t recv_Err_code = X502_Recv(hnd, inp_buff, max_total_words, timeout);
|
||||
printf("receive code: %d\n", recv_Err_code);
|
||||
|
||||
if (recv_Err_code > 0){
|
||||
@ -726,6 +726,7 @@ void receive_to_file(t_x502_hnd hnd, char* logfilename, uint32_t* inp_buff, uint
|
||||
}else if (recv_Err_code == 0){
|
||||
printf("no data received. timeout\n");
|
||||
}else{
|
||||
sleep(1);
|
||||
printf("receive error: %d\n======================\n", recv_Err_code);
|
||||
}
|
||||
}
|
||||
|
||||
66
pipe_reader_test.py
Executable file
66
pipe_reader_test.py
Executable file
@ -0,0 +1,66 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Test script to read radar data from named pipe (FIFO)
|
||||
|
||||
This script demonstrates how to read binary data from the named pipe
|
||||
created by the radar acquisition program.
|
||||
"""
|
||||
|
||||
import struct
|
||||
import sys
|
||||
import os
|
||||
|
||||
def read_from_pipe(pipe_path="/tmp/radar_data_pipe"):
|
||||
"""
|
||||
Read uint32_t data from named pipe
|
||||
|
||||
Args:
|
||||
pipe_path: Path to the named pipe (FIFO)
|
||||
"""
|
||||
print(f"Opening pipe: {pipe_path}")
|
||||
print("Waiting for radar data...")
|
||||
|
||||
try:
|
||||
# Open pipe for reading (this will block until writer connects)
|
||||
with open(pipe_path, 'rb') as pipe:
|
||||
print("Connected to pipe! Reading data...")
|
||||
|
||||
word_count = 0
|
||||
while True:
|
||||
# Read 4 bytes (one uint32_t)
|
||||
data = pipe.read(4)
|
||||
|
||||
if not data:
|
||||
print("\nEnd of stream or pipe closed")
|
||||
break
|
||||
|
||||
if len(data) < 4:
|
||||
print(f"\nWarning: incomplete data read ({len(data)} bytes)")
|
||||
break
|
||||
|
||||
# Unpack as uint32_t (little-endian)
|
||||
value = struct.unpack('<I', data)[0]
|
||||
|
||||
# Print first 10 values and then every 1000th value
|
||||
if word_count < 10 or word_count % 1000 == 0:
|
||||
print(f"Word {word_count}: 0x{value:08X} ({value})")
|
||||
|
||||
word_count += 1
|
||||
|
||||
# Optional: process the data here
|
||||
# For example, convert to voltage, apply filters, etc.
|
||||
|
||||
print(f"\nTotal words received: {word_count}")
|
||||
|
||||
except KeyboardInterrupt:
|
||||
print("\n\nInterrupted by user")
|
||||
print(f"Total words received: {word_count}")
|
||||
except FileNotFoundError:
|
||||
print(f"Error: Pipe {pipe_path} does not exist")
|
||||
print("Make sure the radar acquisition program is running first")
|
||||
except Exception as e:
|
||||
print(f"Error reading from pipe: {e}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
pipe_path = sys.argv[1] if len(sys.argv) > 1 else "/tmp/radar_data_pipe"
|
||||
read_from_pipe(pipe_path)
|
||||
@ -1,4 +1,3 @@
|
||||
#!/usr/bin/bash
|
||||
sudo mount -t tmpfs -o size=1G tmpfs tmp
|
||||
./BF_companion 100 #should generate approx 500 MB of data by running 10 secs
|
||||
rm tmp/*
|
||||
# sudo mount -t tmpfs -o size=1G tmpfs tmp
|
||||
./BF_companion long_trace_AVG_RPI.cmd
|
||||
Reference in New Issue
Block a user