def test(): [ dataTrace, rssiTrace ] = rde.readTrace("rx-0-22-11-20140629-15-47-41-with_interference_802.11g") print len(dataTrace[2]), dataTrace[1], type(dataTrace[1][2]) print len(rssiTrace[4]), rssiTrace[4] pass
def print_split_trace(split_data, split_rssi, pilot_step, limit_length): trace = [] # [split_data, split_rssi, pilot_step] = pds.simulated_tracebase(False) [ raw_data, raw_rssi ] = rde.readTrace("rx-0-22-11-20140629-15-47-41-with_interference_802.11g") for i in range(limit_length[0], limit_length[1]): for j in range(len(split_rssi[i])): rawrssi = 0 if j >= len(raw_rssi[i]): rawrssi = -1 else: rawrssi = raw_rssi[i][j] if j % pilot_step != 0: trace.append( "[%d-%d][raw_rssi]:%s, [spredRSSI]:%s, [raw_data]:%s\n" % (i, j, rawrssi, split_rssi[i][j], split_data[i][j])) else: trace.append( "[pilot][%d-%d][raw_rssi]:%s, [spredRSSI]:%s, [raw_data]:%s\n" % (i, j, rawrssi, split_rssi[i][j], split_data[i][j])) f = open( "figure/rssi_compare_%d_%d.txt" % (limit_length[0], limit_length[1]), 'w') f.writelines(trace) f.close() pass
def simulated_tracebase( metrics_command, argvList): len_symbol = 8 pilot_step = 8 # every pilot_step to get samples, actually is pilot_step*len_symbol. packet_len = 110 thres_dtlength = packet_len * (8/ len_symbol) [dataTrace, rssiTrace] = rde.readTrace("rx-0-22-11-20140629-15-47-41-with_interference_802.11g") [dataTrace, rssiTrace] = rde.dicard_fault_rssi_packet(dataTrace, rssiTrace) # dataTrace = rde.simpleSplit(dataTrace)# split the data trace into symbol, 4 bit/symbol in this case [s_dataTrace, s_rssiTrace] = rde.scaledRSSI(dataTrace, rssiTrace, thres_dtlength)# linear insert value #filter head and tail [s_dataTrace, s_rssiTrace] = protocal_802_15_4_modify(s_dataTrace, s_rssiTrace,len_symbol) return [s_dataTrace, s_rssiTrace, pilot_step] pass