rbuspirate 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/rbuspirate.rb +25 -21
- data/lib/rbuspirate/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea1e9f18b739184a2722b3dd7d8cc4c8d64830291fe9caa93099360ade5ab41e
|
4
|
+
data.tar.gz: e7ad361bd69818d82d73b1fb0942c184808428d835b66c894b70f1843fee4fa3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 67bb082b478a92a839d8d8f5c8d0806ada5944d82cb8edf7de25626890519b6ed3afeae18fb0280c40ba4b503ef1f615a40307d1fad888d58294587160079fc7
|
7
|
+
data.tar.gz: 8f066117c4100121d93ac477d1eea45f815a8e016651ad246e11e5fd81044553de5ada39080aa363323d399249b01d1caaaaaf39006b715bfa051826ff23a3ad
|
data/Gemfile.lock
CHANGED
data/lib/rbuspirate.rb
CHANGED
@@ -11,7 +11,22 @@ require 'rbuspirate/interfaces/1wire'
|
|
11
11
|
|
12
12
|
module Rbuspirate
|
13
13
|
class Client
|
14
|
+
def self.register_mode(
|
15
|
+
name_symbol, switch_command,
|
16
|
+
wait_timeout, enter_response,
|
17
|
+
interface_class
|
18
|
+
)
|
19
|
+
define_method("enter_#{name_symbol}".to_sym) do
|
20
|
+
switch_mode(
|
21
|
+
name_symbol, switch_command,
|
22
|
+
wait_timeout, enter_response,
|
23
|
+
interface_class
|
24
|
+
)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
14
28
|
attr_reader :mode, :interface, :needs_reset
|
29
|
+
alias iface interface
|
15
30
|
|
16
31
|
def initialize(dvc, sync: true)
|
17
32
|
raise ArgumentError, 'Shitty arg' unless [SerialPort, String].include?(dvc.class)
|
@@ -47,35 +62,24 @@ module Rbuspirate
|
|
47
62
|
|
48
63
|
raise 'Enter to bitbang failied'
|
49
64
|
end
|
50
|
-
|
51
|
-
|
52
|
-
raise 'Device needs reset to change mode' if @needs_reset
|
53
|
-
|
54
|
-
switch_mode(
|
65
|
+
[
|
66
|
+
[
|
55
67
|
:i2c, Commands::I2C::ENTER,
|
56
68
|
Timeouts::I2C::ENTER, Responses::I2C::ENTER,
|
57
69
|
Interfaces::I2C
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
def enter_uart
|
62
|
-
raise 'Device needs reset to change mode' if @needs_reset
|
63
|
-
|
64
|
-
switch_mode(
|
70
|
+
],
|
71
|
+
[
|
65
72
|
:uart, Commands::UART::ENTER,
|
66
73
|
Timeouts::UART::ENTER, Responses::UART::ENTER,
|
67
74
|
Interfaces::UART
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
def enter_1wire
|
72
|
-
raise 'Device needs reset to change mode' if @needs_reset
|
73
|
-
|
74
|
-
switch_mode(
|
75
|
+
],
|
76
|
+
[
|
75
77
|
:'1wire', Commands::LE1WIRE::ENTER,
|
76
78
|
Timeouts::LE1WIRE::ENTER, Responses::LE1WIRE::ENTER,
|
77
79
|
Interfaces::LE1WIRE
|
78
|
-
|
80
|
+
]
|
81
|
+
].each do |mode|
|
82
|
+
register_mode(*mode)
|
79
83
|
end
|
80
84
|
|
81
85
|
private
|
@@ -86,7 +90,7 @@ module Rbuspirate
|
|
86
90
|
interface_class
|
87
91
|
)
|
88
92
|
raise 'Device needs reset to change mode' if @needs_reset
|
89
|
-
|
93
|
+
reset_binary_mode
|
90
94
|
@le_port.write(switch_command.chr)
|
91
95
|
resp = @le_port.expect(
|
92
96
|
enter_response, wait_timeout
|
data/lib/rbuspirate/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbuspirate
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sh7d
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-02-
|
11
|
+
date: 2020-02-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|