littlewire 0.9.8 → 0.9.9

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
  SHA1:
3
- metadata.gz: 3ce81eaa4836881938aeca5d6d4300f49f90fcef
4
- data.tar.gz: f8b8ba8827f9b23abfe77339b4684bc250bb04ef
3
+ metadata.gz: d9ca8fcff30feecd9fe4ebc8e8f45c739a5323e1
4
+ data.tar.gz: 778139b656900649e89474a1e09ca81b4fe583b7
5
5
  SHA512:
6
- metadata.gz: 2ec2ac2d655f97325571c7ff1f4605a5c3ba0e1f451c4e92ae408f8863b55f26d919cb71d4d2181081caa06f3ec6ced62cefc844ff9317031cc2da76c5733f6b
7
- data.tar.gz: 1290c8bd90d384ebcf25d3f7dd535d04609e70826566bc5327b2f4ce04a18a2d938170a97cb5f2839852f8a432d6de687f3a38b33709aaac942186035ad372a0
6
+ metadata.gz: e74dbb1edb11ddae5b29f0e98e36b9976fb9840ef7ad6ba296f97a7f26ba148fd014684bad80e6b403280d942ce7b56c24f9c80388f3f9571a252ffe5cf9b873
7
+ data.tar.gz: 2aae285f83ff40926bb389cb1c91eeb3fc20d65d94867d94565de6d67b7aa839f90105ac2ccff7c385018c7c5cb518d625f2c5de8405a5ac236a9ba8d29fc0fd
@@ -1,15 +1,16 @@
1
1
  #!/usr/bin/env ruby
2
- __dir__ ||= File.dirname(__FILE__)
3
- #$:.unshift File.join(__dir__, '..', 'lib')
4
2
  require 'thor'
5
3
  require 'pp'
6
4
  require 'littlewire'
7
5
  require 'littlewire/gadgets/micronucleus'
8
6
 
9
7
  class LittleWireUtility < Thor
8
+ # for ruby 1.9 compatibility, we use this instead of ruby 2.0 __dir__
9
+ Directory = defined?(__dir__) ? __dir__ : File.pathname(__FILE__)
10
+
10
11
  desc "install [version]", "Install a specific firmware on to the littlewire device"
11
12
  def install version = 'latest'
12
- path = File.join(__dir__, "..", "firmware", "#{version}.hex")
13
+ path = File.join(Directory, "..", "firmware", "#{version}.hex")
13
14
  raise "Unknown Version" unless File.file? path
14
15
 
15
16
  data = HexProgram.new(open path).binary
@@ -44,7 +45,7 @@ class LittleWireUtility < Thor
44
45
  desc "firmwares", "List all versions which can be installed via install command"
45
46
  def firmwares
46
47
  puts "Available LittleWire Firmware:"
47
- Dir[File.join(__dir__, "..", "firmware", "*.hex")].each do |filename|
48
+ Dir[File.join(Directory, "..", "firmware", "*.hex")].each do |filename|
48
49
  puts File.basename(filename, '.hex')
49
50
  end
50
51
  end
@@ -56,7 +57,7 @@ class LittleWireUtility < Thor
56
57
  wire = LittleWire.connect
57
58
  puts "Device Firmware: #{wire.version}" if wire
58
59
 
59
- latest_path = File.join(__dir__, "..", "firmware", "#{LittleWire::SupportedVersions.first}.hex")
60
+ latest_path = File.join(Directory, "..", "firmware", "#{LittleWire::SupportedVersions.first}.hex")
60
61
  if LittleWire::SupportedVersions.index(wire.version) != 0 and File.exists? latest_path
61
62
  puts "An updated firmware is available, version #{LittleWire::SupportedVersions.first}"
62
63
  puts "To update, run:"
@@ -71,7 +72,7 @@ class LittleWireUtility < Thor
71
72
  desc "racer", "Attach a Wii Nunchuck and play a game"
72
73
  def racer
73
74
  ruby_vm = File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
74
- system(ruby_vm, File.join(__dir__, '..', 'examples', 'i2c', 'nunchuck.rb'))
75
+ system(ruby_vm, File.join(Directory, '..', 'examples', 'i2c', 'nunchuck.rb'))
75
76
  end
76
77
  end
77
78
 
@@ -5,17 +5,20 @@ require 'littlewire'
5
5
  require 'littlewire/gadgets/nunchuck'
6
6
 
7
7
  wire = LittleWire.connect
8
- wire.pin_mode :ds5, :output
9
- wire.digital_write :ds5, :low
8
+ raise "No LittleWire device connected" unless wire
10
9
 
11
10
  car = 0.0
12
11
  wall = 0.0
13
12
  wall_width = 16
14
13
  constraint = 20.0
15
14
 
15
+ # wait till C button is released...
16
+ sleep 0.1 while wire.nunchuck.sample.buttons.c
17
+
16
18
  puts DATA.read
17
19
  puts ''
18
20
  puts "Point your nunchuck at the screen, and press C button to start your engines!"
21
+ # wait untill C button is pressed
19
22
  sleep 0.1 until wire.nunchuck.sample.buttons.c
20
23
 
21
24
  seconds = 0.0
@@ -60,21 +63,21 @@ loop do
60
63
  end
61
64
 
62
65
  __END__
63
- ______ __ __ ____ ____ ____
64
- /_ __/ / / / / / __ \ / __ ) / __ \
65
- / / / / / / / /_/ / / __ | / / / /
66
- / / / /_/ / / _, _/ / /_/ / / /_/ /
67
- /_/ \____/ /_/ |_| /_____/ \____/
68
- ____ ___ ______ ______ ____
69
- / __ \ / | / ____/ / ____/ / __ \
70
- / /_/ / / /| | / / / __/ / /_/ /
71
- / _, _/ / ___ | / /___ / /___ / _, _/
72
- /_/ |_| /_/ |_| \____/ /_____/ /_/ |_|
66
+ ______ __ __ ____ ____ ____
67
+ /_ __/ / / / / / __ \ / __ ) / __ \
68
+ / / / / / / / /_/ / / __ | / / / /
69
+ / / / /_/ / / _, _/ / /_/ / / /_/ /
70
+ /_/ \____/ /_/ |_| /_____/ \____/
71
+ ____ ___ ______ ______ ____
72
+ / __ \ / | / ____/ / ____/ / __ \
73
+ / /_/ / / /| | / / / __/ / /_/ /
74
+ / _, _/ / ___ | / /___ / /___ / _, _/
75
+ /_/ |_| /_/ |_| \____/ /_____/ /_/ |_|
73
76
  ______ _ __ ______ ____ ______ __ ___ ______
74
- / ____/ | |/ / /_ __/ / __ \ / ____/ / |/ / / ____/
75
- / __/ | / / / / /_/ / / __/ / /|_/ / / __/
76
- / /___ / | / / / _, _/ / /___ / / / / / /___
77
- /_____/ /_/|_| /_/ /_/ |_| /_____/ /_/ /_/ /_____/
77
+ ~~~~~~~~~/ ____/ ~| |/ /~/_ __/ ~/ __ \ ~~/ ____/ ~/ |/ / ~/ ____/
78
+ ~~~~~~~~/ __/ ~~~~| / ~~/ / ~~~/ /_/ / ~/ __/ ~~~/ /|_/ / ~/ __/
79
+ ~~~~~~~/ /___ ~~~/ | ~~/ / ~~~/ _, _/ ~/ /___ ~~/ / / / ~/ /___
80
+ ~~~~~~/_____/ ~~/_/|_| ~/_/ ~~~/_/~|_| ~/_____/ ~/_/ /_/ ~/_____/
78
81
 
79
82
  Motion Nunchuck Ninja Edition 2.1 - Insert Coin
80
83
  Published by Mechanum Industries for PC-DOS, Amega, VIC 20, and iPhone 5c
@@ -1,5 +1,5 @@
1
1
  class LittleWire
2
- Version = '0.9.8'
2
+ Version = '0.9.9'
3
3
 
4
4
  # correct interface, to enable dynamic stuff later if need be:
5
5
  def self.version
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: littlewire
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.8
4
+ version: 0.9.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bluebie
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: 0.0.2
41
+ - !ruby/object:Gem::Dependency
42
+ name: thor
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: 0.18.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 0.18.1
41
55
  description: A little library for a little wire. Providing a pure ruby interface (via
42
56
  the nonpure libusb gem) to littlewire.cc's wonderful gadget. littlewire.rb provides
43
57
  general purpose digital IO, pulse width modulation analog outputs, analog inputs,