rpi_rgb 0.1.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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2499ea81bec1310dfc129036793098ad75e680a8
4
+ data.tar.gz: 1fa31362a8abee8c592f81ec8d02953dcb55eb8e
5
+ SHA512:
6
+ metadata.gz: 83e9218bb7452a936283c470bfb8232a446d58d39bc4112a7619a8f0c17280d33c942774de7c7f4b5bc1d36f5d85cf031f3cf9ddea8b2fe907d43230976ef85c
7
+ data.tar.gz: b87eb2e7a60513496e8ee71297bdce8b1189573fe7d25dc27572144680a15f959e34b8bdaed908a8bdf5d93b6db26f8375951ada1de6f096a4e28ea81c7b7832
checksums.yaml.gz.sig ADDED
@@ -0,0 +1,3 @@
1
+ '�Q \Y��H�c��c�T���E�
2
+ ���:���hL�:"5l�ki����e�$n���ߢ���?�}T�[$�J�T��b�P�CDMȞ�9�ْ�qQ[��sI���of�ؐ�BGi�Z�q��E[w`�M~���7�gA�H�
3
+ )+��n�n���X�NE��K���.�,��M1�x��^��8�Bjߎ�DJ,e�/�8Ą�n4�QnPh8��50Q�y�E3�9~)���w�5�[* >՝ ��?h�LE�:
data/lib/rpi_rgb.rb ADDED
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: rpi_rgb.rb
4
+
5
+ require 'rpi_led'
6
+
7
+
8
+ # Example
9
+
10
+ =begin
11
+
12
+ rgb = RPiRGB.new(%w(4 17 27), presets: {purple: [0,100,100]})
13
+ rgb.color = 'white'
14
+ sleep 2
15
+ rgb.color = 'purple'
16
+ sleep 2
17
+ rgb.color = 'green'
18
+
19
+ =end
20
+
21
+ class RPiRGB
22
+
23
+ attr_accessor :brightness
24
+ attr_reader :red, :green, :blue
25
+
26
+ def initialize(pins, brightness: 100, smooth: false, presets: nil)
27
+
28
+ @red, @green, @blue = pins.map do |x|
29
+ RPiLed.new(x, brightness: brightness, smooth: smooth)
30
+ end
31
+
32
+ @presets = presets
33
+
34
+ end
35
+
36
+ def brightness=(val)
37
+
38
+ @brightness = val
39
+ [@red, @green, @blue].each do |led|
40
+ b = led.brightness
41
+ led.brightness = val if b > 0
42
+ end
43
+
44
+ end
45
+
46
+ def colour=(val)
47
+
48
+ @colour = val
49
+
50
+ case val
51
+
52
+ when 'red'
53
+ mix 100, 0, 0
54
+
55
+ when 'green'
56
+ mix 0, 100, 0
57
+
58
+ when 'blue'
59
+ mix 0, 0, 100
60
+
61
+ when 'white'
62
+ mix 100, 100, 100
63
+
64
+ else
65
+
66
+ return unless @presets
67
+
68
+ preset = @presets[val.to_sym]
69
+
70
+ mix(preset) if preset
71
+
72
+ end
73
+ end
74
+
75
+ def colour()
76
+ @colour
77
+ end
78
+
79
+ alias color= colour=
80
+ alias color colour
81
+
82
+ def mix(*values)
83
+
84
+ values.flatten!
85
+
86
+ [@red, @green, @blue].each(&:on)
87
+ red.brightness, green.brightness, blue.brightness = values
88
+ end
89
+
90
+ def off()
91
+ [@red, @green, @blue].each(&:off)
92
+ end
93
+
94
+
95
+ end
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rpi_rgb
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE2MDQxNDEyMTg1N1oXDTE3MDQxNDEyMTg1N1owSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAMAChj/xcbnOIwagN80qJgNHWXVV+YUSrkJjfrlO/4JimFWt19o082t62fdA
19
+ rdq8Uy6FxsactikMd+fBgODjKxOGq6BPDsEGnqyzua4wpItTzBwmg/2n7cdJOFoK
20
+ oA3YSwOqcxCaJRrSj0kIii8tqEtiUZBL1z9qUi1INm0ZCJLVddnsFq+AJdRHnZde
21
+ opjCpybXdQ6Ev718SD326F7FRLaE35f8vfFwXrgIUVTJl9PWOFzQcVuyHBG5bPgT
22
+ OD57PjeT524qpnVy7IQx3Ed7nVxHlwCioyI2Kc4LzUS6fjIGxDLF1UbueRc/1oOM
23
+ NG0l97FRSZiylYahAYaz0gB40rECAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUhAzi6HlHdoliVF7SEGIaOWzm9LUwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAgNXzq1We
27
+ +HnLZ5/USBniTTgjqt9dcs8y+Ynu9HV6W0ZznQQ0/i2kvMyVrWNDSP3WyHyiGhLi
28
+ ze7goSo5zPFA3vV6EsK2+x2FYm/7HcK2ANQeJo6GKORqpY77dlaGiPJRPKxGXfFw
29
+ f0nb74GE95ZatRJdPji6h3xU9BTchTWT/PlgL9qZ3PzPv1Zx4zFEULV9Q/lgXXKb
30
+ Kftg/WY9j+Ubuf4+PEIIwU4Zc5oe9Fat7p8e1o96Ld4V6d0k+qg5jMvoj0Jjbztf
31
+ GIg4vO7u6V4Oc+4pgKLE/xBs2aBPYOzwugWzJxx1+iXcQGW7yUxDK11cRyh37ZGB
32
+ fFrcZUe/iDfywA==
33
+ -----END CERTIFICATE-----
34
+ date: 2016-04-14 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: rpi_led
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '0.1'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 0.1.2
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '0.1'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 0.1.2
56
+ description:
57
+ email: james@r0bertson.co.uk
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - lib/rpi_rgb.rb
63
+ homepage: https://github.com/jrobertson/rpi_rgb
64
+ licenses:
65
+ - MIT
66
+ metadata: {}
67
+ post_install_message:
68
+ rdoc_options: []
69
+ require_paths:
70
+ - lib
71
+ required_ruby_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ requirements: []
82
+ rubyforge_project:
83
+ rubygems_version: 2.4.8
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: Changes the colour of an RGB LED connected via GPIO to a Raspberry Pi
87
+ test_files: []
metadata.gz.sig ADDED
@@ -0,0 +1 @@
1
+ 8�{O�OI��>��l�:� �h���