On 02/16/2014 08:56 PM, Scott Talbert wrote:
> Maybe it might help to print out the sequence numbers (or at least check 
> them) in hid_report_callback() to see for sure that the packets aren't 
> even making it to that point.

Great idea! We are getting them all here. Check this out (this is a stripped
down version of the debug). Note that I'm blindly printing the second byte in
any packet that comes in, not checking if it's one our response types or not.

PHIL: hid_report_callback: seq: 11
DEBUG (ReadFlash): Expected seq 11, got 11
DEBUG (ReadFlash): Next expected seq 22
PHIL: hid_report_callback: seq: 50
PHIL: hid_report_callback: seq: 01
DEBUG (ReadFlash): Expected seq 01, got 01
DEBUG (ReadFlash): Next expected seq 12
PHIL: hid_report_callback: seq: 12
DEBUG (ReadFlash): Expected seq 12, got 12
DEBUG (ReadFlash): Next expected seq 23
PHIL: hid_report_callback: seq: 23
DEBUG (ReadFlash): Expected seq 23, got 23
DEBUG (ReadFlash): Next expected seq 34
PHIL: hid_report_callback: seq: 34
DEBUG (ReadFlash): Expected seq 34, got 34
DEBUG (ReadFlash): Next expected seq 45
PHIL: hid_report_callback: seq: 45
DEBUG (ReadFlash): Expected seq 45, got 45
DEBUG (ReadFlash): Next expected seq 56
PHIL: hid_report_callback: seq: 56
PHIL: hid_report_callback: seq: 67
PHIL: hid_report_callback: seq: 78
PHIL: hid_report_callback: seq: 89
PHIL: hid_report_callback: seq: 9a
PHIL: hid_report_callback: seq: ab
PHIL: hid_report_callback: seq: bc
PHIL: hid_report_callback: seq: cd
PHIL: hid_report_callback: seq: de
DEBUG (ReadFlash): Expected seq 56, got 56
DEBUG (ReadFlash): Next expected seq 67
DEBUG (ReadFlash): Expected seq 67, got 67
DEBUG (ReadFlash): Next expected seq 78
DEBUG (ReadFlash): Expected seq 78, got 78
DEBUG (ReadFlash): Next expected seq 89
DEBUG (ReadFlash): Expected seq 89, got 89
DEBUG (ReadFlash): Next expected seq 9A
DEBUG (ReadFlash): Expected seq 9A, got 9A
DEBUG (ReadFlash): Next expected seq AB
DEBUG (ReadFlash): Expected seq AB, got AB
DEBUG (ReadFlash): Next expected seq BC
DEBUG (ReadFlash): Expected seq BC, got BC
DEBUG (ReadFlash): Next expected seq CD
DEBUG (ReadFlash): Expected seq CD, got CD
DEBUG (ReadFlash): Next expected seq DE
DEBUG (ReadFlash): Expected seq DE, got DE
DEBUG (ReadFlash): Next expected seq EF
PHIL: hid_report_callback: seq: 11
DEBUG (ReadFlash): Expected seq EF, got 11
DEBUG (ReadFlash): Invalid sequence want: EF got: 11


So there's a standard missing packet. Looking at another:

DEBUG (ReadFlash): Expected seq 23, got 23
DEBUG (ReadFlash): Next expected seq 34
PHIL: hid_report_callback: seq: 34
PHIL: hid_report_callback: seq: 45
PHIL: hid_report_callback: seq: 56
PHIL: hid_report_callback: seq: 67
PHIL: hid_report_callback: seq: 78
PHIL: hid_report_callback: seq: 89
PHIL: hid_report_callback: seq: 9a
PHIL: hid_report_callback: seq: ab
PHIL: hid_report_callback: seq: bc
PHIL: hid_report_callback: seq: ef
DEBUG (ReadFlash): Expected seq 34, got 34
DEBUG (ReadFlash): Next expected seq 45
DEBUG (ReadFlash): Expected seq 45, got 45
DEBUG (ReadFlash): Next expected seq 56
DEBUG (ReadFlash): Expected seq 56, got 56
DEBUG (ReadFlash): Next expected seq 67
DEBUG (ReadFlash): Expected seq 67, got 67
DEBUG (ReadFlash): Next expected seq 78
DEBUG (ReadFlash): Expected seq 78, got 78
DEBUG (ReadFlash): Next expected seq 89
DEBUG (ReadFlash): Expected seq 89, got 89
DEBUG (ReadFlash): Next expected seq 9A
DEBUG (ReadFlash): Expected seq 9A, got 9A
DEBUG (ReadFlash): Next expected seq AB
DEBUG (ReadFlash): Expected seq AB, got AB
DEBUG (ReadFlash): Next expected seq BC
DEBUG (ReadFlash): Expected seq BC, got BC
DEBUG (ReadFlash): Next expected seq CD
DEBUG (ReadFlash): Expected seq CD, got EF
DEBUG (ReadFlash): Invalid sequence want: CD got: ef

Again, standard missing packet. One more:

PHIL: hid_report_callback: seq: 56
PHIL: hid_report_callback: seq: 67
PHIL: hid_report_callback: seq: 78
PHIL: hid_report_callback: seq: 89
PHIL: hid_report_callback: seq: 9a
PHIL: hid_report_callback: seq: ab
PHIL: hid_report_callback: seq: bc
PHIL: hid_report_callback: seq: cd
PHIL: hid_report_callback: seq: de
DEBUG (ReadFlash): Expected seq 56, got 56
DEBUG (ReadFlash): Next expected seq 67
DEBUG (ReadFlash): Expected seq 67, got 67
DEBUG (ReadFlash): Next expected seq 78
DEBUG (ReadFlash): Expected seq 78, got 78
DEBUG (ReadFlash): Next expected seq 89
DEBUG (ReadFlash): Expected seq 89, got 89
DEBUG (ReadFlash): Next expected seq 9A
DEBUG (ReadFlash): Expected seq 9A, got 9A
DEBUG (ReadFlash): Next expected seq AB
DEBUG (ReadFlash): Expected seq AB, got AB
DEBUG (ReadFlash): Next expected seq BC
DEBUG (ReadFlash): Expected seq BC, got BC
DEBUG (ReadFlash): Next expected seq CD
DEBUG (ReadFlash): Expected seq CD, got CD
DEBUG (ReadFlash): Next expected seq DE
DEBUG (ReadFlash): Expected seq DE, got DE
DEBUG (ReadFlash): Next expected seq EF
PHIL: hid_report_callback: seq: 11
DEBUG (ReadFlash): Expected seq EF, got 11
DEBUG (ReadFlash): Invalid sequence want: EF got: 11

And again.

I have a hard time believing this just blatanly doesn't work in Mac though...
as I said the official software manages to work.

> Not USB, just HID.  I would think that this is a bit of a weird case for 
> HID.  I would think most HID devices are probably sending things like 
> mouse coordinates periodically.  Transferring a file (sending a long 
> stream of packets continuously) is probably not something that happens 
> very often with HID devices?  I wouldn't think?

That seems true in theory, but in practice, it seems like anything that you
want to control in userspace people just throw behind HID, so I get the
feeling it's more common than you'd think.


-- 
Phil Dibowitz                             p...@ipom.com
Open Source software and tech docs        Insanity Palace of Metallica
http://www.phildev.net/                   http://www.ipom.com/

"Be who you are and say what you feel, because those who mind don't matter
 and those who matter don't mind."
 - Dr. Seuss


Attachment: signature.asc
Description: OpenPGP digital signature

------------------------------------------------------------------------------
Android apps run on BlackBerry 10
Introducing the new BlackBerry 10.2.1 Runtime for Android apps.
Now with support for Jelly Bean, Bluetooth, Mapview and more.
Get your Android app in front of a whole new audience.  Start now.
http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk
_______________________________________________
concordance-devel mailing list
concordance-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/concordance-devel

Reply via email to