farmbot-serial 0.3.2 → 0.3.3
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 +4 -4
- data/console.rb +0 -1
- data/lib/arduino.rb +3 -5
- data/spec/spec_helper.rb +14 -0
- metadata +15 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 348ccc82a174231787613518c05ef3da32c544c7
|
4
|
+
data.tar.gz: 772b3ea17280788b8cfd1ad1fbb5f3f1747d9cd3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f2640d61eae76ba0e5088698143aed20c8b7e870d997d2153009602476373eb053380d3f0a69ab5fc0d6c1284166d077a63ac3971d535e2ab7eb865a7bed6ed6
|
7
|
+
data.tar.gz: 253323c3ec8f39795bfaa965d14d8f715fb0a7294408504cfd9aa4d0e7f315c324d7a4fd1ea9f1b7755aee4edb49da645f7c21f77fc580c3bafc67b202f4dbeb
|
data/console.rb
CHANGED
@@ -50,7 +50,6 @@ EM.run do
|
|
50
50
|
end
|
51
51
|
bot.onchange { |diff| puts "STATUS CHANGE: #{diff};" }
|
52
52
|
bot.onclose { puts "bye!"; EM.stop } # Unplug the bot and see
|
53
|
-
# EventMachine::PeriodicTimer.new(7) { print '.'; bot.serial_port.puts "F31 P8" }
|
54
53
|
EM.open_keyboard(KeyboardHandler, bot)
|
55
54
|
0.upto(14) { |num| bot.commands.read_parameter(num) }
|
56
55
|
|
data/lib/arduino.rb
CHANGED
@@ -36,7 +36,6 @@ module FB
|
|
36
36
|
# Send outgoing test to arduino from pi
|
37
37
|
def write(gcode)
|
38
38
|
@outbound_queue.unshift gcode
|
39
|
-
execute_command_next_tick
|
40
39
|
end
|
41
40
|
|
42
41
|
def onchange(&blk)
|
@@ -62,10 +61,8 @@ module FB
|
|
62
61
|
Position.new(status[:X], status[:Y], status[:Z])
|
63
62
|
end
|
64
63
|
|
65
|
-
def
|
66
|
-
|
67
|
-
status.ready? ? pop_gcode_off_queue : execute_command_next_tick
|
68
|
-
end
|
64
|
+
def maybe_execute_command
|
65
|
+
pop_gcode_off_queue if status.ready?
|
69
66
|
end
|
70
67
|
|
71
68
|
def next_cmd
|
@@ -85,6 +82,7 @@ module FB
|
|
85
82
|
end
|
86
83
|
|
87
84
|
def start_event_listeners
|
85
|
+
EM.tick_loop { maybe_execute_command } # A noble experiment.
|
88
86
|
status.onchange { |diff| @onchange.call(diff) if @onchange }
|
89
87
|
inbound_queue.subscribe do |gcodes|
|
90
88
|
Array(gcodes).each do |gcode|
|
data/spec/spec_helper.rb
CHANGED
@@ -3,6 +3,7 @@ require 'simplecov'
|
|
3
3
|
SimpleCov.start do
|
4
4
|
add_filter "/spec/"
|
5
5
|
end
|
6
|
+
|
6
7
|
require 'pry'
|
7
8
|
require 'farmbot-serial'
|
8
9
|
|
@@ -10,7 +11,20 @@ require_relative 'fakes/fake_serial_port'
|
|
10
11
|
require_relative 'fakes/fake_logger'
|
11
12
|
require_relative 'fakes/fake_arduino'
|
12
13
|
|
14
|
+
require 'ruby-prof'
|
15
|
+
|
13
16
|
RSpec.configure do |config|
|
17
|
+
config.before(:suite) do
|
18
|
+
# Profile the code
|
19
|
+
RubyProf.start
|
20
|
+
end
|
21
|
+
|
22
|
+
config.after(:suite) do
|
23
|
+
result = RubyProf.stop
|
24
|
+
# Print a flat profile to text
|
25
|
+
printer = RubyProf::FlatPrinter.new(result)
|
26
|
+
printer.print(STDOUT)
|
27
|
+
end
|
14
28
|
end
|
15
29
|
|
16
30
|
# This is used for testing things that require an event loop. Once run, you can
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: farmbot-serial
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Evers
|
@@ -81,6 +81,20 @@ dependencies:
|
|
81
81
|
- - ">="
|
82
82
|
- !ruby/object:Gem::Version
|
83
83
|
version: '0'
|
84
|
+
- !ruby/object:Gem::Dependency
|
85
|
+
name: ruby-prof
|
86
|
+
requirement: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - ">="
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '0'
|
91
|
+
type: :development
|
92
|
+
prerelease: false
|
93
|
+
version_requirements: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: '0'
|
84
98
|
- !ruby/object:Gem::Dependency
|
85
99
|
name: eventmachine
|
86
100
|
requirement: !ruby/object:Gem::Requirement
|