jwhitehorn / pi_piper Goto Github PK
View Code? Open in Web Editor NEWEvent driven Raspberry Pi GPIO programming in Ruby
License: BSD 2-Clause "Simplified" License
Event driven Raspberry Pi GPIO programming in Ruby
License: BSD 2-Clause "Simplified" License
PiPiper::Spi::set_mode is broken in stable as well as in pre versions because PiPiper::Spi::SPI_MODE* constants are missing..
RubyGems.org doesn't report a license for your gem. This is because it is not specified in the gemspec of your last release.
via e.g.
spec.license = 'MIT'
# or
spec.licenses = ['MIT', 'GPL-2']
Including a license in your gemspec is an easy way for rubygems.org and other tools to check how your gem is licensed. As you can imagine, scanning your repository for a LICENSE file or parsing the README, and then attempting to identify the license or licenses is much more difficult and more error prone. So, even for projects that already specify a license, including a license in your gemspec is a good practice. See, for example, how rubygems.org uses the gemspec to display the rails gem license.
There is even a License Finder gem to help companies/individuals ensure all gems they use meet their licensing needs. This tool depends on license information being available in the gemspec. This is an important enough issue that even Bundler now generates gems with a default 'MIT' license.
I hope you'll consider specifying a license in your gemspec. If not, please just close the issue with a nice message. In either case, I'll follow up. Thanks for your time!
Appendix:
If you need help choosing a license (sorry, I haven't checked your readme or looked for a license file), GitHub has created a license picker tool. Code without a license specified defaults to 'All rights reserved'-- denying others all rights to use of the code.
Here's a list of the license names I've found and their frequencies
p.s. In case you're wondering how I found you and why I made this issue, it's because I'm collecting stats on gems (I was originally looking for download data) and decided to collect license metadata,too, and make issues for gemspecs not specifying a license as a public service :). See the previous link or my blog post about this project for more information.
I'm thinking to get a new RPi 3 because inboard wifi, but it is upgrade to bcm2387. I'm wondering is Pi_Piper can be use in Pi 3 ?
Hi, thanks for nice ruby tools for RPi, I have built some home security securyPi
It works fine, but some time (probably once in couple of days) I receive segmentation fault.
What do you think where should I start looking ?
Maybe the problem is low memory (512MB) and I use big gems like: aws-sdk and mail.
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pwm.rb:66: [BUG] Segmentation fault at 0x000013
ruby 2.3.0p0 (2015-12-25 revision 53290) [armv6l-linux-eabihf]
-- Control frame information -----------------------------------------------
c:0010 p:---- s:0036 e:000035 CFUNC :pwm_data
c:0009 p:0058 s:0031 e:000030 METHOD /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pwm.rb:66
c:0008 p:0025 s:0027 e:000026 METHOD sound.rb:12
c:0007 p:0130 s:0022 e:000021 BLOCK /home/pi/securiPi/watcher.rb:53 [FINISH]
c:0006 p:---- s:0019 e:000018 CFUNC :times
c:0005 p:0276 s:0016 e:000015 BLOCK /home/pi/securiPi/watcher.rb:43 [FINISH]
c:0004 p:0034 s:0010 e:000009 BLOCK /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb:19 [FINISH]
c:0003 p:---- s:0008 e:000007 CFUNC :loop
c:0002 p:0027 s:0005 e:000004 BLOCK /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb:16 [FINISH]
c:0001 p:---- s:0002 e:000001 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb:16:in `block in watch'
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb:16:in `loop'
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb:19:in `block (2 levels) in watch'
/home/pi/securiPi/watcher.rb:43:in `block in <main>'
/home/pi/securiPi/watcher.rb:43:in `times'
/home/pi/securiPi/watcher.rb:53:in `block (2 levels) in <main>'
sound.rb:12:in `beep'
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pwm.rb:66:in `value='
/home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pwm.rb:66:in `pwm_data'
-- Other runtime information -----------------------------------------------
* Loaded script: /home/pi/securiPi/watcher.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
4 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/encdb.so
5 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/trans/transdb.so
6 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/unicode_normalize.rb
7 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/rbconfig.rb
8 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/compatibility.rb
9 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/defaults.rb
10 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/deprecate.rb
11 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/errors.rb
12 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/version.rb
13 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/requirement.rb
14 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/platform.rb
15 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/basic_specification.rb
16 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/stub_specification.rb
17 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/util/list.rb
18 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/stringio.so
19 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/specification.rb
20 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/exceptions.rb
21 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/core_ext/kernel_gem.rb
22 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/monitor.rb
23 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb
24 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems.rb
25 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/path_support.rb
26 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/rubygems/dependency.rb
27 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/version.rb
28 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/core_ext/name_error.rb
29 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/levenshtein.rb
30 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/jaro_winkler.rb
31 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkable.rb
32 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/delegate.rb
33 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
34 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
35 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
36 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
37 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/spell_checkers/null_checker.rb
38 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean/formatter.rb
39 /home/pi/.rvm/gems/ruby-2.3.0@global/gems/did_you_mean-1.0.0/lib/did_you_mean.rb
40 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/rubyeventmachine.so
41 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/version.rb
42 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/pool.rb
43 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/deferrable.rb
44 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/future.rb
45 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/streamer.rb
46 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/spawnable.rb
47 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/processes.rb
48 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/iterator.rb
49 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/buftok.rb
50 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/timers.rb
51 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/protocols.rb
52 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/connection.rb
53 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/callback.rb
54 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/queue.rb
55 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/channel.rb
56 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/file_watch.rb
57 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/process_watch.rb
58 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/tick_loop.rb
59 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/resolver.rb
60 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/completion.rb
61 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/em/threaded_resource.rb
62 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/shellwords.rb
63 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/socket.so
64 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/io/wait.so
65 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/socket.rb
66 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/timeout.rb
67 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/digest.so
68 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/digest.rb
69 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/openssl.so
70 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/bn.rb
71 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/pkey.rb
72 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/cipher.rb
73 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/config.rb
74 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/digest.rb
75 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/x509.rb
76 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/buffering.rb
77 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/io/nonblock.so
78 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl/ssl.rb
79 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/openssl.rb
80 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/securerandom.rb
81 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/resolv.rb
82 /home/pi/.rvm/gems/ruby-2.3.0/gems/eventmachine-1.0.9/lib/eventmachine.rb
83 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pin_values.rb
84 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pin.rb
85 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/frequency.rb
86 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/platform.rb
87 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pin_error.rb
88 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/i2c.rb
89 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/spi.rb
90 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/version.rb
91 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/stub_driver.rb
92 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/pwm.rb
93 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper.rb
94 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/ostruct.rb
95 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/rfc2396_parser.rb
96 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/rfc3986_parser.rb
97 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/common.rb
98 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/generic.rb
99 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/ftp.rb
100 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/http.rb
101 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/https.rb
102 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/ldap.rb
103 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/ldaps.rb
104 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri/mailto.rb
105 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/uri.rb
106 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/protocol.rb
107 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/zlib.so
108 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/exceptions.rb
109 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/header.rb
110 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/windows_31j.so
111 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/generic_request.rb
112 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/request.rb
113 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/requests.rb
114 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/response.rb
115 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/responses.rb
116 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/proxy_delta.rb
117 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http/backward.rb
118 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/http.rb
119 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/version.rb
120 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/generic_object.rb
121 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/common.rb
122 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/utf_16be.so
123 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/utf_16le.so
124 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/utf_32be.so
125 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/enc/utf_32le.so
126 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/json/ext/parser.so
127 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/json/ext/generator.so
128 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json/ext.rb
129 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/json.rb
130 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/pathname.so
131 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/pathname.rb
132 /home/pi/.rvm/gems/ruby-2.3.0/gems/jmespath-1.1.3/lib/jmespath.rb
133 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse.rb
134 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/cgi/core.rb
135 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/cgi/escape.so
136 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/cgi/util.rb
137 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/cgi/cookie.rb
138 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/cgi.rb
139 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/util.rb
140 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core.rb
141 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources.rb
142 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-2.2.28/lib/aws-sdk.rb
143 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/credentials.rb
144 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/date_core.so
145 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/date.rb
146 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/digest/md5.so
147 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/smtp.rb
148 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/logger.rb
149 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types/logger.rb
150 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types/deprecations.rb
151 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/type.rb
152 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types/cache.rb
153 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types/loader_path.rb
154 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types/loader.rb
155 /home/pi/.rvm/gems/ruby-2.3.0/gems/mime-types-2.99.1/lib/mime/types.rb
156 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/version_specific/ruby_1_9.rb
157 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/version.rb
158 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/core_extensions/nil.rb
159 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/core_extensions/object.rb
160 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/core_extensions/string.rb
161 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/indifferent_hash.rb
162 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/core_extensions/string/access.rb
163 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/multibyte/exceptions.rb
164 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/multibyte/chars.rb
165 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/multibyte/unicode.rb
166 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/multibyte/utils.rb
167 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/multibyte.rb
168 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/core_extensions/string/multibyte.rb
169 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/constants.rb
170 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/utilities.rb
171 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/singleton.rb
172 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/configuration.rb
173 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/network/retriever_methods/base.rb
174 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/network.rb
175 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/exception.rb
176 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/syntax_error.rb
177 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/psych.so
178 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/omap.rb
179 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/set.rb
180 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/class_loader.rb
181 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/strscan.so
182 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/scalar_scanner.rb
183 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/node.rb
184 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/stream.rb
185 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/document.rb
186 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/sequence.rb
187 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/scalar.rb
188 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/mapping.rb
189 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes/alias.rb
190 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/nodes.rb
191 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/streaming.rb
192 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/visitor.rb
193 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/to_ruby.rb
194 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/emitter.rb
195 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/handler.rb
196 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/tree_builder.rb
197 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/yaml_tree.rb
198 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/json/ruby_events.rb
199 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/json_tree.rb
200 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors/depth_first.rb
201 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/visitors.rb
202 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/parser.rb
203 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/coder.rb
204 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/core_ext.rb
205 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/deprecated.rb
206 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/stream.rb
207 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/json/yaml_events.rb
208 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/json/tree_builder.rb
209 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/json/stream.rb
210 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych/handlers/document_stream.rb
211 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb
212 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/yaml.rb
213 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/message.rb
214 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/part.rb
215 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/header.rb
216 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parts_list.rb
217 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/attachments_list.rb
218 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/body.rb
219 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields.rb
220 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/address_container.rb
221 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/common_address.rb
222 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/common_field.rb
223 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/structured_field.rb
224 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/to_field.rb
225 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/cc_field.rb
226 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/bcc_field.rb
227 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/common_message_id.rb
228 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/message_id_field.rb
229 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/in_reply_to_field.rb
230 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/references_field.rb
231 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/unstructured_field.rb
232 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/subject_field.rb
233 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/comments_field.rb
234 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/keywords_field.rb
235 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/common_date.rb
236 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/date_field.rb
237 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/from_field.rb
238 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/sender_field.rb
239 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/reply_to_field.rb
240 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_date_field.rb
241 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_from_field.rb
242 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_sender_field.rb
243 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_to_field.rb
244 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_cc_field.rb
245 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_bcc_field.rb
246 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/resent_message_id_field.rb
247 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/return_path_field.rb
248 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/received_field.rb
249 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/mime_version_field.rb
250 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_transfer_encoding_field.rb
251 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_description_field.rb
252 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/common/parameter_hash.rb
253 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_disposition_field.rb
254 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_type_field.rb
255 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_id_field.rb
256 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/fields/content_location_field.rb
257 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/field.rb
258 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/field_list.rb
259 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/envelope.rb
260 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements.rb
261 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings.rb
262 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/transfer_encoding.rb
263 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/binary.rb
264 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/8bit.rb
265 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/7bit.rb
266 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/base64.rb
267 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/quoted_printable.rb
268 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/encodings/unix_to_unix.rb
269 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/matchers/has_sent_mail.rb
270 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/mail.rb
271 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail.rb
272 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/check_delivery_params.rb
273 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/network/delivery_methods/smtp.rb
274 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi_c.so
275 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/platform.rb
276 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/types.rb
277 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/library.rb
278 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/errno.rb
279 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/pointer.rb
280 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/memorypointer.rb
281 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/struct_layout_builder.rb
282 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/struct.rb
283 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/union.rb
284 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/managedstruct.rb
285 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/callback.rb
286 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/io.rb
287 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/autopointer.rb
288 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/variadic.rb
289 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/enum.rb
290 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi/ffi.rb
291 /home/pi/.rvm/gems/ruby-2.3.0/gems/ffi-1.9.10/lib/ffi.rb
292 /home/pi/.rvm/gems/ruby-2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb
293 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/content_type_element.rb
294 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/parser_info.rb
295 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/address_lists_machine.rb
296 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/phrase_lists_machine.rb
297 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/date_time_machine.rb
298 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/received_machine.rb
299 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/message_ids_machine.rb
300 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/envelope_from_machine.rb
301 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/mime_version_machine.rb
302 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/content_type_machine.rb
303 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/content_disposition_machine.rb
304 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/content_transfer_encoding_machine.rb
305 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby/machines/content_location_machine.rb
306 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel/ruby.rb
307 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/ragel.rb
308 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/address_lists_parser.rb
309 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/phrase_lists_parser.rb
310 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/date_time_parser.rb
311 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/received_parser.rb
312 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/message_ids_parser.rb
313 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/envelope_from_parser.rb
314 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/mime_version_parser.rb
315 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/content_type_parser.rb
316 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/content_disposition_parser.rb
317 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/content_transfer_encoding_parser.rb
318 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers/content_location_parser.rb
319 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/parsers.rb
320 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/content_transfer_encoding_element.rb
321 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/address_list.rb
322 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/address.rb
323 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/content_disposition_element.rb
324 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/message_ids_element.rb
325 /home/pi/.rvm/gems/ruby-2.3.0/gems/mail-2.6.3/lib/mail/elements/mime_version_element.rb
326 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/service.rb
327 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/type_builder.rb
328 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/handler_builder.rb
329 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/set.rb
330 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugin_list.rb
331 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugin.rb
332 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/handler.rb
333 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugins/endpoint.rb
334 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/net/https.rb
335 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/net_http/patches.rb
336 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/net_http/connection_pool.rb
337 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/net_http/handler.rb
338 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/handler_list.rb
339 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/handler_list_entry.rb
340 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugins/net_http.rb
341 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugins/raise_response_errors.rb
342 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugins/response_target.rb
343 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/base.rb
344 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/client_stubs.rb
345 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/client_waiters.rb
346 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/client.rb
347 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/api/builder.rb
348 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/model/api.rb
349 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/json.rb
350 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/api/customizations.rb
351 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/api/docs/docstring_provider.rb
352 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/model/shapes.rb
353 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/api/shape_map.rb
354 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/model/operation.rb
355 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/structure.rb
356 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/empty_structure.rb
357 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/waiters/provider.rb
358 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/waiters/poller.rb
359 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/errors.rb
360 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/pager.rb
361 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/definition.rb
362 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/operation_methods.rb
363 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/resource.rb
364 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/options.rb
365 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/builder.rb
366 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/builder_sources.rb
367 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/operations.rb
368 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/request.rb
369 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/request_params.rb
370 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3/bucket.rb
371 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3/object.rb
372 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3/object_summary.rb
373 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3/multipart_upload.rb
374 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3.rb
375 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/s3/bucket_region_cache.rb
376 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/s3.rb
377 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/plugins/content_length.rb
378 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/logging.rb
379 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/param_converter.rb
380 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/param_validator.rb
381 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/user_agent.rb
382 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/retry_errors.rb
383 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/global_configuration.rb
384 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/regional_endpoint.rb
385 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/time.rb
386 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/signers/v4.rb
387 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/base64.rb
388 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/signers/base.rb
389 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/signers/v3.rb
390 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/signers/v2.rb
391 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/etc.so
392 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/fileutils.rb
393 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tmpdir.rb
394 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/tempfile.rb
395 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/webrick/httputils.rb
396 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/signers/s3.rb
397 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/request_signer.rb
398 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/response_paging.rb
399 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/stub_responses.rb
400 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/handler.rb
401 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/xml/error_handler.rb
402 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/protocols/rest_xml.rb
403 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_bucket_dns.rb
404 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_expect_100_continue.rb
405 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_http_200_errors.rb
406 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_get_bucket_location_fix.rb
407 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_location_constraint.rb
408 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_md5s.rb
409 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_redirects.rb
410 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_sse_cpk.rb
411 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_url_encoded_keys.rb
412 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/plugins/s3_request_signer.rb
413 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/configuration.rb
414 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/endpoint_provider.rb
415 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-resources-2.2.28/lib/aws-sdk-resources/services/s3/file_uploader.rb
416 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/request.rb
417 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/request_context.rb
418 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/http/request.rb
419 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/http/headers.rb
420 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/http/response.rb
421 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/param_converter.rb
422 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/param_validator.rb
423 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/version.rb
424 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/request/builder.rb
425 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/request/endpoint.rb
426 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/request/headers.rb
427 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/request/body.rb
428 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/xml/builder.rb
429 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/networking_error.rb
430 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/seahorse/client/response.rb
431 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/response/parser.rb
432 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/response/status_code.rb
433 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/response/headers.rb
434 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/rest/response/body.rb
435 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/nokogiri.so
436 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/version.rb
437 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/syntax_error.rb
438 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/pp/node.rb
439 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/pp/character_data.rb
440 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/pp.rb
441 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/parse_options.rb
442 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/sax/document.rb
443 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/sax/parser_context.rb
444 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/sax/parser.rb
445 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/sax/push_parser.rb
446 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/sax.rb
447 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/searchable.rb
448 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/node/save_options.rb
449 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/node.rb
450 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/attribute_decl.rb
451 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/element_decl.rb
452 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/element_content.rb
453 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/character_data.rb
454 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/namespace.rb
455 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/attr.rb
456 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/dtd.rb
457 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/cdata.rb
458 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/text.rb
459 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/document.rb
460 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/document_fragment.rb
461 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/processing_instruction.rb
462 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/node_set.rb
463 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/syntax_error.rb
464 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/xpath/syntax_error.rb
465 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/xpath.rb
466 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/xpath_context.rb
467 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/builder.rb
468 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/reader.rb
469 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/notation.rb
470 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/entity_decl.rb
471 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/schema.rb
472 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml/relax_ng.rb
473 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xml.rb
474 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xslt/stylesheet.rb
475 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/xslt.rb
476 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/entity_lookup.rb
477 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/document.rb
478 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/document_fragment.rb
479 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/sax/parser_context.rb
480 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/sax/parser.rb
481 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/sax/push_parser.rb
482 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/element_description.rb
483 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/element_description_defaults.rb
484 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html.rb
485 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/decorators/slop.rb
486 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/node.rb
487 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/xpath_visitor.rb
488 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/armv6l-linux-eabihf/racc/cparse.so
489 /home/pi/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/racc/parser.rb
490 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/parser_extras.rb
491 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/parser.rb
492 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/tokenizer.rb
493 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css/syntax_error.rb
494 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/css.rb
495 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri/html/builder.rb
496 /home/pi/.rvm/gems/ruby-2.3.0/gems/nokogiri-1.6.7.2/lib/nokogiri.rb
497 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/xml/parser/engines/nokogiri.rb
498 /home/pi/.rvm/gems/ruby-2.3.0/gems/aws-sdk-core-2.2.28/lib/aws-sdk-core/xml/parser.rb
* Process memory map:
The gemspec file is missing pin_values.rb which causes an error when you try to require 'pi_piper'
. I was really confused why your spec tests were passing at first. Looks like it's because Travis just pulls down the repo and runs the tests and doesn't use the gemspec file at all I think. I have never set up Travis before but I bet there is a way to get it to use your gemspec file. I would recommend looking into that.
I'm going to take a look to see if I can get PiPiper to cooperate with the BeagleBoneBlack. Do you have any suggestions or prior experience (good/ bad) or do you know of big gotcha's?
What is the state of this project? I haven't seen any commit in the past few months. I think its a great library and would love to see some movement. Especially because there are several pending issues and open PR's that would fix some issues everyone is having.
It would be really great to be able to support hardware or software PWM...
I have been trying to install this gem on ruby 1.9.3 but it says that the gem is for ruby gem version 2.0.
Does anyone have any idea on how to fix this?
## Thank You
This looks more like a ruby question, but it is related to pi_piper. I have this code:
require 'pi_piper'
class Foo
def initialize
PiPiper.after ({pin: 7, goes: :high}) do
bar
end
end
def bar
puts "hello"
end
end
a = Foo.new
PiPiper.wait
but when I turn on the pin (with a switch), it returns this error
›sudo ruby stack.rb
stack.rb:7:in `block in initialize': undefined local variable or method `bar' for #<PiPiper::Pin:0x1172508> (NameError)
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:24:in `instance_exec'
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:24:in `block (2 levels) in watch'
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:19:in `loop'
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:19:in `block in watch'
how can effectively call "bar" method when pin goes high?, thanks
Is it possible to read analog signals osing only GPIO?
Would it be possible to add a feature so we can enter an event loop and beforehand setup functions that would run every x milliseconds? This way we can concurrently check for different sensors. I know I could do this with event machine but it seems that would defeat the purpose of this library if its supposed to be event driven.
We can see at http://www.airspayce.com/mikem/bcm2835/ the librairy is quite often updated, even more now with Rpi2 support.
I was willing to update the image embeded in the gem but I'm not able to build the correct image, I'm stuck with the library libbcm2835.a
What is the correct procedure ? would it possible to build a rake task on it (I can do it and send a PR) ?
thx for the help.
EDIT : I understood, this behaviour is by design, but it do not seem very "natural" to me.
irb(main):007:0> r.on; r.on?
=> false
even if r
is realy on a high level.
def off?
value == GPIO_LOW
end
use the cached value of the pin (why a cached value ?!) which is not updated after #on or #off
def off?
read == GPIO_LOW
end
is a way to fix the issue
/home/benny/.rvm/gems/ruby-1.9.3-p392/gems/ffi-1.9.0/lib/ffi/library.rb:123:in `block in ffi_lib': Could not open library '/home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper/libbcm2835.img': /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper/libbcm2835.img: wrong ELF class: ELFCLASS32 (LoadError)
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/ffi-1.9.0/lib/ffi/library.rb:90:in `map'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/ffi-1.9.0/lib/ffi/library.rb:90:in `ffi_lib'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper/bcm2835.rb:8:in `<module:Bcm2835>'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper/bcm2835.rb:6:in `<module:PiPiper>'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper/bcm2835.rb:3:in `<top (required)>'
from /home/benny/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /home/benny/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper.rb:1:in `block in <top (required)>'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper.rb:1:in `each'
from /home/benny/.rvm/gems/ruby-1.9.3-p392/gems/pi_piper-1.3.1/lib/pi_piper.rb:1:in `<top (required)>'
from /home/benny/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `require'
from /home/benny/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require'
from /home/benny/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
Does someone have an idea how to solve that?
Please add I2C#read method to https://github.com/jwhitehorn/pi_piper/blob/develop/lib/pi_piper/i2c.rb and thank you!
Hey,
Sorry If this is noob issue, I couldn't see anything in the README.
I've Got a tiny script which loops and prints the output of a pin.
pin = PiPiper::Pin.new(pin: 4, direction: :in, pull: :up)
puts pin.read
I get the following error upon running the script.
$ sudo ruby read_sensor.rb
/var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:24:in `initialize': No such file or directory - /sys/class/gpio/gpio4/direction
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:24:in `open'
from /var/lib/gems/1.9.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:24:in `initialize'
I can get the output of my device by echoing /sys/bus/w1/devices/devicenumber/w1_slave
I'm using pin 4 (gpio 4) with this simple code:
require "pi_piper"
pin = PiPiper::Pin.new(:pin => 4, :direction => :in)
loop do
puts pin.value
sleep 0.1
end
I use a jumper and connect it to gpio4 and 3.3V (top-left).
It always shows a 0. If I change the jumper to GND (bottom-left), I also get a 0.
Reading the values from /sys/..., it shows correctly a 1 or 0, but the pi_piper script will always show a 0.
What's wrong? (I'm using pi_piper 2.0)
Getting a Permission denied - /sys/class/gpio/gpio18/direction when executing...PiPiper::Pin.new :pin => 18, :direction => :out. Many different attempts at changing permissions on various directories. No joy.
watch :pin => 21 do
end
It seems to be "event type"
example)
1
0
1
0
but I want to use "streaming type"
like this...
1
1
1
1
1
0
0
1
1
1
1
1
can you help me?
Would you be able to implement UART support?
Using Pi_Piper I've used all other pins and need to communicate with an Ardinuo. Thanks for a great Gem!
I did this:
'sudo ruby doorcount.rb`
and this came out:
/usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in write': Device or resource busy - /sys/class/gpio/export (Errno::EBUSY) from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in
export'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:34:in pin_input' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/pin.rb:58:in
initialize'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in new' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in
block in watch'
/usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in write': Device or resource busy - /sys/class/gpio/export (Errno::EBUSY) from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in
export'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:34:in pin_input' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/pin.rb:58:in
initialize'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in new' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in
block in watch'
/usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in write': Device or resource busy - /sys/class/gpio/export (Errno::EBUSY) from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:65:in
export'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb:34:in pin_input' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper/pin.rb:58:in
initialize'
from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in new' from /usr/lib/ruby/gems/1.9.1/gems/pi_piper-2.0.0/lib/pi_piper.rb:15:in
block in watch'
I am using the latest version of pi_piper and ubidots.
Here is the code I am using:
require 'ubidots'
require 'pi_piper'
include PiPiper
savevaluep = 0
@api = Ubidots::ApiClient.new("The Api")
variable = @api.get_variable('The key')
while true do
watch :pin => 26 do
puts'Person Passed'
savevaluep = savevaluep + 1
value = variable.save_value(savevaluep)
savevaluep = 0
end
end
Would this work for openWRT?
I had quite some trouble in figuring out that the :pin
number actually is the GPIO number, not the physical pin number (and not either the wiringPi number).
So if I want to write to the physical pin number 12 I need to write PiPiper::Pin.new(:pin => 18, :direction => :out)
.
Would it be possible to add this information somewhere obvious to the documentation?
Hi Folks,
Pi_piper is great !
I'm wondering is Pi_Piper able to read DS18B20 heat sensor ? If yes, how to do it ?
If not, any recommendation gem or solutions ?
My goal is to push the temperature data to Dashing dashboard.
My code works fine run in terminal.
def gettemp(id)
filename = 'w1_slave'
filepath = File.new("/sys/bus/w1/devices/#{id}/#{filename}", "w").path
# “File” belongs to IO class, which contain I/O stream. http://ruby-doc.org/core-2.0.0/IO.html
File.open(filepath) { |f|
lines_arr = f.read.lines.to_a
lines_arr.shift(1)
temp_arr = lines_arr.to_s.partition(/.t=/) # saperate the ["xx xx xx xx xx t=", "34.xxxx"]
@temp = temp_arr.last.to_f/1000
}
return @temp
end
# Use for startup the file
if __FILE__ == $0 then
puts "Temp : #{gettemp('28-031581efbaff'})
end
pi@raspberry:~/dashing_project$: sudo ruby read_soil_temp.rb
Temp : 25.5
Below is I'm trying to read the sensor in Dashingm but it seems not able to fire the FILE correctly.
~/dashing_project/jobs/sample.rb
# For reading temp/humidity sensor DHT11 gem
require 'dht-sensor-ffi'
# For reading soil remp sensor
def get_soil_temp(id)
filename = 'w1_slave'
filepath = File.new("/sys/bus/w1/devices/#{id}/#{filename}", "w").path
File.open(filepath) { |f|
lines_arr = f.read.lines.to_a
lines_arr.shift(1)
temp_arr = lines_arr.to_s.partition(/.t=/)
@temp = temp_arr.last.to_f/1000
}
return @temp
end
soil_temp_sensor_id = '28-031581efbaff'
current_air_temp = 0
current_air_humid = 0
current_soil_temp = 0
SCHEDULER.every '5s' do
last_air_temp = current_air_temp
last_air_humid = current_air_humid
sensor_val = DhtSensor.read(17, 11)
current_air_temp = sensor_val.temp
current_air_humid = sensor_val.humidity
if __FILE__ == $0 then
current_soil_temp = get_soil_temp(soil_temp_sensor_id)
end
send_event('air_temp', { current: current_air_temp, last: last_air_temp })
send_event('air_humid', { current: current_air_humid, last: last_air_humid })
send_event('soil_temp', value: current_soil_temp)
end
Please advice, thank you in advance !
Hello,
I am new to the Raspberry Pi and have been looking to expand my Ruby expertise beyond Sinatra apps and Chef code.
PiPiper seems to be the most mature (and only still active) Ruby library, so it seems like the natural jumping off point.
Looking at the documentation and the code, it doesn't look like there's a One-wire bus interface. Can you confirm this? Am I just looking in the wrong place?
I think I can take pin.rb and kind of extend what's happening there to be able to monitor my one-wire sensors?
Essentially what I think is missing (please correct me anywhere I'm mistaken):
/sys/bus/w1/devices/28-XXXXX/w1_slave
interfaceAm I thinking along the right lines here? Any thoughts? Would one-wire monitoring be a feature that would be appropriate/welcome in PiPiper?
Thanks!
I'm facing some problems with building EventMachine 1.0.3 native extensions (a possible fix is given here.
Increasing the version to 1.0.7 (latest) fixes the issue.
Hi I am unable to get the pins to work on the latest version of noobs.
Running
File.open("/sys/class/gpio/export", "w") { |f| f.write("7") }
Error
Errno::EBUSY: Device or resource busy @ fptr_finalize - /sys/class/gpio/export
Using: https://github.com/robert2d/raspberry-pi-gpio-rails4-control
I have manually run the command via a rails console using rvmsudo bundle exec rails c
. I have checked forums and other resources on google and cannot find a solution, so I was hoping somebody could point me(slash my pins 😄) in the right direction.
Also:
Running echo 7 >/sys/class/gpio/unexport
seems to free up the pin again but re running the above twice causes the same error again.. (reference: http://squarism.com/2014/09/24/redis-595-timer-states/)
Thanks
After doing Sudo ruby xxxx.rb
/usr/uibl ruibylgews/1.9.1/ (Errno: :EBUSY) e Device or resource busy /sys/class/gpio/export r from piper-2.0.0/u b:65:in export from /usr/lib/ piper-2.e.e/uib/pi piper/bca283 b:34:in pin input. piper.2.0.0/uib/pi piper/pin.rb: sin initialize from /usr/lib/ruby/gems/1.9.1/gems/pi piper 2.0.0/uib/pi piper.rb115:in from /usr/lib/ruby/gems/1.9.1/gems/pi piper-2,0.0/uib/pi piper,rb1151in new block in Watch
Not completely correct.
Sorry😀
Hello maybe I am missing something but it seems like Pin.on? and Pin.off? methods are not working.
I am playing around with ruby and Rpi and I made following code:
Its just a simple program when I input 11 led is glowing and when i insert 1 led should go off. I would like to make it more "intelligent" like this: when I input 1 led switches its state. I was thinking about this code
pin.off? ? pin.on : pin.off but somehow this line does not work
thank you for help
PS: I am using RPi 2 model B with raspbian jessie lite
OK . pin.read is the key :) 👍
`require 'pi_piper'
include PiPiper
pin = PiPiper::Pin.new(:pin => 17, :direction => :out)
puts "pin is off: #{pin.off?}"
puts "pin is on: #{pin.on?}"
begin
x = gets.chomp
case x.to_i
when 1
#puts "pin is off #{pin.off?}"
#puts "pin is on #{pin.on?}"
pin.off
puts "Pin is now off"
when 11
pin.on
puts "pin is now on"
end
puts "pin is off: #{pin.off?}"
puts "pin is on: #{pin.on?}"
end until x == "e"`
output looks like this
pi@raspberrypi:~ $ sudo ruby pin ---- starting program
pin is off: true ---- lookigin good
pin is on: false
11
pin is now on ---- pin is on and LED is glowing
pin is off: true ----- hm here it should be false now
pin is on: false ------ and this should be true now
1
Pin is now off ----- LED turned off OK
pin is off: true
pin is on: false
Hi,
This code doesn't work on my BCM2836 but it works my old BCM2835. Is there any plan to update? or any advice?
require 'pi_piper'
loop do
value = 0
PiPiper::Spi.begin do |spi|
raw = spi.write [0b01101000,0]
value = ((raw[0]<<8) + raw[1]) & 0x03FF
end
puts value
sleep(1)
end
Hello, I want to make a piezo buzzer sound, there is a way to do this?, is pi_piper able to pwm?, thanks
Hi Folks,
I'm facing an error while I do
sudo gem install pi_piper
It return an error blow :
ERROR: Error installing pi_piper: pi_piper
requires RubyGems version >= 2.0.0.
Try 'gem update --system' to update RubyGems itself.
I use rvm and below is my ruby -v and gem -v
and do tried 'gem update --system' but still failed.
My ruby and gem is up to date:
pi@cvproto01:
/pi-piper $/pi-piper $which ruby
/home/pi/.rvm/rubies/ruby-2.2.1/bin/ruby
pi@cvproto01:ruby -v
ruby 2.2.1p85 (2015-02-26 revision 49769) [armv7l-linux-eabihf]
pi@cvproto01:/pi-piper $/pi-piper $which gem
/home/pi/.rvm/rubies/ruby-2.2.1/bin/gem
pi@cvproto01:gem -v
2.6.1
I did follow the instruction and install libssl-dev
And, I tried to install gem without sudo
gem install pi_piper
Guess what, it is successfully installed ?!
Successfully installed pi_piper-2.0.0
1 gem installed
I was thinking I'm so smart to do no 'sudo'.
But the story always comes with HOWEVER
However, I ran my ruby code, it returns:
'sudo ruby pi-piper-practice.rb'
pi-piper-practice.rb:1:in `require': no such file to load -- pi_piper (LoadError)
from pi-piper-practice.rb:1
The pi-piper-practice.rb code listed below:
require 'pi_piper'
include PiPiperExamples
Example 1 - Simple switch
puts "Press the switch to get start"
PiPiper.watch :pin => 17, :invert => true do |pin|
puts "Pin changed from #{pin.last_value} to #{pin.value}"
endPiPiper.wait
I couldn't know what I am missing now. Please helps and thanks in advance !!!!!!
Hi guys,
This project is fantastic. I was trying to just use the GPIO17 on my raspberry pi with the built in pull-up and a button plugged into ground. I wanted this to work on 6 buttons as interrupts (change lcd values on button press)..
The problem is my values are erratic aka they change with no button push. I don't know if my wiring of the button is wrong or the simple test code. I wrote something like this on one button:
require 'pi_piper'
include PiPiper
pin = PiPiper::Pin.new(:pin => 17, :direction => :in, :pull => :up)
# set pin 17 to pull up
after :pin => 17, :goes => :low do
puts "Button pressed"
end
PiPiper.wait
Sorry I didn't know where else to post this question. I realize this is a simple example but I'm a bit stuck. I don't think this addresses my interrupt problems either. Any help on that would be appreciated.
Hello,
i am trying to fetch a simple pressed button but doesn't work as expected.
I am using pi_piper 2.2.2.
I tried the following:
after :pin => 21, :goes => :high do puts "Button pressed" end
The result was that it was prompted "Button pressed" the whole time until i pressed the button. when releasing the button it started prompting again.
The same happend when i tried :goes => :low
I tried the rpi_gpio gem
RPi::GPIO.setup 21, :as => :input, :pull => :down print RPi::GPIO.low? 21
Here was the result correct.
I have tried following different options:
GPIO21 (Pin 40) connected to GND/3.3V
Watch/Wait functions used
Try to initialize Pin first with parameters :pin => 21, direction => in, :pull => :down (Had no idea how to use der created Pin object in the watch or wait context because there you can use only pin numbers)
I am clueless how to use the library the right way :-(
Any ideas what is wrong with my Code?
Thanks
Regards Elmar
I am trying to use pi_piper
to connect RC522 RFID reader through SPI, but I'm stuck right now, I think it's probably because I have only little knowledge of SPI, is there any tutorials or sample code I can refer to?
Hi,
non-root access to the dev and sysfs devices seems to be a recurring issue going by the many threads all over the internet, but is there any change on the pi_piper front ? Or is there anyway to proxy access via a root daemon ?
I appreciate this question was answered a couple of years ago, just wondering if anything has changed since then.
Thanks
CM
I’m using this awesome gem for a project with an Odroid U3. The relevant lines from the script are simply:
after pin: 199, goes: :high do
# do something
end
PiPiper.wait
Everything works fine when I the script is started for the first time. However, if the script is stopped (Ctrl-C) and then started again, the block is no longer called even if the pin changes.
It found out that this can be fixed by “resetting” the edge file at the start of the script like this:
File.write "/sys/class/gpio/gpio199/edge", "none"
Should this be included in pi_piper?
but, why can't I see the bcm2835.rb
file here on github?
I try to use this gem but I don't manage to control any pin.
I have no error message, but nothing happens on my board.
The LED on pin 17 is on, since the boot of the raspberry. But:
pin = PiPiper::Pin.new(:pin => 17, :direction => :out)
=> #<PiPiper::Pin:0x1ea4448 @pin=17, @direction=:out, @invert=false, @trigger=:both, @pull=0, @last_value=nil, @value=0>
pin.on
=> 1
pin.off
=> 1
pin.on?
=> false
pin.off?
=> true
Does anyone succeed to make it work on Raspbian Jessie + Ruby 2?
root@raspberrypi:~# ruby -v
ruby 2.1.5p273 (2014-11-13) [arm-linux-gnueabihf]
I am struggling with successfully initializing button management code. I do something as follows:
def manage_buttons
@@pin=PiPiper::Pin.new(:pin => 23, :pull => :up)
@@led=PiPiper::Pin.new(:pin => 18, :direction => :out)
@@led.on
@@t=Time.now
PiPiper.watch :pin => 23,:trigger => :falling , :pull => :up do
#puts "Button pressed changed from #{last_value} to #{value}"
#puts "."
@@t=Time.now
end
If I run the following python code the pi_piper gem works as I expect in above. (If I don't run this code below, the system gives me bouncing on the button). So currently I call a python script to do the following upon boot.
GPIO.setmode(GPIO.BCM)
GPIO.setup(ledPin, GPIO.OUT)
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.output(ledPin, GPIO.HIGH)
Any suggesitons on what I am doing wrong? Or how to get pi_piper to emulate the pyton script. (Raspbian, Rasp pi ver 2, 512 mb, Linux printlotto 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014 armv6l GNU/Linux
)
Trying to use pi_piper to read a button connected to pin 18 and getting this error:
/home/pi/.rvm/gems/ruby-2.2.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:23:in `close': Device or resource busy @ fptr_finalize - /sys/class/gpio/export (Errno::EBUSY)
from /home/pi/.rvm/gems/ruby-2.2.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:23:in `open'
from /home/pi/.rvm/gems/ruby-2.2.1/gems/pi_piper-1.3.2/lib/pi_piper/pin.rb:23:in `initialize'
from /home/pi/.rvm/gems/ruby-2.2.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:18:in `new'
from /home/pi/.rvm/gems/ruby-2.2.1/gems/pi_piper-1.3.2/lib/pi_piper.rb:18:in `block in watch'
This is my code:
$ cat pi_piper.rb
require 'pi_piper'
include PiPiper
pin = PiPiper::Pin.new(:pin => 18, :direction => :in, :pull => :up)
watch :pin => 18 do
puts "Pin changed from #{last_value} to #{value}"
end
I'm running it like this:
$ rvmsudo bundle exec ruby pi_piper.rb
Conversely running this program in python works just fine (and outputs "Button Pressed" correctly only when I press the button)
pi@raspberrypi ~ $ cat switch.py
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_UP)
while True:
input_state = GPIO.input(18)
if input_state == False:
print('Button Pressed')
time.sleep(0.2)
$ sudo python switch.py
Button Pressed
Button Pressed
Button Pressed
Button Pressed
Button Pressed
Any advice? Anything I can try?
I tried running the current develop branch on my Pi (I need the resistor pull-up). This does not work, it fails loading libbcm2835.img with the message: 'only ET_DYN and ET_EXEC can be loaded'. Reverting libbcm2835.img to the previous version makes everything run again.
Thanks for the great gem! It's really useful! If you need more information, please ask.
Hello,
I'm trying to understand how this code works, and I see in lib/pi_piper/pin.rb
you call PiPiper.driver.pin_write
- https://github.com/jwhitehorn/pi_piper/blob/develop/lib/pi_piper/pin.rb#L61
In lib/pi_piper.rb
you seem to initialize PiPiper.driver
as an instance of PiPiper::Driver
https://github.com/jwhitehorn/pi_piper/blob/develop/lib/pi_piper.rb#L19-L32
What I don't understand, is why is lib/pi_piper/driver.rb
full of empty method definitions? Where do you actually do the writing to filehandles?
In previous versions you actually wrote to /sys/class/gpio/gpio#{pin}/value
- https://github.com/jwhitehorn/pi_piper/blob/master/lib/pi_piper/bcm2835.rb#L40
What am I missing here? How does this know to write to the correct location?
Thanks!
Looking for some advise or if anyone has been able to get a basic blinking light scenario website up and running using pi_piper. I'm starting as simple and basic as I can. Created a rails app and in my controller added same ruby code (that works when ran as ruby). Was expecting page I navigated to see lights blink, nothing fancy yet just wanted the code to execute. But i received a Permission denied error.
Error Message: Permission denied @ rb_sysopen - /sys/class/gpio/gpio23/direction
Anyone out there have experience with getting pi_piper to work with rails?
I was testing out the functionalities of the library with some LEDs and I noticed that even if it is explicitly turned off, when the program exits, the pin turns back on at a slightly lower power.
@jwhitehorn, @zsyed91,
I'm willing to bring some enhancement to the library, I just need to know if we are ok with it !
In Ruby 2.1.2 on the Raspberry Pi B model using the Pry console (tested in IRB as well)
Doing this: pin = PiPiper::Pin.new(:pin => 18, :direction => :out)
correctly initialises the pin. pin.on / .off
works correctly. But when calling pin.value
it always returns 0. I've tried it using the update_value
method instead of the on / off method, but the .value
return is the same.
[3] pry(main)> pin = PiPiper::Pin.new(:pin => 18, :direction => :out)
=> #<PiPiper::Pin:0x1cdd648 @direction=:out, @invert=false, @last_value=nil, @pin=18, @pull=:off, @trigger=:both, @value=0>
[4] pry(main)> pin.value
=> 0
[5] pry(main)> pin.update_value(1)
=> 1
[6] pry(main)> pin.value
=> 0
[7] pry(main)>
I'm personally quite skeptical of using stub drivers for testing, it might not capture real device behaviour and things might go wrong in future releases.
To amend this, how about having a set of tests that will run only if the test suite is being run on a raspberry pi and will actually test the underlying hardware? These tests can be exactly the same as the current ones, only using real device drivers, and they will run only a raspberry pi, nowhere else.
We can also make it mandatory for future contributors to write two sets of tests - one using stub drivers and the other using real drivers. Or maybe both of these can be unified by cleverly using the before
block.
Thoughts?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.