defsetAntennas(self,antennas):# antennas=1: first antenna; 2: second antenna; 3: both antennas
self.sendCommandAuto("uci set wireless.radio0.diversity=0;uci set wireless.radio0.rxantenna="+str(antennas)+";uci set wireless.radio0.txantenna="+str(antennas)+";uci commit wireless; wifi",blocking=True)
defsetBitrates(self,bitrates=-1,interface="wlan0"):#-1 means reset; otherwise, MCS index (0-15)
ifbitrates==-1:
ht_mcs="ht-mcs-2.4"
ifinterface=="wlan1":
ht_mcs="ht-mcs-5"
self.sendCommandAuto("iw dev "+interface+" set bitrates "+ht_mcs)
else:
ht_mcs="ht-mcs-5"
ifinterface=="wlan1":
ht_mcs="ht-mcs-2.4"
self.sendCommandAuto("iw dev "+interface+" set bitrates "+ht_mcs+" "+str(bitrates))
print("During the last",str(total_act_time),"ms, channel has been used",str(total_times),"ms (busy: "+str(total_busy_time)+" ms, rx: "+str(total_rx_time)+" ms, tx: "+str(total_tx_time)+" ms; airtime is "+str(airtime)+")")
defrunIperfSource(self,ip,bw=0,length=1400,burst=1,mb="mb",wifi=True,plc=True,mfl=False,static=False,duration=10,tcp=False,log="iperf.log",window="1M",tcp_cc="scalable",style=1):# alias for backward compatibilitu