svi 0.3.16 → 0.3.18

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 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