ld3w 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (6) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/lib/ld3w.rb +21 -14
  5. metadata +2 -2
  6. metadata.gz.sig +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8f0bd23d21d7d68ee5342484d843565806006f39
4
- data.tar.gz: b94bf8e5fcbc42c9e048169e38612fe6b50d4b81
3
+ metadata.gz: 60c0844784389da099e185e17e0c256770a0accc
4
+ data.tar.gz: 9ebc33894fe59c20cf5c49d119032cc3a9d79d31
5
5
  SHA512:
6
- metadata.gz: 0e37337b6adf0b9c6ccf76bfe48b00693a0df581b32840de9e74c90cb4d60cae307912729edf88834f15c74a2d075f02774fb594ab96033b260c5fe0c0830cb8
7
- data.tar.gz: 9b30dcebdacd5ad12f36a2ab32646e8b0d1c762dde7eb5b5a0c2b46c4b399bb470a6d231a9dea49dbaeda7acd7d3c9e3e6811d67b322571cff7e043a3de1005e
6
+ metadata.gz: 399d5e0c9a64155e6419a9f975dfcabf28f7ecd28d399aa9a1e5ece9a2023eb1220f5d674ba2c031bc6e85f670e9c7026045d361c5c41d807b8de336d1d7b391
7
+ data.tar.gz: 1bf1c0c3db1e9e6aae375743a634eb2786b6cafae31cbb8e7fbaf546fc614aa926e38206b1f8c8ba5ec7fd7eeca0b114cfd59a4771a8a697e73d7d71a0667a00
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -5,6 +5,9 @@
5
5
 
6
6
  require 'nmea_parser'
7
7
 
8
+ class Ld3wError < ErrorException
9
+ end
10
+
8
11
  class Ld3w
9
12
 
10
13
 
@@ -14,21 +17,24 @@ class Ld3w
14
17
  @file = '/dev/' + device
15
18
  @np = NMEAParser.new
16
19
  @affirmations = affirmations
20
+ @device = device
17
21
 
18
22
  end
19
23
 
20
24
  def locate()
21
25
 
22
26
  line = ''
23
-
24
- t = Time.now
25
-
26
- IO.popen @command do |io|
27
-
28
- while not File.exists? @file
29
- sleep 1
30
- puts 'waiting ...'
31
- end
27
+ lines = []
28
+
29
+ IO.popen @command, autoclose: true do |io|
30
+
31
+ sleep 2
32
+ t = Time.now
33
+
34
+ (sleep 1; puts 'waiting ...') until File.exists?(@file) or
35
+ Time.now > (t + 10)
36
+
37
+ raise(Ld3wError, 'Cannot open file ' + @file) unless File.exists? @file
32
38
 
33
39
  # get the data from the file
34
40
 
@@ -41,21 +47,22 @@ class Ld3w
41
47
  c = x.split(',').count('')
42
48
 
43
49
  if x =~ pattern and c <= 2 then
44
- line = x
50
+ lines << x
45
51
  line_count > @affirmations ? break : line_count += 1
46
52
  end
53
+ sleep 0.05
47
54
  end
48
55
 
49
56
  puts 'bye'
50
- Process.kill('KILL', io.pid)
57
+ Process.kill('INT', io.pid)
51
58
 
52
59
  end
53
-
54
- @np.parse(line)
60
+
61
+ #`rfcomm release #{@device}`
62
+ @np.parse(lines.last)
55
63
  @np
56
64
 
57
65
 
58
66
  end
59
67
 
60
68
  end
61
-
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ld3w
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  zNny3vatsFpBZYhgzFmjZhhztDhFFHmRS0GOEeH2GOaeZx61e6R+5ZDhGKvP2vXa
32
32
  bG6X0NTTKzK8kg==
33
33
  -----END CERTIFICATE-----
34
- date: 2017-06-21 00:00:00.000000000 Z
34
+ date: 2017-06-24 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: nmea_parser
metadata.gz.sig CHANGED
Binary file