class SimCard::SignalQuality
Attributes
signal_strength[R]
Public Class Methods
new(at_interface)
click to toggle source
# File lib/sim_card/signal_quality.rb, line 5 def initialize at_interface @at_interface = at_interface @signal_strength = nil @bit_error_rate_min = nil @bit_error_rate_max = nil parse end
Private Instance Methods
parse()
click to toggle source
# File lib/sim_card/signal_quality.rb, line 14 def parse response = @at_interface.send 'AT+CSQ' a = response.split("\n") if a[1] && a[1].include?('+CSQ: ') b = a[1].match /(\d+),(\d+)/ if b.size == 3 raw_signal_strength = b[1].to_i parse_signal_strength raw_signal_strength end end end
parse_signal_strength(raw_signal_strength)
click to toggle source
# File lib/sim_card/signal_quality.rb, line 26 def parse_signal_strength raw_signal_strength if raw_signal_strength >= 0 && raw_signal_strength <= 31 @signal_strength = (2 * raw_signal_strength) - 113 elsif raw_signal_strength == 99 # not known end end