svi 0.3.16 → 0.3.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MzIxMTk5OWYzZjRkZDlmMDVjMTRkNDljMTk5YWViNWRkNjgyNGUxNw==
4
+ YWJkMmRmZjkyYzAxZWNmYTcyZmE0OTYxZWZhNmVhZTBmZDA1NGQwMQ==
5
5
  data.tar.gz: !binary |-
6
- ZDY5ODBiYTNjY2ZhYmU2MTYzMTEwZjgzYzA2ZWE1YjEzMjdkNmNlYg==
6
+ ZWFlMjQ4ZjQ1ODZlYjQ1Nzc0MmNjMmMzMWI2ZmFlZWUwNmVmMTc4Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OGM3NDc1MjhhZTNmZDUxYTM5YWZkODA1YTcyNzExMDcyNThjZTg1MmQwMTJm
10
- YTFiZmFlNTNmZGM4MGExZWUzOThlYTI3ZmM4ODg2MWY0NTYwNGI0NDJlZDhm
11
- ODY5YWFhOGU4NDg0NzBmYzhiZjA5MzM1NDI3OTU4NWZhM2ZmZjg=
9
+ ZWNhMmIwYzUxYzlmN2NhYmExNTU2ZTU5YjRkZjBlZDI1NGU3ZjI3NjJiYTY2
10
+ NDllY2UyYWVjYTc2ZmFkMjEzYjY4ZGMzMjI5ZTI1ODU2M2ZjMDZkZmU0Y2Fi
11
+ ZjUxNzFiYTdkODUxNDVmYmVkZTEyNjA0MTI0MjFlNDNlZTUyNGE=
12
12
  data.tar.gz: !binary |-
13
- NDE5NjQ5MDQ3MWVlNmM2MzA3NjdmMzY3ODM5ZmQ1NDBkMTM5YTQ4NDIyZjMy
14
- YjY3NDYyY2UxYjAyYTVhYWI0ZWIzNWFlNTNhYTJjYzRiOGMwYjU4ZmUyY2U4
15
- ZTdkNTNmOTNiZThlYTI3NTQwMDliNWJmMmI1YmYxODA5MThjOTM=
13
+ NjkyNTc1MjNhZWZhMWZhYzQxMDk1YjRhN2M4YzE3NTUyZWVkMWVjZWUyN2Ey
14
+ M2RiMGVlMTc4MWQ4OWQyYTQ4N2UxMTE2NjQ2MGVlNjVhNzU3OTBlYmU4YzZj
15
+ NzAwZWRkZDZlZTY4YjhkMWI0MzczN2Y1NTI1NjY0NTU2MjJmMWQ=
data/bin/sbi ADDED
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/ruby19
2
+
3
+ require 'gli'
4
+ require 'colorize'
5
+ require 'svi/version'
6
+ require 'svi/vidpid'
7
+ require 'svi/sbiif'
8
+ require 'svi/svi'
9
+
10
+ include GLI::App
11
+
12
+ program_desc 'SBI test tool'
13
+
14
+ accept(VidPid) do |str|
15
+ VidPid.new(str)
16
+ end
17
+
18
+ accept(SBIIf) do |str|
19
+ SBIIf.new(str)
20
+ end
21
+
22
+ desc 'Use appropriate VID/PID'
23
+ arg_name 'vid:pid'
24
+ default_value VidPid.new '3241:9372'
25
+ flag [:D, 'device'], :type => VidPid
26
+
27
+ desc 'Use device number N (see device list by --list option)'
28
+ arg_name 'N'
29
+ default_value 0
30
+ flag [:N,'device-number'], :type => Integer
31
+
32
+ desc 'Timeout for transfers on both interfaces'
33
+ arg_name 'milliseconds'
34
+ default_value 3000
35
+ flag [:T,'timeout'], :type => Integer
36
+
37
+ desc 'Define interface for SBI'
38
+ arg_name 'ifnum:epout:epin'
39
+ default_value SBIIf.new '1:2:2'
40
+ flag ['sbi-if'], :type => SBIIf
41
+
42
+ desc 'Show devices list only'
43
+ switch ['l', 'list'], :negatable => false
44
+
45
+ desc 'Show version'
46
+ switch ['verbose'], :negatable => false
47
+
48
+ pre do |global_opts, cmd, opts, args|
49
+ vid = global_opts[:device].vid
50
+ pid = global_opts[:device].pid
51
+ $dev = USB.new(vid, pid).svi_devices[global_opts[:N]]
52
+
53
+ if $dev
54
+ $dev.sbi_if = global_opts['sbi-if'].ifnum
55
+ $dev.sbi_if_ep_in = global_opts['sbi-if'].epin
56
+ $dev.sbi_if_ep_out = global_opts['sbi-if'].epout
57
+ $dev.sbi_timeout = global_opts[:timeout]
58
+ end
59
+
60
+ exit_now! 'No devices detected' unless $dev
61
+
62
+ true
63
+ end
64
+
65
+ desc 'Test send-receive sequence'
66
+ arg_name '"data"'
67
+ command :test do |test|
68
+ test.action do |global_opts, opts, args|
69
+ exit_now! 'No arguments' unless args.count > 0
70
+
71
+ arg = eval %Q{"#{args.join ''}"}
72
+
73
+ exit_now! 'Too big message' unless arg.length < 2048
74
+
75
+ $dev.sbi_send arg
76
+
77
+ res = $dev.sbi_receive 2048
78
+
79
+ puts res.inspect.light_yellow
80
+ end
81
+ end
82
+
83
+ exit run(ARGV)
84
+
85
+ # vim: sw=2 sts=2 ts=8:
86
+
data/bin/svi CHANGED
@@ -5,7 +5,6 @@ require 'colorize'
5
5
  require 'svi/version'
6
6
  require 'svi/vidpid'
7
7
  require 'svi/sviif'
8
- require 'svi/sbiif'
9
8
  require 'svi/svi'
10
9
 
11
10
  include GLI::App
@@ -20,10 +19,6 @@ accept(SVIIf) do |str|
20
19
  SVIIf.new(str)
21
20
  end
22
21
 
23
- accept(SBIIf) do |str|
24
- SBIIf.new(str)
25
- end
26
-
27
22
  desc 'Use appropriate VID/PID'
28
23
  arg_name 'vid:pid'
29
24
  default_value VidPid.new '3241:9372'
@@ -44,11 +39,6 @@ arg_name 'ifnum:epout:epin'
44
39
  default_value SVIIf.new '2:4:4'
45
40
  flag ['svi-if'], :type => SVIIf
46
41
 
47
- desc 'Define interface for SBI'
48
- arg_name 'ifnum:epout:epin'
49
- default_value SBIIf.new '3:3:3'
50
- flag ['sbi-if'], :type => SBIIf
51
-
52
42
  desc 'Show devices list only'
53
43
  switch ['l', 'list'], :negatable => false
54
44
 
@@ -7,11 +7,11 @@ $svi_api_desc = {
7
7
  :lun_set_mode => { :response => [Integer], :args => [Integer, Integer] },
8
8
  :lun_format_ao => { :response => [Integer], :args => [Integer, Integer] },
9
9
  :lun_save_table => { :response => [Integer], :args => [] },
10
- # :firmware_program => { :response => [Integer], :args => [Integer, Integer] },
11
- # :nvm_write => { :response => [Integer], :args => [Integer, Integer, String] },
12
- # :nvm_read => { :response => [String, Integer], :args => [Integer, Integer, Integer] },
13
- # :nvm_open => { :response => [Integer], :args => [Integer] },
14
- # :nvm_close => { :response => [Integer], :args => [Integer] },
10
+ :firmware_program => { :response => [Integer], :args => [Integer, Integer] },
11
+ :nvm_write => { :response => [Integer], :args => [Integer, Integer, String] },
12
+ :nvm_read => { :response => [String, Integer], :args => [Integer, Integer, Integer] },
13
+ :nvm_open => { :response => [Integer], :args => [Integer] },
14
+ :nvm_close => { :response => [Integer], :args => [Integer] },
15
15
  :led_set => { :response => [], :args => [Integer, Integer] },
16
16
  :usb_reconnect => { :response => [], :args => [] },
17
17
  :system_reset => { :response => [], :args => [] },
data/lib/svi/cmd/app.rb CHANGED
@@ -14,10 +14,10 @@ command :app do |c|
14
14
  end
15
15
  end
16
16
 
17
- c.desc 'Test is app task exist in device'
17
+ c.desc 'Test app task presence'
18
18
  c.command :exist do |exist|
19
19
  exist.action do
20
- puts $dev.app_exist[0] == 1 ? 'Application exist' : 'Application is not exist'
20
+ puts $dev.app_exist[0] == 1 ? 'Application exists' : "Application does not exist"
21
21
  end
22
22
  end
23
23
 
data/lib/svi/cmd/dfu.rb CHANGED
@@ -17,7 +17,6 @@ command :dfu do |c|
17
17
  exit_now! "Can't verify firmware into buffer" if res != [0]
18
18
 
19
19
  addr = 0x10000
20
- #addr = 0x20000 if options.target == :app
21
20
 
22
21
  res = $dev.firmware_program addr, Pathname.new(filepath).size()/512+1, !global_opts[:rescue]
23
22
 
data/lib/svi/version.rb CHANGED
@@ -1 +1 @@
1
- VERSION='0.3.16'
1
+ VERSION='0.3.18'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: svi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.16
4
+ version: 0.3.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Levenkov Artem
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-29 00:00:00.000000000 Z
11
+ date: 2015-04-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: libusb
@@ -73,11 +73,13 @@ dependencies:
73
73
  description: Service Interface
74
74
  email: alev@mcs51.ru
75
75
  executables:
76
+ - sbi
76
77
  - svi
77
78
  - svirb
78
79
  extensions: []
79
80
  extra_rdoc_files: []
80
81
  files:
82
+ - bin/sbi
81
83
  - bin/svi
82
84
  - bin/svirb
83
85
  - lib/svi/api.generated.rb