gpsd_baud_rate 0.1.1 → 0.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02e41577c888b3608a3f15a1f87979cb3cc1b02371311055bb805e2c0c1533fb
4
- data.tar.gz: 1f1ea0cd24bbff4a404772649ce1a3ffa45b2208cfa8a9e116f8d96e0f20237f
3
+ metadata.gz: b782674c020c642a45c1e397f2fb736cd06c4e6655227d52b3c2390559a9876e
4
+ data.tar.gz: aa58039be7b360fd1531d4b7656347101da364be1c8afc9a043bff3b5a48a137
5
5
  SHA512:
6
- metadata.gz: bf9ba6a538a4d1d0e0e64a354e9c223718cecf3a698174f04bc030fd1f0da3c5d258bd4c85b3fa453e9953f1da7d33e30100990e72129eae9259a7c6f9f0e4d7
7
- data.tar.gz: 01b3d25a59b40a4360815daff6ccb4d65bb55ac708c419722e32e9ce22abf211e3e7e8121498bf78d75ff1fee5494aae85ebd4642a25fc6a3fd5296509e211c5
6
+ metadata.gz: 9935987dd7d1f01afb27bdf550dfb81bb1fa94fbc3bae6191d5c049ca0d236ed3f1e42b0169046fff215ae33130789ee5d8a68507c70502c43bd52b938b81acf
7
+ data.tar.gz: c4efa59dbfef40cf6b9b08ce214e7f02d4973966d6ef3ee0694dea13f444adf2224b722a6749a741a058cda85c9841ef3baeca72d41a4e3dcc908140bf8c0d1a
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gpsd_baud_rate (0.1.1)
4
+ gpsd_baud_rate (0.1.5)
5
5
  serialport (~> 1.3)
6
6
 
7
7
  GEM
@@ -39,7 +39,7 @@ Gem::Specification.new do |spec|
39
39
  spec.add_development_dependency "bundler", "~> 1.17"
40
40
  spec.add_development_dependency "rake", "~> 10.0"
41
41
 
42
- spec.add_dependency 'serialport', '~> 1.3'
42
+ spec.add_dependency 'serialport', '>= 1.3.1'
43
43
 
44
44
  # spec.add_development_dependency "rspec", "~> 3.2"
45
45
  end
@@ -1,10 +1,12 @@
1
1
  require "gpsd_baud_rate/version"
2
2
  require "serialport"
3
+ require 'logger'
3
4
 
4
5
 
5
6
  class GpsdBaudRate
6
7
  attr_reader :version
7
8
 
9
+ @@version = GpsdBaudRate::VERSION.to_s
8
10
 
9
11
  @@device = '/dev/ttyAMA0'
10
12
  @@service = 'gpsd.service'
@@ -14,41 +16,40 @@ class GpsdBaudRate
14
16
  @@NMEA_sentences = %w[$GPGGA $GPGSA $GPGSV $GPRMC $GPZDA]
15
17
 
16
18
  def initialize goal_rate = @@baud_rates[0]
17
- @version =GpsdBaudRate::VERSION
18
-
19
- puts "\n\n\n"
20
19
 
20
+ @logger = new_logger path: "log/GpsdbaudRate.log", progname: "GpsdBaudRate", time_format: "'%Y-%m-%d %T.%N %z %Z'", level: Logger::DEBUG
21
+ @logger.info "GpsdBaudRate Gem - Version: #{@@version}"
21
22
  # pid= %x|pgrep -f "ruby /home/deploy/bin/set_baud.rb"|
22
- # puts "Pid: #{pid}, $$: #{$$}, $BASHPID: #{$BASHPID}"
23
+ # @logger.debug "Pid: #{pid}, $$: #{$$}, $BASHPID: #{$BASHPID}"
23
24
 
24
25
  @goal_rate = goal_rate.to_i
25
- puts "Goal_rate: #{@goal_rate}"
26
- =begin
26
+ @logger.debug "Goal_rate: #{@goal_rate}"
27
+
28
+
27
29
  gpsd_start unless gpsd_active? #make sure it's running
28
30
 
29
- puts "Service Status: #{gpsd_active?}"
30
- puts "Baud Rate: #{@active_rate = baud_rate}"
31
+ @logger.debug "Service Status: #{gpsd_active?}"
32
+ @logger.debug "Baud Rate: #{@active_rate = baud_rate}"
31
33
  gpsd_stop
32
- puts "Service Status: #{gpsd_active?}"
33
- puts "Baud Rate: #{@inactive_rate = baud_rate}"
34
+ @logger.debug "Service Status: #{gpsd_active?}"
35
+ @logger.debug "Baud Rate: #{@inactive_rate = baud_rate}"
34
36
 
35
- puts "\n~~~~~~~~~~~~ Read at #{@active_rate} baud ~~~~~~~~~~~~~~"
37
+ @logger.debug "\n~~~~~~~~~~~~ Read at #{@active_rate} baud ~~~~~~~~~~~~~~"
36
38
  if (read_from_device @active_rate) && (@active_rate != @goal_rate)
37
- puts "Setting Goal Rate (#{goal_rate})"
39
+ @logger.debug "Setting Goal Rate (#{goal_rate})"
38
40
  set_PMTK_baud_rate @goal_rate
39
41
  if read_from_device @goal_rate
40
- puts "Goal Baud Rate (#{@goal_rate}) has been set"
42
+ @logger.debug "Goal Baud Rate (#{@goal_rate}) has been set"
41
43
  end
42
44
  else
43
- puts "Already at Goal Baud Rate"
45
+ @logger.debug "Already at Goal Baud Rate"
44
46
  end
45
47
 
46
48
 
47
49
  #
48
50
  # Cleanup
49
51
  gpsd_start
50
- puts "Service Status: #{gpsd_active?}"
51
- =end
52
+ @logger.debug "Service Status: #{gpsd_active?}"
52
53
  end #initiallize
53
54
 
54
55
  #~~~~~~~~~~~~~~~~~~~~~ gosd_status ~~~~~~~~~~~~~~~~~
@@ -86,7 +87,7 @@ class GpsdBaudRate
86
87
  # returns original baud_rate
87
88
  def baud_rate=( b_rate)
88
89
  msg= %x| sudo stty #{b_rate} -F "#{@@device}"|
89
- msg.each {|m| puts m}
90
+ msg.each {|m| @logger.debug m}
90
91
  end
91
92
 
92
93
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -108,20 +109,20 @@ class GpsdBaudRate
108
109
  count = 0
109
110
  ser = SerialPort.open(@@device, baud.to_i, 8, 1, SerialPort::NONE ) { |ser|
110
111
  ser.read_timeout = 900
111
- puts "ReadTimeout: #{ser.read_timeout} ms"
112
+ @logger.debug "ReadTimeout: #{ser.read_timeout} ms"
112
113
  5.times { results << ser.readline(100)}
113
- results.each { |s| puts s}
114
+ results.each { |s| @logger.debug s}
114
115
  results.each do |r|
115
116
  count += 1 if @@NMEA_sentences.any? { |s| s == r[0,6]}
116
117
  end
117
- puts "Count: #{count}"
118
+ @logger.debug "Count: #{count}"
118
119
  }
119
120
  rescue IOError => e
120
- puts "IOError: #{e.inspect}"
121
+ @logger.debug "IOError: #{e.inspect}"
121
122
  rescue => e
122
- puts "Error: #{e.inspect}"
123
+ @logger.debug "Error: #{e.inspect}"
123
124
  end
124
- puts "SerialPort Closed"
125
+ @logger.debug "SerialPort Closed"
125
126
  gpsd_start
126
127
  count >= 2
127
128
  end
@@ -131,55 +132,68 @@ class GpsdBaudRate
131
132
  results=[]
132
133
 
133
134
  begin
134
- puts "Send to device"
135
+ @logger.debug "Send to device"
135
136
  ser = SerialPort.open( @@device, baud, 8, 1, SerialPort::NONE) { |ser|
136
137
  count = ser.write cmmd+"\r\n"
137
138
  }
138
139
  rescue IOError => e
139
- puts "IOError: #{e.inspect}"
140
+ @logger.debug "IOError: #{e.inspect}"
140
141
  rescue => e
141
- puts "Error: #{e.inspect}"
142
+ @logger.debug "Error: #{e.inspect}"
142
143
  end
143
- puts "Bytes Written: #{count}"
144
+ @logger.debug "Bytes Written: #{count}"
144
145
 
145
146
  begin
146
- puts "Receive response"
147
+ @logger.debug "Receive response"
147
148
  ser = SerialPort.open( @@device, @goal_rate, 8, 1, SerialPort::NONE) { |ser|
148
149
  ser.read_timeout = 900
149
150
  10.times {results << ser.readline(100)}
150
151
  }
151
152
  rescue IOError => e
152
- puts "IOError: #{e.inspect}"
153
+ @logger.debug "IOError: #{e.inspect}"
153
154
  rescue => e
154
- puts "Error: #{e.inspect}"
155
+ @logger.debug "Error: #{e.inspect}"
155
156
  end
156
- results.each { |r| puts "Results: #{r}"}
157
+ results.each { |r| @logger.debug "Results: #{r}"}
157
158
 
158
159
  end
159
160
 
160
161
 
161
162
  def find_baud_rate
162
- puts %x| sudo stty -F "#{@@device}"|
163
+ @logger.debug %x| sudo stty -F "#{@@device}"|
163
164
  gpsd_stop
164
- puts %x|sudo stty -F "#{@@device}"|
165
+ @logger.debug %x|sudo stty -F "#{@@device}"|
165
166
  gpsd_start
166
167
  end
167
168
 
168
169
  def set_PMTK_baud_rate rate
169
- puts "In set_PMTK_baud_rate"
170
+ @logger.debug "In set_PMTK_baud_rate"
170
171
  type = 251
171
172
  cmmd = nmea_checksum("PMTK#{type},#{rate}")
172
173
  write_to_device cmmd, @active_rate
173
174
  end
174
175
 
175
176
  def nmea_checksum cmmd
176
- puts "In nmea_checksum, cmmd: #{cmmd}"
177
+ @logger.debug "In nmea_checksum, cmmd: #{cmmd}"
177
178
  sum=0
178
179
  cmmd.each_byte { |i| sum = sum ^ i.ord}
179
180
  sum = sum & 0xff
180
181
  new_cmmd = "\$#{cmmd}*#{sum.to_s(16)}".upcase
181
- puts "new_cmmd: #{new_cmmd}"
182
+ @logger.debug "new_cmmd: #{new_cmmd}"
182
183
  new_cmmd
183
184
  end
184
185
 
186
+ LOG_LEVELS = {debug: Logger::DEBUG, info: Logger::INFO, warn: Logger::WARN,
187
+ error: Logger::ERROR, fatal: Logger::FATAL, unknown: Logger::UNKNOWN}
188
+
189
+ def new_logger( progname: nil, path:, format: nil, time_format: nil, level: LOG_LEVELS[:debug])
190
+ logger = Logger.new(path)
191
+ logger.progname = progname if progname
192
+ logger.format = format if format
193
+ logger.level = level if level
194
+ logger.datetime_format = time_format if time_format
195
+ logger
196
+ end
197
+
198
+
185
199
  end
@@ -1,3 +1,3 @@
1
1
  class GpsdBaudRate
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gpsd_baud_rate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Finnegan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-08-24 00:00:00.000000000 Z
11
+ date: 2020-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: serialport
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '1.3'
47
+ version: 1.3.1
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '1.3'
54
+ version: 1.3.1
55
55
  description:
56
56
  email:
57
57
  - steven@rustyshamrock.com