bin/pwn_gqrx_scanner in pwn-0.5.55 vs bin/pwn_gqrx_scanner in pwn-0.5.57
- old
+ new
@@ -29,31 +29,31 @@
options.on('-AFLOAT', '--audio-gain=FLOAT', '<Optional - Set audio gain -80.0 to 50.0 (Defaults to 1.0)>') do |a|
opts[:audio_gain_db] = a
end
- options.on('-bHZ', '--bandwidth=HZ', '<Optional - Set Bandwidth (Defaults to 200.000)>') do |b|
+ options.on('-bHZ', '--bandwidth=HZ', '<Optional - Set Bandwidth 0.0 - SDR Bandwidth Limit, e.g. 20.000.000 (Defaults to 270.000)>') do |b|
opts[:bandwidth] = b
end
options.on('-DMODE', '--demodulator-mode=MODE', '<Optional - Set Demodulator ModeOFF | RAW | AM | FM | WFM | WFM_ST | WFM_ST_OIRT | LSB |USB | CW | CWL | CWU (Defaults to WFM_ST)>') do |d|
opts[:demodulator_mode] = d
end
- options.on('-PINT', '--precision=INT', '<Optional - Precision of Frequency 1-12 (Defaults to 6)>') do |p|
+ options.on('-PINT', '--precision=INT', '<Optional - Precision of Frequency 1-12 (Defaults to 5)>') do |p|
opts[:precision] = p
end
- options.on('-SFLOAT', '--strength-lock=FLOAT', '<Optional - Strength to trigger lock on frequency (Defaults to -55.0)>') do |s|
+ options.on('-SFLOAT', '--strength-lock=FLOAT', '<Optional - Strength to trigger lock on frequency (Defaults to -45.0)>') do |s|
opts[:strength_lock] = s
end
- options.on('-LFLOAT', '--lock-freq-duration=FLOAT', '<Optional - Duration to lock onto Freqency when Strength < --strength-lock value (Defaults to 5.0)>') do |l|
+ options.on('-LFLOAT', '--lock-freq-duration=FLOAT', '<Optional - Duration to lock onto Freqency when Strength < --strength-lock value (Defaults to 0.25)>') do |l|
opts[:lock_on_freq_duration] = l
end
- options.on('-QFLOAT', '--squelch=FLOAT', '<Optional - Squelch Threshold -65.0 to 0(Defaults to -150.0)>') do |q|
+ options.on('-QFLOAT', '--squelch=FLOAT', '<Optional - Squelch Threshold -150.0 to 0 (Defaults to -50.0)>') do |q|
opts[:squelch] = q
end
options.on('-RFLOAT', '--rf-gain=FLOAT', '<Optional - RF Gain 0.0-16.0(Defaults to 16.0)>') do |r|
opts[:rf_gain] = r
@@ -61,11 +61,11 @@
options.on('-IFLOAT', '--intermediate-gain=FLOAT', '<Optional - Intermediate Gain 0.0-40.0 (Defaults to 40.0)>') do |i|
opts[:intermediate_gain] = i
end
- options.on('-BFLOAT', '--basedband-gain=FLOAT', '<Optional - Baseband Gain 0.0-62.0 (Defaults to 0.0)>') do |b|
+ options.on('-BFLOAT', '--basedband-gain=FLOAT', '<Optional - Baseband Gain 0.0-62.0 (Defaults to 10.0)>') do |b|
opts[:baseband_gain] = b
end
end.parse!
if opts.empty?
@@ -152,11 +152,12 @@
gqrx_sock.write("#{cmd}\n")
response = []
got_freq = false
# Read all responses from gqrx_sock.write
- timeout = 0.03 if timeout.nil?
+ timeout = 0.001 if timeout.nil?
+
begin
response.push(gqrx_sock.readline.chomp) while gqrx_sock.wait_readable(timeout)
raise IOError if response.empty?
rescue IOError
timeout += 0.001
@@ -245,11 +246,12 @@
squelch: current_squelch,
rf_gain: rf_gain,
if_gain: if_gain,
bb_gain: bb_gain,
strength: current_strength,
- strength_trigger_lock_on_freq: strength_lock
+ strength_trigger_lock_on_freq: strength_lock,
+ lock_on_freq_duration: lock_on_freq_duration
}
puts JSON.pretty_generate(init_freq_hash)
sleep lock_on_freq_duration if current_strength > strength_lock
@@ -319,11 +321,11 @@
demodulator_mode = opts[:demodulator_mode] ||= 'WFM_ST'
demodulator_mode.upcase!
raise "ERROR: Invalid demodulator mode: #{demodulator_mode}" unless %w[OFF RAW AM FM WFM WFM_ST WFM_ST_OIRT LSB USB CW CWL CWU].include?(demodulator_mode)
- bandwidth = opts[:bandwidth] ||= '200.000'
+ bandwidth = opts[:bandwidth] ||= '270.000'
puts "Setting demodulator mode to #{demodulator_mode} and bandwidth to #{bandwidth}..."
bandwidth = bandwidth.to_s.delete('.').to_i unless bandwidth.nil?
demod_resp = gqrx_cmd(
gqrx_sock: gqrx_sock,
@@ -337,26 +339,26 @@
gqrx_sock: gqrx_sock,
cmd: "L AF #{audio_gain_db}",
resp_ok: 'RPRT 0'
)
- squelch = opts[:squelch] ||= -65.0
+ squelch = opts[:squelch] ||= -50.0
squelch = squelch.to_f
squelch_resp = gqrx_cmd(
gqrx_sock: gqrx_sock,
cmd: "L SQL #{squelch}",
resp_ok: 'RPRT 0'
)
- precision = opts[:precision] ||= 6
+ precision = opts[:precision] ||= 5
precision = precision.to_i
raise "ERROR: Invalid precision: #{precision}" unless (1..12).include?(precision)
- lock_on_freq_duration = opts[:lock_on_freq_duration] ||= 5.0
+ lock_on_freq_duration = opts[:lock_on_freq_duration] ||= 0.25
lock_on_freq_duration = lock_on_freq_duration.to_f
- strength_lock = opts[:strength_lock] ||= -55.0
+ strength_lock = opts[:strength_lock] ||= -45.0
strength_lock = strength_lock.to_f
rf_gain = opts[:rf_gain] ||= 16.0
rf_gain = rf_gain.to_f
squelch_resp = gqrx_cmd(
@@ -371,10 +373,10 @@
gqrx_sock: gqrx_sock,
cmd: "L IF_GAIN #{intermediate_gain}",
resp_ok: 'RPRT 0'
)
- baseband_gain = opts[:baseband_gain] ||= 0.0
+ baseband_gain = opts[:baseband_gain] ||= 10.0
baseband_gain = baseband_gain.to_f
squelch_resp = gqrx_cmd(
gqrx_sock: gqrx_sock,
cmd: "L BB_GAIN #{baseband_gain}",
resp_ok: 'RPRT 0'