RIG CONNECT... "; $rigcmd=$rigctl.' -m '.$rmodel.' -r '.$device.' -s '.$dspeed; $socket=popen($rigcmd,'r'); print "OK (".$device.")\n"; print "CMD[".$rigcmd."]\n"; for ($freq = $beg; $freq <= $end; $freq+=$step) { $afreq=array(); exec($rigcmd.' F '.$freq,$afreq,$fret); usleep(10000); $asmet=array(); $get_smet=$rigcmd.' l STRENGTH'; exec($get_smet,$asmet,$sret); $smet=trim($asmet[0]); if ( $smet > 60 || preg_match("/error/",$smet) ) { usleep(10000); $asmet=array(); $get_smet=$rigcmd.' l STRENGTH'; exec($get_smet,$asmet,$sret); $smet=trim($asmet[0]); } if ( $smet > 60 || preg_match("/error/",$smet) ) { usleep(10000); $asmet=array(); $get_smet=$rigcmd.' l STRENGTH'; exec($get_smet,$asmet,$sret); $smet=trim($asmet[0]); } print "[".$freq."] [".smeter($smet)."] ".str_repeat("|",($smet+60))."\n"; } print "-END-\n"; pclose($socket); function smeter($dbs9) { if ( $dbs9 > 60 ) { $dbs9 = 60; } if ( $dbs9 < -54 ) { $dbs9 = -54; } $overs9 = $dbs9 - 54; if ( $overs9 < 0 ) { $overs9 = 0; } if ( $dbs9 > 0 ) { $dbs9 = 0; } $smeter = 'S'.round(($dbs9+54)/6); if ( $overs9 > 0 ) { $smeter .= '+'.$overs9.'dB'; } return $smeter; }