summaryrefslogtreecommitdiff
path: root/decoder/test/usb_request
diff options
context:
space:
mode:
authorUwe Hermann <uwe@hermann-uwe.de>2015-12-04 22:39:08 +0100
committerUwe Hermann <uwe@hermann-uwe.de>2015-12-04 22:55:19 +0100
commit67760d23bd73f290a07038d35c6007e21b67831e (patch)
tree0934d0fa588e073c2109ba4b0c52c1463fe10a2c /decoder/test/usb_request
parent993b3473ae06fa033468651a4ad4cb28959a4cdd (diff)
downloadsigrok-test-67760d23bd73f290a07038d35c6007e21b67831e.tar.gz
sigrok-test-67760d23bd73f290a07038d35c6007e21b67831e.zip
usb*: Add a lot more test-cases.
Diffstat (limited to 'decoder/test/usb_request')
-rw-r--r--decoder/test/usb_request/logitech_rx250_leftclick.output1
-rw-r--r--decoder/test/usb_request/mk220_snippet.output68
-rw-r--r--decoder/test/usb_request/mk220_snippet_automatic.output67
-rw-r--r--decoder/test/usb_request/olimex_stm32-h103_usb_hid.output3
-rw-r--r--decoder/test/usb_request/rt-mwk01_snippet.output13
-rw-r--r--decoder/test/usb_request/test.conf118
-rw-r--r--decoder/test/usb_request/usb_reset_and_setup_lowspeed.output8
-rw-r--r--decoder/test/usb_request/voltcraft_vc820_usb_err.output16
-rw-r--r--decoder/test/usb_request/voltcraft_vc820_usb_err_automatic.output11
-rw-r--r--decoder/test/usb_request/voltcraft_vc820_usb_ok.output7
10 files changed, 312 insertions, 0 deletions
diff --git a/decoder/test/usb_request/logitech_rx250_leftclick.output b/decoder/test/usb_request/logitech_rx250_leftclick.output
new file mode 100644
index 0000000..4f251c5
--- /dev/null
+++ b/decoder/test/usb_request/logitech_rx250_leftclick.output
@@ -0,0 +1 @@
+692485-5502014 usb_request: request-bulk-read: "BULK in: [ 00 00 00 00 00 ] : ACK"
diff --git a/decoder/test/usb_request/mk220_snippet.output b/decoder/test/usb_request/mk220_snippet.output
new file mode 100644
index 0000000..46541c0
--- /dev/null
+++ b/decoder/test/usb_request/mk220_snippet.output
@@ -0,0 +1,68 @@
+194-297 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+707-777 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+451-554 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+964-1067 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1219-1322 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1475-1578 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3161-3264 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3534-3603 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+3291-3394 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3789-3892 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4046-4149 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4302-4405 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4557-4660 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4814-4917 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5070-5173 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5325-5428 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5582-5685 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5838-5941 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6214-6317 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6472-6575 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6727-6830 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6984-7087 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7240-7343 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7495-7598 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7752-7855 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8008-8111 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8263-8366 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8521-8624 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8776-8879 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9110-9213 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9365-9468 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9621-9724 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9876-9979 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+10389-10492 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+10644-10747 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+10902-11005 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11155-11258 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11411-11514 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11666-11769 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11922-12025 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12175-12278 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12430-12533 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12688-12791 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12943-13046 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13198-13301 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13456-13559 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13711-13814 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13967-14070 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14221-14324 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14476-14579 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14733-14836 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15111-15214 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15367-15470 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15622-15725 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15877-15980 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16135-16238 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16390-16493 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16903-17006 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17157-17260 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17412-17515 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17668-17771 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17923-18026 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18176-18279 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18432-18535 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18689-18792 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18944-19047 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+19200-19303 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+19715-19784 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
diff --git a/decoder/test/usb_request/mk220_snippet_automatic.output b/decoder/test/usb_request/mk220_snippet_automatic.output
new file mode 100644
index 0000000..c38ab1e
--- /dev/null
+++ b/decoder/test/usb_request/mk220_snippet_automatic.output
@@ -0,0 +1,67 @@
+194-297 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+707-777 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+451-554 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+964-1067 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1219-1322 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1475-1578 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3161-3264 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3534-3603 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+3291-3394 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3789-3892 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4046-4149 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4302-4405 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4557-4660 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4814-4917 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5070-5173 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5325-5428 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5582-5685 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+5838-5941 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6214-6317 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6472-6575 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6727-6830 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+6984-7087 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7240-7343 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7495-7598 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+7752-7855 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8008-8111 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8263-8366 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8521-8624 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+8776-8879 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9110-9213 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9365-9468 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9621-9724 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+9876-9979 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+10644-10747 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+10902-11005 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11155-11258 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11411-11514 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11666-11769 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+11922-12025 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12175-12278 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12430-12533 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12688-12791 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+12943-13046 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13198-13301 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13456-13559 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13711-13814 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+13967-14070 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14221-14324 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14476-14579 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+14733-14836 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15111-15214 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15367-15470 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15622-15725 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+15877-15980 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16135-16238 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16390-16493 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+16903-17006 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17157-17260 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17412-17515 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17668-17771 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+17923-18026 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18176-18279 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18432-18535 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18689-18792 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+18944-19047 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+19200-19303 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+19715-19784 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
diff --git a/decoder/test/usb_request/olimex_stm32-h103_usb_hid.output b/decoder/test/usb_request/olimex_stm32-h103_usb_hid.output
new file mode 100644
index 0000000..d40bc28
--- /dev/null
+++ b/decoder/test/usb_request/olimex_stm32-h103_usb_hid.output
@@ -0,0 +1,3 @@
+894686-895744 usb_request: request-bulk-read: "BULK in: [ 00 01 00 00 ] : ACK"
+4094761-4095818 usb_request: request-bulk-read: "BULK in: [ 00 01 00 00 ] : ACK"
+7294835-7295892 usb_request: request-bulk-read: "BULK in: [ 00 01 00 00 ] : ACK"
diff --git a/decoder/test/usb_request/rt-mwk01_snippet.output b/decoder/test/usb_request/rt-mwk01_snippet.output
new file mode 100644
index 0000000..46a6678
--- /dev/null
+++ b/decoder/test/usb_request/rt-mwk01_snippet.output
@@ -0,0 +1,13 @@
+94141-98731 usb_request: request-setup-write: "SETUP out: [ 00 05 5C 00 00 00 00 00 ][ ] : ACK"
+550248-565866 usb_request: request-setup-read: "SETUP in: [ 80 06 00 01 00 00 12 00 ][ 12 01 00 02 00 00 00 08 97 19 09 04 00 02 01 02 00 01 ] : ACK"
+569009-583739 usb_request: request-setup-read: "SETUP in: [ 80 06 00 02 00 00 09 00 ][ 09 02 3B 00 02 01 00 A0 32 ] : ACK"
+586726-626866 usb_request: request-setup-read: "SETUP in: [ 80 06 00 02 00 00 3B 00 ][ 09 02 3B 00 02 01 00 A0 32 09 04 00 00 01 03 01 01 00 09 21 11 01 00 01 22 3F 00 07 05 81 03 08 00 0A 09 04 01 00 01 03 01 02 00 09 21 11 01 00 01 22 5E 00 07 05 82 03 08 00 0A ] : ACK"
+629437-638324 usb_request: request-setup-read: "SETUP in: [ 80 06 00 03 00 00 FF 00 ][ 04 03 09 04 ] : ACK"
+640745-665075 usb_request: request-setup-read: "SETUP in: [ 80 06 02 03 09 04 FF 00 ][ 1E 03 4D 00 69 00 63 00 72 00 6F 00 20 00 4B 00 65 00 79 00 62 00 6F 00 61 00 72 00 64 00 ] : ACK"
+667772-681436 usb_request: request-setup-read: "SETUP in: [ 80 06 01 03 09 04 FF 00 ][ 0E 03 52 00 69 00 69 00 74 00 65 00 6B 00 ] : ACK"
+686333-692933 usb_request: request-setup-write: "SETUP out: [ 00 09 01 00 00 00 00 00 ][ ] : ACK"
+730723-735078 usb_request: request-setup-write: "SETUP out: [ 21 0A 00 00 00 00 00 00 ][ ] : ACK"
+736754-777578 usb_request: request-setup-read: "SETUP in: [ 81 06 00 22 00 00 3F 00 ][ 05 01 09 06 A1 01 05 07 19 E0 29 E7 15 00 25 01 75 01 95 08 81 02 95 01 75 08 81 01 95 05 75 01 05 08 19 01 29 05 91 02 95 01 75 03 91 01 95 06 75 08 15 00 25 95 05 07 19 00 29 95 81 00 C0 ] : ACK"
+784489-796812 usb_request: request-setup-write: "SETUP out: [ 21 09 00 02 00 00 01 00 ][ 00 00 00 ] : ACK"
+797038-801402 usb_request: request-setup-write: "SETUP out: [ 21 0A 00 00 01 00 00 00 ][ ] : ACK"
+802773-858468 usb_request: request-setup-read: "SETUP in: [ 81 06 00 22 01 00 5E 00 ][ 05 01 09 02 A1 01 09 01 A1 00 85 01 95 03 75 01 05 09 19 01 29 03 15 00 25 01 81 02 95 01 75 05 81 01 75 08 95 02 05 01 09 30 09 31 15 81 25 7F 81 06 C0 A1 00 95 01 75 08 05 01 09 38 15 81 25 7F 81 06 C0 C0 05 0C 09 01 A1 01 85 02 19 00 2A 3C 02 15 00 26 3C 02 95 01 75 10 81 00 C0 ] : ACK"
diff --git a/decoder/test/usb_request/test.conf b/decoder/test/usb_request/test.conf
new file mode 100644
index 0000000..1955d4c
--- /dev/null
+++ b/decoder/test/usb_request/test.conf
@@ -0,0 +1,118 @@
+test logitech_rx250_leftclick
+ protocol-decoder usb_signalling channel dp=0 channel dm=1 option signalling=low-speed
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/mouse/logitech_rx250/logitech_rx250_leftclick.sr
+ output usb_request annotation match logitech_rx250_leftclick.output
+
+# Same output as above.
+test logitech_rx250_leftclick_automatic
+ protocol-decoder usb_signalling channel dp=0 channel dm=1 option signalling=low-speed
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/mouse/logitech_rx250/logitech_rx250_leftclick.sr
+ output usb_request annotation match logitech_rx250_leftclick.output
+
+test olimex_stm32-h103_usb_hid
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=full-speed
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/mouse/olimex_stm32-h103_usb_hid/olimex_stm32-h103_usb_hid.sr
+ output usb_request annotation match olimex_stm32-h103_usb_hid.output
+
+# Same output as above.
+test olimex_stm32-h103_usb_hid_automatic
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=automatic
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/mouse/olimex_stm32-h103_usb_hid/olimex_stm32-h103_usb_hid.sr
+ output usb_request annotation match olimex_stm32-h103_usb_hid.output
+
+test mk220_snippet
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=full-speed
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/keyboard_mouse_combo/logitech_mk220/mk220_snippet.sr
+ output usb_request annotation match mk220_snippet.output
+
+# NOT the same output as above!
+test mk220_snippet_automatic
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=automatic
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/keyboard_mouse_combo/logitech_mk220/mk220_snippet.sr
+ output usb_request annotation match mk220_snippet_automatic.output
+
+test rt-mwk01_snippet
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=low-speed
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/keyboard_mouse_combo/riitek_rt-mwk01/rt-mwk01_snippet.sr
+ output usb_request annotation match rt-mwk01_snippet.output
+
+# Same output as above.
+test rt-mwk01_snippet_automatic
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=automatic
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/keyboard_mouse_combo/riitek_rt-mwk01/rt-mwk01_snippet.sr
+ output usb_request annotation match rt-mwk01_snippet.output
+
+test usb_reset_and_setup_lowspeed
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=low-speed
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/setup/usb_reset_and_setup_lowspeed.sr
+ output usb_request annotation match usb_reset_and_setup_lowspeed.output
+
+# Same output as above.
+test usb_reset_and_setup_lowspeed_automatic
+ protocol-decoder usb_signalling channel dp=1 channel dm=0 option signalling=automatic
+ protocol-decoder usb_packet option signalling=low-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/setup/usb_reset_and_setup_lowspeed.sr
+ output usb_request annotation match usb_reset_and_setup_lowspeed.output
+
+test voltcraft_vc820_usb_ok
+ protocol-decoder usb_signalling channel dp=7 channel dm=6 option signalling=full-speed
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/dmm/voltcraft_vc820/voltcraft_vc820_usb_ok.sr
+ output usb_request annotation match voltcraft_vc820_usb_ok.output
+
+# Same output as above.
+test voltcraft_vc820_usb_ok_automatic
+ protocol-decoder usb_signalling channel dp=7 channel dm=6 option signalling=automatic
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/dmm/voltcraft_vc820/voltcraft_vc820_usb_ok.sr
+ output usb_request annotation match voltcraft_vc820_usb_ok.output
+
+test voltcraft_vc820_usb_err
+ protocol-decoder usb_signalling channel dp=7 channel dm=6 option signalling=full-speed
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/dmm/voltcraft_vc820/voltcraft_vc820_usb_err.sr
+ output usb_request annotation match voltcraft_vc820_usb_err.output
+
+# NOT the same output as above!
+test voltcraft_vc820_usb_err_automatic
+ protocol-decoder usb_signalling channel dp=7 channel dm=6 option signalling=automatic
+ protocol-decoder usb_packet option signalling=full-speed
+ protocol-decoder usb_request
+ stack usb_signalling usb_packet usb_request
+ input usb/hid/dmm/voltcraft_vc820/voltcraft_vc820_usb_err.sr
+ output usb_request annotation match voltcraft_vc820_usb_err_automatic.output
diff --git a/decoder/test/usb_request/usb_reset_and_setup_lowspeed.output b/decoder/test/usb_request/usb_reset_and_setup_lowspeed.output
new file mode 100644
index 0000000..1158810
--- /dev/null
+++ b/decoder/test/usb_request/usb_reset_and_setup_lowspeed.output
@@ -0,0 +1,8 @@
+3938008-3960581 usb_request: request-setup-read: "SETUP in: [ 80 06 00 01 00 00 40 00 ][ 12 01 10 01 00 00 00 08 D9 04 33 11 00 01 00 00 00 01 ] : ACK"
+5487752-5492419 usb_request: request-setup-write: "SETUP out: [ 00 05 0D 00 00 00 00 00 ][ ] : ACK"
+5597602-5620586 usb_request: request-setup-read: "SETUP in: [ 80 06 00 01 00 00 12 00 ][ 12 01 10 01 00 00 00 08 D9 04 33 11 00 01 00 00 00 01 ] : ACK"
+5620879-5635579 usb_request: request-setup-read: "SETUP in: [ 80 06 00 02 00 00 09 00 ][ 09 02 22 00 01 01 00 A0 32 ] : ACK"
+5635811-5676345 usb_request: request-setup-read: "SETUP in: [ 80 06 00 02 00 00 22 00 ][ 09 02 22 00 01 01 00 A0 32 09 04 00 00 01 03 01 02 00 09 21 10 01 00 01 22 34 00 07 05 81 03 04 00 0A ] : ACK"
+5683055-5688616 usb_request: request-setup-write: "SETUP out: [ 00 09 01 00 00 00 00 00 ][ ] : ACK"
+5689162-5693068 usb_request: request-setup-write: "SETUP out: [ 21 0A 00 00 00 00 00 00 ][ ] : STALL"
+5694947-5751900 usb_request: request-setup-read: "SETUP in: [ 81 06 00 22 00 00 34 00 ][ 05 01 09 02 A1 01 09 01 A1 00 05 09 19 01 29 03 15 00 25 01 95 03 75 01 81 02 95 01 75 05 81 01 05 01 09 30 09 31 09 38 15 81 25 7F 75 08 95 03 81 06 C0 C0 ] : ACK"
diff --git a/decoder/test/usb_request/voltcraft_vc820_usb_err.output b/decoder/test/usb_request/voltcraft_vc820_usb_err.output
new file mode 100644
index 0000000..cea4a6e
--- /dev/null
+++ b/decoder/test/usb_request/voltcraft_vc820_usb_err.output
@@ -0,0 +1,16 @@
+1045362-1047918 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+1845361-1847917 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+2645357-2647913 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+3445353-3447909 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+4245369-4247925 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+4255052-4256532 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+5045359-5047933 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+5055048-5056528 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+5845352-5847909 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+5854984-5856464 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+6645353-6647910 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+6654954-6656440 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+7445257-7447814 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+7454904-7456384 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+8245268-8247825 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
+8254920-8256400 usb_request: errors: "ERR: received unhandled UNKNOWN token in state TOKEN RECEIVED"
diff --git a/decoder/test/usb_request/voltcraft_vc820_usb_err_automatic.output b/decoder/test/usb_request/voltcraft_vc820_usb_err_automatic.output
new file mode 100644
index 0000000..b44570a
--- /dev/null
+++ b/decoder/test/usb_request/voltcraft_vc820_usb_err_automatic.output
@@ -0,0 +1,11 @@
+245599-249098 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1045578-1049077 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+1845578-1849076 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+2645573-2649072 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+3445569-3449068 usb_request: request-bulk-read: "BULK in: [ ] : timeout"
+4245585-4256534 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
+5045594-5056531 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
+5845587-5856467 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
+6645588-6656438 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
+7445492-7456387 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
+8245503-8256403 usb_request: request-bulk-read: "BULK in: [ ] : ACK"
diff --git a/decoder/test/usb_request/voltcraft_vc820_usb_ok.output b/decoder/test/usb_request/voltcraft_vc820_usb_ok.output
new file mode 100644
index 0000000..3b3b735
--- /dev/null
+++ b/decoder/test/usb_request/voltcraft_vc820_usb_ok.output
@@ -0,0 +1,7 @@
+647229-648587 usb_request: request-bulk-read: "BULK in: [ F2 5E 62 00 00 00 00 00 ] : ACK"
+1847221-1848579 usb_request: request-bulk-read: "BULK in: [ F3 77 8F 9E 00 00 00 00 ] : ACK"
+3047230-3048587 usb_request: request-bulk-read: "BULK in: [ F3 A0 B8 C0 00 00 00 00 ] : ACK"
+4247247-4248596 usb_request: request-bulk-read: "BULK in: [ F2 D4 E8 00 00 00 00 00 ] : ACK"
+5847247-5848597 usb_request: request-bulk-read: "BULK in: [ F0 00 00 00 00 00 00 00 ] : ACK"
+7047248-7048605 usb_request: request-bulk-read: "BULK in: [ F0 00 00 00 00 00 00 00 ] : ACK"
+8247231-8248580 usb_request: request-bulk-read: "BULK in: [ F0 00 00 00 00 00 00 00 ] : ACK"