1 2 #define SDRIP_SAMPLING_CLOCK_DIV10 8000000 3 #define SDR14_SAMPLING_CLOCK 66.66666666 4 #define PERSEUS_SAMPLING_CLOCK 80000000.0 5 #define EXCALIBUR_SAMPLING_CLOCK 100000000.0 6 7 // Structure for RTL2832 parameters 8 typedef struct { 9 int sampling_speed; 10 int sernum1; 11 int sernum2; 12 int sernum3; 13 int gain_mode; 14 int freq_adjust; 15 int direct_sampling; 16 int check; 17 }P_RTL2832; 18 #define MAX_RTL2832_PARM 8 19 extern P_RTL2832 rtl2832; 20 21 // Structure for BladeRF parameters 22 typedef struct { 23 int rx_sampling_speed; 24 int rx_resampling_factor; 25 int sernum1; 26 int sernum2; 27 int sernum3; 28 int sernum4; 29 int sernum5; 30 int sernum6; 31 int sernum7; 32 int sernum8; 33 int freq_adjust; 34 int sampling; 35 int bandwidth; 36 int gain_mode; 37 int check; 38 }P_BLADERF; 39 #define MAX_BLADERF_PARM 15 40 extern P_BLADERF bladerf; 41 42 // Structure for Afedri USB parameters 43 typedef struct { 44 int vid; 45 int pid; 46 int sernum1; 47 int sernum2; 48 int sernum3; 49 int sernum4; 50 int freq_adjust; 51 int vga_type; 52 int check; 53 }P_AFEDRIUSB; 54 #define MAX_AFEDRIUSB_PARM 9 55 extern P_AFEDRIUSB afedriusb; 56 57 58 59 // Structure for Mirics parameters 60 typedef struct { 61 int sampling_speed; 62 int sernum1; 63 int sernum2; 64 int sernum3; 65 int freq_adjust; 66 int format; 67 int if_freq; 68 int if_bandwidth; 69 int transfer_type; 70 int check; 71 }P_MIRISDR; 72 #define MAX_MIRISDR_PARM 10 73 extern P_MIRISDR mirics; 74 75 // Structure for PCIE9842 parameters 76 typedef struct { 77 int rate_dividend; 78 int resampling_factor; 79 int freq_adjust; 80 int check; 81 }P_PCIE9842; 82 #define MAX_PCIE9842_PARM 4 83 extern P_PCIE9842 pcie9842; 84 85 // Structure for Afedri NET parameters 86 typedef struct { 87 int ip0; 88 int ip1; 89 int ip2; 90 int ip3; 91 int port; 92 int sampling_rate; 93 int format; 94 int udp_size; 95 int clock_adjust; 96 int channels; 97 int vga_type; 98 int check; 99 }P_NETAFEDRI; 100 #define MAX_NETAFEDRI_PARM 12 101 extern P_NETAFEDRI netafedri; 102 103 // Structure for SDR-IP parameters 104 typedef struct { 105 int ip0; 106 int ip1; 107 int ip2; 108 int ip3; 109 int port; 110 int rate_dividend; 111 int format; 112 int udp_size; 113 int dither; 114 int adgain; 115 int rf_filter; 116 int connect; 117 int clock_adjust; 118 int check; 119 }P_SDRIP; 120 #define MAX_SDRIP_PARM 14 121 extern P_SDRIP sdrip; 122 123 // Structure for SDR-14 parameters 124 typedef struct { 125 int m_cic2; 126 int m_cic5; 127 int m_rcf; 128 int ol_rcf; 129 int clock_adjust; 130 int att; 131 int input; 132 int sernum1; 133 int sernum2; 134 int sernum3; 135 int device_code; 136 int check; 137 }P_SDR14; 138 #define MAX_SDR14_PARM 12 139 extern P_SDR14 sdr14; 140 141 extern char *perseus_name_string; 142 143 extern int no_of_excalibur_rates; 144 145 extern char *excalibur_sernum_filename; 146 147 148 extern double adjusted_sdr_clock; 149 extern char *sdr14_name_string; 150 extern char *sdriq_name_string; 151 extern char *sdrip_name_string; 152 extern char *excalibur_name_string; 153 extern char *rtl2832_name_string; 154 extern char *mirics_name_string; 155 extern char *bladerf_name_string; 156 extern char *pcie9842_name_string; 157 extern char *openhpsdr_name_string; 158 extern char *netafedri_name_string; 159 160 161 // Structure for Excalibur parameters 162 typedef struct { 163 int rate_no; 164 int sampling_rate; 165 int clock_adjust; 166 int mw_filter_maxfreq; 167 int dither; 168 int check; 169 }P_EXCALIBUR; 170 #define MAX_EXCALIBUR_PARM 6 171 extern P_EXCALIBUR excalib; 172 #define MAX_EXCALIBUR_DEVICES 16 173 174 175 typedef struct { 176 int parport; 177 int parport_pin; 178 int libusb_version; 179 int rx2500_fqcorr; 180 int rx10700_fqcorr[4]; 181 int rx70_fqcorr[5]; 182 int rx144_fqcorr[4]; 183 int rxhfa_fqcorr[5]; 184 int tx2500_fqcorr; 185 int tx10700_fqcorr[4]; 186 int tx70_fqcorr[5]; 187 int tx144_fqcorr[4]; 188 int txhfa_fqcorr[5]; 189 }WSE_PARM; 190 #define MAX_WSE_PARM 41 191 192 extern WSE_PARM wse; 193 194 195 extern int *rtl2832_gains; 196 extern int no_of_rtl2832_gains; 197 extern int old_rtl2832_gain; 198 extern int *mirics_gains; 199 extern int no_of_mirics_gains; 200 extern int old_mirics_gain; 201 202 void close_sdr14(void); 203 void close_perseus(void); 204 void init_sdr14(void); 205 void init_perseus(void); 206 void init_sdrip(void); 207 void init_excalibur(void); 208 int display_perseus_parm_info(int *line); 209 int display_sdr14_parm_info(int *line); 210 int display_sdrip_parm_info(int *line); 211 int display_excalibur_parm_info(int *line); 212 int display_rtl2832_parm_info(int *line); 213 int display_mirics_parm_info(int *line); 214 int display_bladerf_parm_info(int *line); 215 int display_pcie9842_parm_info(int *line); 216 int display_openhpsdr_parm_info(int *line); 217 int display_netafedri_parm_info(int *line); 218 void fill_perseus_rates(void); 219 void sdr_target_name(char *ss); 220 void sdr_target_serial_number(char *ss); 221 void init_rtl2832(void); 222 void init_mirics(void); 223 void init_bladerf(void); 224 void init_openhpsdr(void); 225 void init_pcie9842(void); 226 void open_afedriusb_control(void); 227 void close_afedriusb_control(void); 228 229