rpi_led_bargraph 0.1.0 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: daee57871dc6a4e5e45a256f2d9205d84e0e45b3
4
- data.tar.gz: fcaf8a25dd0effb9936698d706f01ebd23095019
3
+ metadata.gz: 10daac76501cc7eba2e8777017a99f553d0bb4f8
4
+ data.tar.gz: 95a1f1561c05003a38fcd4011fe79249953d58b2
5
5
  SHA512:
6
- metadata.gz: 255dcca94e857f77e56cc235e628b9cbea0cb986edc87fcd749aed3415837a19611c494cc0ebcce0898e517ce165d7a3cbf655eb4070651469f848e0f718a060
7
- data.tar.gz: d080fe99c150ebe2c74dd90d909f180a490dda1f6f50f412892dbfda451e6bfcf78c1d18a2cb38cc2ee1611d8c94accb46bd4fd461d94c097d35c342968f92bc
6
+ metadata.gz: 3244c3a0908571204058f72da10411862b5cd0bbfa6cba71bf57a8f499d8f30b1a31bf4e71776813d0adc0b12bcc78d54415b5652991e88cb4cd0fe729978dff
7
+ data.tar.gz: a92793041ca423dbe60cea6fe4b44280640f87b8c8fb21a060e91bde5479337d2ecafd700005113ebf7011b056170a8cd51643e9d6a9de41f69ba30a670d49a3
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -2,25 +2,37 @@
2
2
 
3
3
  # file: rpi_led_bargraph.rb
4
4
 
5
- require 'rpi'
5
+ require 'rpi_led'
6
6
 
7
7
 
8
- class RPiLedBarGraph < RPi
8
+ class RPiLedBarGraph
9
+
10
+ attr_accessor :brightness
9
11
 
10
12
  def initialize(pins, wait: 0.1, dir: :ltr, invert: false)
11
- super pins
13
+
14
+ @pins = pins.map {|x| RPiLed.new x, smooth: false}
12
15
  @wait, @dir, @invert = wait, dir, invert
16
+ @level, @brightness, @blink = 100, 100, false
17
+
18
+ end
19
+
20
+ def brightness=(val)
21
+ @brightness = val
22
+ level(@level, blink: @blink)
13
23
  end
14
24
 
15
25
  def on
16
- a = @dir == :ltr ? pins : pins.reverse
26
+ a = @dir == :ltr ? @pins : @pins.reverse
17
27
  a.each {|x| x.on; sleep @wait}
28
+ @old_level = 100
18
29
  :on
19
30
  end
20
31
 
21
32
  def off
22
- a = @dir == :ltr ? pins.reverse : pins
33
+ a = @dir == :ltr ? @pins.reverse : @pins
23
34
  a.each {|x| x.off; sleep @wait}
35
+ @old_level = 0
24
36
  :off
25
37
  end
26
38
 
@@ -30,22 +42,41 @@ class RPiLedBarGraph < RPi
30
42
 
31
43
  # input % from 0-100
32
44
  #
33
- def level(n, state=nil, blink: false)
45
+ def level(n, blink: false)
34
46
 
35
- blink = state if state == :blink
47
+ @blink = blink
36
48
 
37
- upper = pins.length / (100.0 / n) - 1
38
- upper = pins.length - upper - 1 if @invert
49
+ upper = (@pins.length / (100.0 / n) - 1).round
50
+ upper = @pins.length - upper - 1 if @invert
51
+
52
+ a = @dir == :ltr ? @pins : @pins.reverse
53
+
39
54
 
40
- a = @dir == :ltr ? pins : pins.reverse
41
55
  a.each(&:off)
42
- sleep 0.3 if blink
43
- a[0..(upper).to_i].each(&:on)
56
+ a[0..(upper - 1).to_i].each {|x| x.on; x.brightness = @brightness}
57
+
58
+ if @blink then
59
+ sleep 0.3
60
+ a[upper].brightness = @brightness
61
+ a[upper].blink
62
+ else
63
+ a[upper].off
64
+ sleep 0.3
65
+ a[upper].brightness = @brightness
66
+ end
44
67
 
45
- a[upper].blink if blink
46
-
68
+ @level = n
69
+
47
70
  end
48
71
 
49
72
  alias progress level
73
+
50
74
 
51
75
  end
76
+
77
+ if __FILE__ == $0 then
78
+
79
+
80
+ g = RPiLedBarGraph.new(%w(26 19 13 6 5 11 20 16 4 12), wait: 0.1)
81
+ g.on; sleep 0.2; g.off
82
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rpi_led_bargraph
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,28 +31,28 @@ cert_chain:
31
31
  4ry38pQMrbNookqpiCpOBwQKZxzlSEt5e4L6yn9WL5PIPG9MDUnTNI7QU9vTJQIR
32
32
  VPsfAKArOaooXw==
33
33
  -----END CERTIFICATE-----
34
- date: 2016-02-28 00:00:00.000000000 Z
34
+ date: 2016-04-10 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
- name: rpi
37
+ name: rpi_led
38
38
  requirement: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '0.4'
42
+ version: '0.1'
43
43
  - - ">="
44
44
  - !ruby/object:Gem::Version
45
- version: 0.4.7
45
+ version: 0.1.1
46
46
  type: :runtime
47
47
  prerelease: false
48
48
  version_requirements: !ruby/object:Gem::Requirement
49
49
  requirements:
50
50
  - - "~>"
51
51
  - !ruby/object:Gem::Version
52
- version: '0.4'
52
+ version: '0.1'
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: 0.4.7
55
+ version: 0.1.1
56
56
  description:
57
57
  email: james@r0bertson.co.uk
58
58
  executables: []
metadata.gz.sig CHANGED
Binary file