Closed robolmos closed 11 years ago
Hi Rob.
Here's a link to the USB prober tool (you can also get it in Apple's USB debug kits) for OS X.
Can you launch that, attempt to tether your phone, and then click "Save Output" and attach the file here? I think what's going on is that HoRNDIS is not matching against your device because the descriptors may be slightly different than what it's expecting; if that be the case, then I should have a quick fix for you.
Thanks, joshua
Hey Joshua,
I tried the USB Prober app and it crashes. I tried looking for a debug kit and none of them are for 10.7.5. Can you provide me a link a 10.7.5 USB debug kit or or steps to find it?
Thanks
Gee, that's no good! What's the crash signature -- is there some particular library that's missing? I may be able to provide the missing dylib.
Unfortunately, if it's not on Apple's site, I'm not sure where to find it, but in case something went wrong when I was zipping it, you can try [http://touch-base.com/documentation/USBMacProber.htm](one of the versions from this guy's site), too.
I just now found USB Prober and got it running. It's in the Hardware IO Tools for February. Apparently it was removed from the Late July (August) Tools...
Running the capture now.
Is this what you're looking for? The USB Port status?
Hub (EHCI Root Hub Simulation) @ 0xfa000000 with 6 ports Port 1: Status: 0x0503 Change: 0x0000 HubDevice STATUS(change): CONNECT ENABLE POWER HighSpeed Port 2: Status: 0x0507 Change: 0x0000 FaceTime HD Camera (Built-in) STATUS(change): CONNECT ENABLE SUSPEND POWER HighSpeed Port 3: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 4: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 5: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 6: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Hub (HubDevice) @ 0xfa100000 with 3 ports Port 1: Status: 0x0107 Change: 0x0000 BRCM2070 Hub STATUS(change): CONNECT ENABLE SUSPEND POWER FullSpeed Port 2: Status: 0x0103 Change: 0x0000 Apple Internal Keyboard / Trackpad STATUS(change): CONNECT ENABLE POWER FullSpeed Port 3: Status: 0x0503 Change: 0x0000 XT912 STATUS(change): CONNECT ENABLE POWER HighSpeed Hub (BRCM2070 Hub) @ 0xfa110000 with 3 ports Port 1: (_dev)->DeviceRequest err: 0xe000404f Port 2: Not Responding Port 3: (_dev)->DeviceRequest err: 0xe000404f Hub (EHCI Root Hub Simulation) @ 0xfd000000 with 8 ports Port 1: Status: 0x0507 Change: 0x0000 HubDevice STATUS(change): CONNECT ENABLE SUSPEND POWER HighSpeed Port 2: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 3: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 4: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 5: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 6: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 7: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Port 8: Status: 0x0500 Change: 0x0000 STATUS(change): POWER HighSpeed Hub (HubDevice) @ 0xfd100000 with 2 ports Port 1: Not Responding Port 2: Not Responding
I'm looking for the results in the 'bus probe' tab (importantly, the device and configuration descriptors). A "Save Output" in the bus probe tab should get the right thing.
Ah, OK. I think it's only the XT912 section but here's all of it just in case:
High Speed device @ 1 (0xFA000000): ............................................. Hub device: "EHCI Root Hub Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x05AC/0x8006 (Apple Inc.)
Device Version Number: 0x0200
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "EHCI Root Hub Simulation"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 27
Raw Descriptor (hex) 0000: 0A 02 1B 00 01 01 00 60 00 4A 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 01 00 08 05 81 03 08 00 09 FF
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 ma
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
High Speed device @ 2 (0xFA200000): ............................................. FaceTime HD Camera (Built-in) (Device is suspended)
Port Information: 0x003f
Captive
Attached to Root Hub
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 3
High Speed device @ 3 (0xFA100000): ............................................. Hub device from SMSC
Port Information: 0x001f
Captive
Attached to Root Hub
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 2 (High Speed Multiple Transaction Translators)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x0424/0x2513 (SMSC)
Device Version Number: 0x0BB3
Number of Configurations: 1
Manufacturer String: 0 (none)
Product String: 0 (none)
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 41
Raw Descriptor (hex) 0000: 09 02 29 00 01 01 00 E0 01 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 01 00 07 05 81 03 01 00 0C 09 04 00 01 01 09 00
Raw Descriptor (hex) 0020: 02 00 07 05 81 03 01 00 0C
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 2 ma
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 1 (1 x 1 transactions opportunities per microframe)
Polling Interval: 12 (2048 microframes (256 msecs) )
Interface #0 - Hub (#1)
Alternate Setting 1
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 2 (Multi TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 1 (1 x 1 transactions opportunities per microframe)
Polling Interval: 12 (2048 microframes (256 msecs) )
Hub Descriptor
Length (and contents): 9
Raw Descriptor (hex) 0000: 09 29 03 0D 00 32 01 0E FF
Number of Ports: 0x03
Hub Characteristics: 0xd (Individually switched compound hub with individual port overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 1 mA
Device Removable (byte): 0xe
Port Power Control Mask (byte): 0xff
Device Qualifier Descriptor
Descriptor Version Number: 0x0200
Device Class 9 (Hub)
Device Subclass 0
Device Protocol 0 (Full/Low Speed)
Device MaxPacketSize: 64
Number of Configurations: 1
bReserved: 0
Other Speed Configuration Descriptor
Length (and contents): 25
Raw Descriptor (hex) 0000: 09 07 19 00 01 01 00 E0 01 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 00 00 07 05 81 03 01 00 FF
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 2 ma
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 1
Polling Interval: 255 ms
Full Speed device @ 4 (0xFA110000): ............................................. BRCM2070 Hub (Device is suspended)
Port Information: 0x003d
Captive
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Full Speed device @ 5 (0xFA120000): ............................................. Composite device: "Apple Internal Keyboard / Trackpad"
Port Information: 0x001d
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 4
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 0 (Composite)
Device Subclass: 0
Device Protocol: 0
Device MaxPacketSize: 8
Device VendorID/ProductID: 0x05AC/0x0252 (Apple Inc.)
Device Version Number: 0x0118
Number of Configurations: 1
Manufacturer String: 1 "Apple Inc."
Product String: 2 "Apple Internal Keyboard / Trackpad"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 84
Raw Descriptor (hex) 0000: 09 02 54 00 03 01 00 A0 14 09 04 00 00 01 03 01
Raw Descriptor (hex) 0010: 01 03 09 21 11 01 21 01 22 9C 00 07 05 83 03 0A
Raw Descriptor (hex) 0020: 00 08 09 04 01 00 01 03 00 00 04 09 21 11 01 00
Raw Descriptor (hex) 0030: 01 22 1B 00 07 05 81 03 40 00 02 09 04 02 00 01
Raw Descriptor (hex) 0040: 03 01 02 04 09 21 11 01 00 01 22 34 00 07 05 84
Raw Descriptor (hex) 0050: 03 08 00 08
Number of Interfaces: 3
Configuration Value: 1
Attributes: 0xA0 (bus-powered, remote wakeup)
MaxPower: 40 ma
Interface #0 - HID/Boot Interface .............................................. "Apple Internal Keyboard"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 1 (Boot Interface)
Interface Protocol: 1
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 33
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 156
Raw Descriptor (hex) 0000: 05 01 09 06 A1 01 85 01 05 07 19 E0 29 E7 15 00
Raw Descriptor (hex) 0010: 25 01 75 01 95 08 81 02 95 01 75 08 81 01 95 05
Raw Descriptor (hex) 0020: 75 01 05 08 19 01 29 05 91 02 95 01 75 03 91 01
Raw Descriptor (hex) 0030: 95 06 75 08 15 00 26 FF 00 05 07 19 00 29 FF 81
Raw Descriptor (hex) 0040: 00 05 0C 75 01 95 01 09 B8 15 00 25 01 81 02 05
Raw Descriptor (hex) 0050: FF 09 03 75 07 95 01 81 02 C0 05 0C 09 01 A1 01
Raw Descriptor (hex) 0060: 85 52 15 00 25 01 75 01 95 01 09 CD 81 02 09 B3
Raw Descriptor (hex) 0070: 81 02 09 B4 81 02 09 B5 81 02 09 B6 81 02 81 01
Raw Descriptor (hex) 0080: 81 01 81 01 85 09 15 00 25 01 75 08 95 01 06 01
Raw Descriptor (hex) 0090: FF 09 0B B1 02 75 08 95 02 B1 01 C0
Parsed Report Descriptor:
Usage Page (Generic Desktop)
Usage (Keyboard)
Collection (Application)
ReportID................ (1)
Usage Page (Keyboard/Keypad)
Usage Minimum........... (224)
Usage Maximum........... (231)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (1)
Report Count............ (8)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Report Count............ (1)
Report Size............. (8)
Input................... (Constant, Array, Absolute)
Report Count............ (5)
Report Size............. (1)
Usage Page (LED)
Usage Minimum........... (1)
Usage Maximum........... (5)
Output.................. (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Count............ (1)
Report Size............. (3)
Output.................. (Constant, Array, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Count............ (6)
Report Size............. (8)
Logical Minimum......... (0)
Logical Maximum......... (255)
Usage Page (Keyboard/Keypad)
Usage Minimum........... (0)
Usage Maximum........... (255)
Input................... (Data, Array, Absolute)
Usage Page (Consumer)
Report Size............. (1)
Report Count............ (1)
Usage 184 (0xb8)
Logical Minimum......... (0)
Logical Maximum......... (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage Page (255)
Usage 3 (0x3)
Report Size............. (7)
Report Count............ (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
End Collection
Usage Page (Consumer)
Usage 1 (0x1)
Collection (Application)
ReportID................ (82)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (1)
Report Count............ (1)
Usage 205 (0xcd)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 179 (0xb3)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 180 (0xb4)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 181 (0xb5)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 182 (0xb6)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Input................... (Constant, Array, Absolute)
Input................... (Constant, Array, Absolute)
Input................... (Constant, Array, Absolute)
ReportID................ (9)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (8)
Report Count............ (1)
Usage Page (Vendor defined 1)
Usage 11 (0xb)
Feature................. (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Size............. (8)
Report Count............ (2)
Feature................. (Constant, Array, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
End Collection
Endpoint 0x83 - Interrupt Input
Address: 0x83 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 10
Polling Interval: 8 ms
Interface #1 - HID .............................................. "Touchpad"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 0
Interface Protocol: 0
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 0
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 27
Raw Descriptor (hex) 0000: 06 00 FF 09 01 A1 03 06 00 FF 09 01 15 00 26 FF
Raw Descriptor (hex) 0010: 00 85 44 75 08 96 FF 01 81 00 C0
Parsed Report Descriptor:
Usage Page (Vendor defined 0)
Usage 1 (0x1)
Collection (Collection )
Usage Page (Vendor defined 0)
Usage 1 (0x1)
Logical Minimum......... (0)
Logical Maximum......... (255)
ReportID................ (68)
Report Size............. (8)
Report Count............ (511)
Input................... (Data, Array, Absolute)
End Collection
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 64
Polling Interval: 2 ms
Interface #2 - HID/Boot Interface .............................................. "Touchpad"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 1 (Boot Interface)
Interface Protocol: 2
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 0
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 52
Raw Descriptor (hex) 0000: 05 01 09 02 A1 01 09 01 A1 00 05 09 19 01 29 03
Raw Descriptor (hex) 0010: 15 00 25 01 85 02 95 03 75 01 81 02 95 01 75 05
Raw Descriptor (hex) 0020: 81 01 05 01 09 30 09 31 15 81 25 7F 75 08 95 02
Raw Descriptor (hex) 0030: 81 06 C0 C0
Parsed Report Descriptor:
Usage Page (Generic Desktop)
Usage (Mouse)
Collection (Application)
Usage (Pointer)
Collection (Physical)
Usage Page (Button)
Usage Minimum........... (1)
Usage Maximum........... (3)
Logical Minimum......... (0)
Logical Maximum......... (1)
ReportID................ (2)
Report Count............ (3)
Report Size............. (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Report Count............ (1)
Report Size............. (5)
Input................... (Constant, Array, Absolute)
Usage Page (Generic Desktop)
Usage (X)
Usage (Y)
Logical Minimum......... (-127)
Logical Maximum......... (127)
Report Size............. (8)
Report Count............ (2)
Input................... (Data, Variable, Relative, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
End Collection
End Collection
Endpoint 0x84 - Interrupt Input
Address: 0x84 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8
Polling Interval: 8 ms
Full Speed device @ 7 (0xFA113000): ............................................. Bluetooth USB Host Controller (did not respond to inquiry - kIOReturnNotResponding (0xe00002ed))
Port Information: kIOUSBPipeStalled (0xe000404f)
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 8
High Speed device @ 6 (0xFA130000): ............................................. Composite device: "XT912"
Port Information: 0x001d
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 4
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 0 (Composite)
Device Subclass: 0
Device Protocol: 0
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x22B8/0x431C (Motorola MDS)
Device Version Number: 0x0216
Number of Configurations: 1
Manufacturer String: 2 "Motorola"
Product String: 3 "XT912"
Serial Number String: 4 "0A3BEA020A00C01C"
Configuration Descriptor (current config)
Length (and contents): 75
Raw Descriptor (hex) 0000: 09 02 4B 00 02 01 00 C0 FA 08 0B 00 02 E0 01 03
Raw Descriptor (hex) 0010: 1B 09 04 00 00 01 E0 01 03 19 05 24 00 10 01 05
Raw Descriptor (hex) 0020: 24 01 00 01 04 24 02 00 05 24 06 00 01 07 05 82
Raw Descriptor (hex) 0030: 03 08 00 09 09 04 01 00 02 0A 00 00 1A 07 05 81
Raw Descriptor (hex) 0040: 02 00 02 00 07 05 01 02 00 02 00
Number of Interfaces: 2
Configuration Value: 1
Attributes: 0xC0 (self-powered)
MaxPower: 500 ma
Interface Association Wireless Controller/RF Controller
First Interface 0
Interface Count 2
Function Class 224 (Wireless Controller)
Function Subclass 1 (RF Controller)
Interface Protocol 3
Function String 27 "RNDIS"
Interface #0 - Wireless Controller/RF Controller .............................................. "RNDIS Communications Control"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 224 (Wireless Controller)
Interface Subclass; 1 (RF Controller)
Interface Protocol: 3 (Unknown)
Raw Descriptor (hex) 0000: 05 24 00 10 01
Raw Descriptor (hex) 0000: 05 24 01 00 01
Raw Descriptor (hex) 0000: 04 24 02 00
Raw Descriptor (hex) 0000: 05 24 06 00 01
Endpoint 0x82 - Interrupt Input
Address: 0x82 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
Interface #1 - Communications-Data/Unknown Comm Class Model .............................................. "RNDIS Ethernet Data"
Alternate Setting 0
Number of Endpoints 2
Interface Class: 10 (Communications-Data)
Interface Subclass; 0 (Unknown Comm Class Model)
Interface Protocol: 0
Endpoint 0x81 - Bulk Input
Address: 0x81 (IN)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Endpoint 0x01 - Bulk Output
Address: 0x01 (OUT)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Device Qualifier Descriptor
Descriptor Version Number: 0x0200
Device Class 0 (Composite)
Device Subclass 0
Device Protocol 0
Device MaxPacketSize: 64
Number of Configurations: 1
bReserved: 0
Other Speed Configuration Descriptor
Length (and contents): 75
Raw Descriptor (hex) 0000: 09 07 4B 00 02 01 00 C0 FA 08 0B 00 02 E0 01 03
Raw Descriptor (hex) 0010: 1B 09 04 00 00 01 E0 01 03 19 05 24 00 10 01 05
Raw Descriptor (hex) 0020: 24 01 00 01 04 24 02 00 05 24 06 00 01 07 05 82
Raw Descriptor (hex) 0030: 03 08 00 20 09 04 01 00 02 0A 00 00 1A 07 05 81
Raw Descriptor (hex) 0040: 02 40 00 00 07 05 01 02 40 00 00
Number of Interfaces: 2
Configuration Value: 1
Attributes: 0xC0 (self-powered)
MaxPower: 500 ma
Interface Association Wireless Controller/RF Controller
First Interface 0
Interface Count 2
Function Class 224 (Wireless Controller)
Function Subclass 1 (RF Controller)
Interface Protocol 3
Function String 27 "RNDIS"
Interface #0 - Wireless Controller/RF Controller .............................................. "RNDIS Communications Control"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 224 (Wireless Controller)
Interface Subclass; 1 (RF Controller)
Interface Protocol: 3 (Unknown)
Raw Descriptor (hex) 0000: 05 24 00 10 01
Raw Descriptor (hex) 0000: 05 24 01 00 01
Raw Descriptor (hex) 0000: 04 24 02 00
Raw Descriptor (hex) 0000: 05 24 06 00 01
Endpoint 0x82 - Interrupt Input
Address: 0x82 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8
Polling Interval: 32 ms
Interface #1 - Communications-Data/Unknown Comm Class Model .............................................. "RNDIS Ethernet Data"
Alternate Setting 0
Number of Endpoints 2
Interface Class: 10 (Communications-Data)
Interface Subclass; 0 (Unknown Comm Class Model)
Interface Protocol: 0
Endpoint 0x81 - Bulk Input
Address: 0x81 (IN)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 64
Polling Interval: 0 ms
Endpoint 0x01 - Bulk Output
Address: 0x01 (OUT)
Attributes: 0x02 (Bulk no synchronization data endpoint)
Max Packet Size: 64
Polling Interval: 0 ms
High Speed device @ 1 (0xFD000000): ............................................. Hub device: "EHCI Root Hub Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x05AC/0x8006 (Apple Inc.)
Device Version Number: 0x0200
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "EHCI Root Hub Simulation"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 27
Raw Descriptor (hex) 0000: 0A 02 1B 00 01 01 00 60 00 8C 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 01 00 08 05 81 03 08 00 09 FF
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 ma
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt no synchronization data endpoint)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
High Speed device @ 2 (0xFD100000): ............................................. HubDevice (Device is suspended)
Port Information: 0x003f
Captive
Attached to Root Hub
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Low Speed device @ 3 (0xFD110000): ............................................. IR Receiver (did not respond to inquiry - kIOUSBHighSpeedSplitError (0xe000404b))
Port Information: kIOReturnNotResponding (0xe00002ed)
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Ok, I understand what's happening there. Yes, the descriptors are slightly different than that for the Galaxy Nexus. It will require a little more doing than I expected, but I think I see how to make that work. (The solution is, arguably, what I should have done in the first place.)
Bed time now, but I'll try to do that tomorrow.
I'm seeing the same thing with a Samsung Galaxy S3 (Android 4.0.4) on Tmobile on Mac 10.8.2. Here's the output from my bus probe:
Super Speed device @ 128 (0x14800000): ............................................. Hub device: "XHCI Root Hub SS Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0300
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 3 (SuperSpeed)
Device MaxPacketSize: 9
Device VendorID/ProductID: 0x05AC/0x8007 (Apple Inc.)
Device Version Number: 0x0300
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "XHCI Root Hub SS Simulation"
Serial Number String: 0 (none)
BOS Descriptor
Length (and contents): 42
Raw Descriptor (hex) 0000: 05 0F 2A 00 03 07 10 02 02 00 00 00 0A 10 03 02
Raw Descriptor (hex) 0010: 0C 00 08 0A 64 00 14 10 04 00 DF FB 1E 9E 1B 1D
Raw Descriptor (hex) 0020: 10 46 AE 91 3B 66 F5 56 1D 0A
Number of Capability Descriptors: 3
USB 2.0 Extension: 2
bmAttributes: 0x00000002
Bit 1: Link Power Management supported
SuperSpeed USB Device: 3
bmAttributes: 0x00000002
Bit 1: Latency Tolerance Messages supported
wSpeedsSupported: 0x000c
Bit 2: High Speed supported
Bit 3: Super Speed (5Gbps) supported
bFunctionalitySupport: 0x0008: Super Speed Only
bU1ExitLat: Less than 10 µs
wU2ExitLat: Less than 100 µs
ContainerID: 9e1efbdf-1d1b-4610-ae91-3b66f5561d0a
Configuration Descriptor (current config)
Length (and contents): 33
Raw Descriptor (hex) 0000: 0A 02 21 00 01 01 00 60 00 00 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 00 00 08 05 81 13 02 00 09 00 06 30 00 00 02
Raw Descriptor (hex) 0020: 00
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x13 (Interrupt notification)
Max Packet Size: 2
Polling Interval: 9 (256 microframes (32 msecs) )
SuperSpeed Endpoint Companion
bMaxBurst: 0
bmAttributes: 0 (Mult: 0, max number of packets: 0)
wBytesPerInterval: 2
Hub Descriptor
Length (and contents): 28
Raw Descriptor (hex) 0000: 1C 2A 04 00 00 32 00 00 0A 00 00 FF 82 FF FF FF
Raw Descriptor (hex) 0010: 0A 2D A2 24 80 FF FF FF F0 39 29 3F
Number of Ports: 0x04
Hub Characteristics: 0x0 (Gang switched standalone hub with global overcurrent protection)
PowerOnToGood time: 100 ms
Controller current: 0 mA
Header decode latency:
Hub delay time: 10 ns
Device Removable (byte): 0x0
High Speed device @ 1 (0x1A000000): ............................................. Hub device: "EHCI Root Hub Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x05AC/0x8006 (Apple Inc.)
Device Version Number: 0x0200
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "EHCI Root Hub Simulation"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 27
Raw Descriptor (hex) 0000: 0A 02 1B 00 01 01 00 60 00 00 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 01 00 08 05 81 03 08 00 09 00
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
Hub Descriptor
Length (and contents): 9
Raw Descriptor (hex) 0000: 09 29 02 00 00 32 00 02 FF
Number of Ports: 0x02
Hub Characteristics: 0x0 (Gang switched standalone hub with global overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 0 mA
Device Removable (byte): 0x2
Port Power Control Mask (byte): 0xff
High Speed device @ 1 (0x1D000000): ............................................. Hub device: "EHCI Root Hub Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x05AC/0x8006 (Apple Inc.)
Device Version Number: 0x0200
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "EHCI Root Hub Simulation"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 27
Raw Descriptor (hex) 0000: 0A 02 1B 00 01 01 00 60 00 00 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 01 00 08 05 81 03 08 00 09 00
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
Hub Descriptor
Length (and contents): 9
Raw Descriptor (hex) 0000: 09 29 02 00 00 32 00 02 FF
Number of Ports: 0x02
Hub Characteristics: 0x0 (Gang switched standalone hub with global overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 0 mA
Device Removable (byte): 0x2
Port Power Control Mask (byte): 0xff
High Speed device @ 129 (0x14000000): ............................................. Hub device: "XHCI Root Hub USB 2.0 Simulation"
Port Information: 0x061d
Built-in Root Hub
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 9
Device VendorID/ProductID: 0x05AC/0x8007 (Apple Inc.)
Device Version Number: 0x0300
Number of Configurations: 1
Manufacturer String: 2 "Apple Inc."
Product String: 1 "XHCI Root Hub USB 2.0 Simulation"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 33
Raw Descriptor (hex) 0000: 0A 02 21 00 01 01 00 60 00 00 09 04 00 00 01 09
Raw Descriptor (hex) 0010: 00 00 00 08 05 81 13 02 00 09 00 06 30 00 00 02
Raw Descriptor (hex) 0020: 00
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0x60 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x13 (Interrupt)
Max Packet Size: 2 (2 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
Hub Descriptor
Length (and contents): 9
Raw Descriptor (hex) 0000: 09 29 04 00 00 32 00 00 FF
Number of Ports: 0x04
Hub Characteristics: 0x0 (Gang switched standalone hub with global overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 0 mA
Device Removable (byte): 0x0
Port Power Control Mask (byte): 0xff
High Speed device @ 2 (0x1D100000): ............................................. Hub device from Intel Corporation
Port Information: 0x001f
Captive
Attached to Root Hub
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 1 (High Speed Single Transaction Translator)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x8087/0x0024 (Intel Corporation)
Device Version Number: 0x0000
Number of Configurations: 1
Manufacturer String: 0 (none)
Product String: 0 (none)
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 25
Raw Descriptor (hex) 0000: 09 02 19 00 01 01 00 E0 00 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 00 00 07 05 81 03 02 00 0C
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 2 (2 x 1 transactions opportunities per microframe)
Polling Interval: 12 (2048 microframes (256 msecs) )
Hub Descriptor
Length (and contents): 11
Raw Descriptor (hex) 0000: 0B 29 08 09 00 32 00 00 01 FF FF
Number of Ports: 0x08
Hub Characteristics: 0x9 (Individually switched standalone hub with individual port overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 0 mA
Device Removable (word): 0x100
Port Power Control Mask (word): 0xffff
Device Qualifier Descriptor
Descriptor Version Number: 0x0200
Device Class 9 (Hub)
Device Subclass 0
Device Protocol 0 (Full/Low Speed)
Device MaxPacketSize: 64
Number of Configurations: 1
bReserved: 0
Other Speed Configuration Descriptor
Length (and contents): 25
Raw Descriptor (hex) 0000: 09 07 19 00 01 01 00 E0 00 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 00 00 07 05 81 03 02 00 FF
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 0 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 2
Polling Interval: 255 ms
High Speed device @ 2 (0x1A100000): ............................................. HubDevice (Device is suspended)
Port Information: 0x003f
Captive
Attached to Root Hub
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
High Speed device @ 3 (0x1D180000): ............................................. Hub device from SMSC
Port Information: 0x001d
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 9 (Hub)
Device Subclass: 0
Device Protocol: 2 (High Speed Multiple Transaction Translators)
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x0424/0x2512 (SMSC)
Device Version Number: 0x0BB3
Number of Configurations: 1
Manufacturer String: 0 (none)
Product String: 0 (none)
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 41
Raw Descriptor (hex) 0000: 09 02 29 00 01 01 00 E0 01 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 01 00 07 05 81 03 01 00 0C 09 04 00 01 01 09 00
Raw Descriptor (hex) 0020: 02 00 07 05 81 03 01 00 0C
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 2 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 1 (Multi TT Hub configured as a Single TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 1 (1 x 1 transactions opportunities per microframe)
Polling Interval: 12 (2048 microframes (256 msecs) )
Interface #0 - Hub (#1)
Alternate Setting 1
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 2 (Multi TT Hub)
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 1 (1 x 1 transactions opportunities per microframe)
Polling Interval: 12 (2048 microframes (256 msecs) )
Hub Descriptor
Length (and contents): 9
Raw Descriptor (hex) 0000: 09 29 02 0D 00 32 01 06 FF
Number of Ports: 0x02
Hub Characteristics: 0xd (Individually switched compound hub with individual port overcurrent protection requiring 8 FS bit times and no port indicators)
PowerOnToGood time: 100 ms
Controller current: 1 mA
Device Removable (byte): 0x6
Port Power Control Mask (byte): 0xff
Device Qualifier Descriptor
Descriptor Version Number: 0x0200
Device Class 9 (Hub)
Device Subclass 0
Device Protocol 0 (Full/Low Speed)
Device MaxPacketSize: 64
Number of Configurations: 1
bReserved: 0
Other Speed Configuration Descriptor
Length (and contents): 25
Raw Descriptor (hex) 0000: 09 07 19 00 01 01 00 E0 01 09 04 00 00 01 09 00
Raw Descriptor (hex) 0010: 00 00 07 05 81 03 01 00 FF
Number of Interfaces: 1
Configuration Value: 1
Attributes: 0xE0 (self-powered, remote wakeup)
MaxPower: 2 mA
Interface #0 - Hub
Alternate Setting 0
Number of Endpoints 1
Interface Class: 9 (Hub)
Interface Subclass; 0
Interface Protocol: 0
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 1
Polling Interval: 255 ms
Full Speed device @ 5 (0x1D181000): ............................................. BRCM20702 Hub (Device is suspended)
Port Information: 0x003d
Captive
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 2
High Speed device @ 3 (0x1A110000): ............................................. FaceTime HD Camera (Built-in) (Device is suspended)
Port Information: 0x003d
Captive
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 3
Full Speed device @ 4 (0x1D182000): ............................................. Composite device: "Apple Internal Keyboard / Trackpad"
Port Information: 0x001d
Captive
Internal Device
Connected
Enabled
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 4
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 0 (Composite)
Device Subclass: 0
Device Protocol: 0
Device MaxPacketSize: 8
Device VendorID/ProductID: 0x05AC/0x0262 (Apple Inc.)
Device Version Number: 0x0222
Number of Configurations: 1
Manufacturer String: 1 "Apple Inc."
Product String: 2 "Apple Internal Keyboard / Trackpad"
Serial Number String: 0 (none)
Configuration Descriptor (current config)
Length (and contents): 84
Raw Descriptor (hex) 0000: 09 02 54 00 03 01 00 A0 14 09 04 00 00 01 03 01
Raw Descriptor (hex) 0010: 01 03 09 21 11 01 21 01 22 9C 00 07 05 83 03 0A
Raw Descriptor (hex) 0020: 00 08 09 04 01 00 01 03 00 00 04 09 21 11 01 00
Raw Descriptor (hex) 0030: 01 22 1B 00 07 05 81 03 40 00 02 09 04 02 00 01
Raw Descriptor (hex) 0040: 03 01 02 04 09 21 11 01 00 01 22 34 00 07 05 84
Raw Descriptor (hex) 0050: 03 08 00 08
Number of Interfaces: 3
Configuration Value: 1
Attributes: 0xA0 (bus-powered, remote wakeup)
MaxPower: 40 mA
Interface #0 - HID/Boot Interface .............................................. "Apple Internal Keyboard"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 1 (Boot Interface)
Interface Protocol: 1
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 33
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 156
Raw Descriptor (hex) 0000: 05 01 09 06 A1 01 85 01 05 07 19 E0 29 E7 15 00
Raw Descriptor (hex) 0010: 25 01 75 01 95 08 81 02 95 01 75 08 81 01 95 05
Raw Descriptor (hex) 0020: 75 01 05 08 19 01 29 05 91 02 95 01 75 03 91 01
Raw Descriptor (hex) 0030: 95 06 75 08 15 00 26 FF 00 05 07 19 00 29 FF 81
Raw Descriptor (hex) 0040: 00 05 0C 75 01 95 01 09 B8 15 00 25 01 81 02 05
Raw Descriptor (hex) 0050: FF 09 03 75 07 95 01 81 02 C0 05 0C 09 01 A1 01
Raw Descriptor (hex) 0060: 85 52 15 00 25 01 75 01 95 01 09 CD 81 02 09 B3
Raw Descriptor (hex) 0070: 81 02 09 B4 81 02 09 B5 81 02 09 B6 81 02 81 01
Raw Descriptor (hex) 0080: 81 01 81 01 85 09 15 00 25 01 75 08 95 01 06 01
Raw Descriptor (hex) 0090: FF 09 0B B1 02 75 08 95 02 B1 01 C0
Parsed Report Descriptor:
Usage Page (Generic Desktop)
Usage (Keyboard)
Collection (Application)
ReportID................ (1)
Usage Page (Keyboard/Keypad)
Usage Minimum........... (224)
Usage Maximum........... (231)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (1)
Report Count............ (8)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Report Count............ (1)
Report Size............. (8)
Input................... (Constant, Array, Absolute)
Report Count............ (5)
Report Size............. (1)
Usage Page (LED)
Usage Minimum........... (1)
Usage Maximum........... (5)
Output.................. (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Count............ (1)
Report Size............. (3)
Output.................. (Constant, Array, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Count............ (6)
Report Size............. (8)
Logical Minimum......... (0)
Logical Maximum......... (255)
Usage Page (Keyboard/Keypad)
Usage Minimum........... (0)
Usage Maximum........... (255)
Input................... (Data, Array, Absolute)
Usage Page (Consumer)
Report Size............. (1)
Report Count............ (1)
Usage 184 (0xb8)
Logical Minimum......... (0)
Logical Maximum......... (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage Page (255)
Usage 3 (0x3)
Report Size............. (7)
Report Count............ (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
End Collection
Usage Page (Consumer)
Usage 1 (0x1)
Collection (Application)
ReportID................ (82)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (1)
Report Count............ (1)
Usage 205 (0xcd)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 179 (0xb3)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 180 (0xb4)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 181 (0xb5)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Usage 182 (0xb6)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Input................... (Constant, Array, Absolute)
Input................... (Constant, Array, Absolute)
Input................... (Constant, Array, Absolute)
ReportID................ (9)
Logical Minimum......... (0)
Logical Maximum......... (1)
Report Size............. (8)
Report Count............ (1)
Usage Page (Vendor defined 1)
Usage 11 (0xb)
Feature................. (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
Report Size............. (8)
Report Count............ (2)
Feature................. (Constant, Array, Absolute, No Wrap, Linear, Preferred State, No Null Position, Nonvolatile, Bitfield)
End Collection
Endpoint 0x83 - Interrupt Input
Address: 0x83 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 10
Polling Interval: 8 ms
Interface #1 - HID .............................................. "Touchpad"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 0
Interface Protocol: 0
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 0
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 27
Raw Descriptor (hex) 0000: 06 00 FF 09 01 A1 03 06 00 FF 09 01 15 00 26 FF
Raw Descriptor (hex) 0010: 00 85 44 75 08 96 FF 01 81 00 C0
Parsed Report Descriptor:
Usage Page (Vendor defined 0)
Usage 1 (0x1)
Collection (Collection )
Usage Page (Vendor defined 0)
Usage 1 (0x1)
Logical Minimum......... (0)
Logical Maximum......... (255)
ReportID................ (68)
Report Size............. (8)
Report Count............ (511)
Input................... (Data, Array, Absolute)
End Collection
Endpoint 0x81 - Interrupt Input
Address: 0x81 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 64
Polling Interval: 2 ms
Interface #2 - HID/Boot Interface .............................................. "Touchpad"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 3 (HID)
Interface Subclass; 1 (Boot Interface)
Interface Protocol: 2
HID Descriptor
Descriptor Version Number: 0x0111
Country Code: 0
Descriptor Count: 1
Descriptor 1
Type: 0x22 (Report Descriptor)
Length (and contents): 52
Raw Descriptor (hex) 0000: 05 01 09 02 A1 01 09 01 A1 00 05 09 19 01 29 03
Raw Descriptor (hex) 0010: 15 00 25 01 85 02 95 03 75 01 81 02 95 01 75 05
Raw Descriptor (hex) 0020: 81 01 05 01 09 30 09 31 15 81 25 7F 75 08 95 02
Raw Descriptor (hex) 0030: 81 06 C0 C0
Parsed Report Descriptor:
Usage Page (Generic Desktop)
Usage (Mouse)
Collection (Application)
Usage (Pointer)
Collection (Physical)
Usage Page (Button)
Usage Minimum........... (1)
Usage Maximum........... (3)
Logical Minimum......... (0)
Logical Maximum......... (1)
ReportID................ (2)
Report Count............ (3)
Report Size............. (1)
Input................... (Data, Variable, Absolute, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
Report Count............ (1)
Report Size............. (5)
Input................... (Constant, Array, Absolute)
Usage Page (Generic Desktop)
Usage (X)
Usage (Y)
Logical Minimum......... (-127)
Logical Maximum......... (127)
Report Size............. (8)
Report Count............ (2)
Input................... (Data, Variable, Relative, No Wrap, Linear, Preferred State, No Null Position, Bitfield)
End Collection
End Collection
Endpoint 0x84 - Interrupt Input
Address: 0x84 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 8
Polling Interval: 8 ms
Full Speed device @ 7 (0x1D181300): ............................................. Bluetooth USB Host Controller (Device is suspended)
Port Information: 0x003d
Captive
Internal Device
Connected
Enabled
Suspended
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 8
High Speed device @ 6 (0x1D110000): ............................................. Composite device: "SAMSUNG_Android_SGH-T999"
Port Information: 0x1018
Not Captive
External Device
Connected
Enabled
Connected to External Port
Number Of Endpoints (includes EP0):
Total Endpoints for Configuration 1 (current): 6
Device Descriptor
Descriptor Version Number: 0x0200
Device Class: 0 (Composite)
Device Subclass: 0
Device Protocol: 0
Device MaxPacketSize: 64
Device VendorID/ProductID: 0x04E8/0x6864 (Samsung Electronics Co., Ltd.)
Device Version Number: 0x0228
Number of Configurations: 1
Manufacturer String: 2 "SAMSUNG"
Product String: 3 "SAMSUNG_Android_SGH-T999"
Serial Number String: 4 "b6027f1d"
Configuration Descriptor (current config)
Length (and contents): 98
Raw Descriptor (hex) 0000: 09 02 62 00 03 01 00 C0 30 08 0B 00 02 E0 01 03
Raw Descriptor (hex) 0010: 07 09 04 00 00 01 E0 01 03 05 05 24 00 10 01 05
Raw Descriptor (hex) 0020: 24 01 00 01 04 24 02 00 05 24 06 00 01 07 05 82
Raw Descriptor (hex) 0030: 03 08 00 09 09 04 01 00 02 0A 00 00 06 07 05 81
Raw Descriptor (hex) 0040: 02 00 02 00 07 05 01 02 00 02 00 09 04 02 00 02
Raw Descriptor (hex) 0050: FF 42 01 00 07 05 83 02 00 02 00 07 05 02 02 00
Raw Descriptor (hex) 0060: 02 00
Number of Interfaces: 3
Configuration Value: 1
Attributes: 0xC0 (self-powered)
MaxPower: 96 mA
Interface Association Wireless Controller/RF Controller
First Interface 0
Interface Count 2
Function Class 224 (Wireless Controller)
Function Subclass 1 (RF Controller)
Interface Protocol 3
Function String 7 "RNDIS"
Interface #0 - Wireless Controller/RF Controller .............................................. "RNDIS Communications Control"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 224 (Wireless Controller)
Interface Subclass; 1 (RF Controller)
Interface Protocol: 3 (Unknown)
Raw Descriptor (hex) 0000: 05 24 00 10 01
Raw Descriptor (hex) 0000: 05 24 01 00 01
Raw Descriptor (hex) 0000: 04 24 02 00
Raw Descriptor (hex) 0000: 05 24 06 00 01
Endpoint 0x82 - Interrupt Input
Address: 0x82 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 8 (8 x 1 transactions opportunities per microframe)
Polling Interval: 9 (256 microframes (32 msecs) )
Interface #1 - Communications-Data/Unknown Comm Class Model .............................................. "RNDIS Ethernet Data"
Alternate Setting 0
Number of Endpoints 2
Interface Class: 10 (Communications-Data)
Interface Subclass; 0 (Unknown Comm Class Model)
Interface Protocol: 0
Endpoint 0x81 - Bulk Input
Address: 0x81 (IN)
Attributes: 0x02 (Bulk)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Endpoint 0x01 - Bulk Output
Address: 0x01 (OUT)
Attributes: 0x02 (Bulk)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Interface #2 - Vendor-specific
Alternate Setting 0
Number of Endpoints 2
Interface Class: 255 (Vendor-specific)
Interface Subclass; 66 (Vendor-specific)
Interface Protocol: 1
Endpoint 0x83 - Bulk Input
Address: 0x83 (IN)
Attributes: 0x02 (Bulk)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Endpoint 0x02 - Bulk Output
Address: 0x02 (OUT)
Attributes: 0x02 (Bulk)
Max Packet Size: 512
Polling Interval: 0 ( Endpoint never NAKs)
Device Qualifier Descriptor
Descriptor Version Number: 0x0200
Device Class 0 (Composite)
Device Subclass 0
Device Protocol 0
Device MaxPacketSize: 64
Number of Configurations: 1
bReserved: 0
Other Speed Configuration Descriptor
Length (and contents): 98
Raw Descriptor (hex) 0000: 09 07 62 00 03 01 00 C0 30 08 0B 00 02 E0 01 03
Raw Descriptor (hex) 0010: 07 09 04 00 00 01 E0 01 03 05 05 24 00 10 01 05
Raw Descriptor (hex) 0020: 24 01 00 01 04 24 02 00 05 24 06 00 01 07 05 82
Raw Descriptor (hex) 0030: 03 08 00 20 09 04 01 00 02 0A 00 00 06 07 05 81
Raw Descriptor (hex) 0040: 02 40 00 00 07 05 01 02 40 00 00 09 04 02 00 02
Raw Descriptor (hex) 0050: FF 42 01 00 07 05 83 02 1C 00 00 07 05 02 02 40
Raw Descriptor (hex) 0060: 00 00
Number of Interfaces: 3
Configuration Value: 1
Attributes: 0xC0 (self-powered)
MaxPower: 96 mA
Interface Association Wireless Controller/RF Controller
First Interface 0
Interface Count 2
Function Class 224 (Wireless Controller)
Function Subclass 1 (RF Controller)
Interface Protocol 3
Function String 7 "RNDIS"
Interface #0 - Wireless Controller/RF Controller .............................................. "RNDIS Communications Control"
Alternate Setting 0
Number of Endpoints 1
Interface Class: 224 (Wireless Controller)
Interface Subclass; 1 (RF Controller)
Interface Protocol: 3 (Unknown)
Raw Descriptor (hex) 0000: 05 24 00 10 01
Raw Descriptor (hex) 0000: 05 24 01 00 01
Raw Descriptor (hex) 0000: 04 24 02 00
Raw Descriptor (hex) 0000: 05 24 06 00 01
Endpoint 0x82 - Interrupt Input
Address: 0x82 (IN)
Attributes: 0x03 (Interrupt)
Max Packet Size: 8
Polling Interval: 32 ms
Interface #1 - Communications-Data/Unknown Comm Class Model .............................................. "RNDIS Ethernet Data"
Alternate Setting 0
Number of Endpoints 2
Interface Class: 10 (Communications-Data)
Interface Subclass; 0 (Unknown Comm Class Model)
Interface Protocol: 0
Endpoint 0x81 - Bulk Input
Address: 0x81 (IN)
Attributes: 0x02 (Bulk)
Max Packet Size: 64
Polling Interval: 0 ms
Endpoint 0x01 - Bulk Output
Address: 0x01 (OUT)
Attributes: 0x02 (Bulk)
Max Packet Size: 64
Polling Interval: 0 ms
Interface #2 - Vendor-specific
Alternate Setting 0
Number of Endpoints 2
Interface Class: 255 (Vendor-specific)
Interface Subclass; 66 (Vendor-specific)
Interface Protocol: 1
Endpoint 0x83 - Bulk Input
Address: 0x83 (IN)
Attributes: 0x02 (Bulk)
Max Packet Size: 28
Polling Interval: 0 ms
Endpoint 0x02 - Bulk Output
Address: 0x02 (OUT)
Attributes: 0x02 (Bulk)
Max Packet Size: 64
Polling Interval: 0 ms
Tristan,
This looks like the same syndrome - the interface descriptor is okay, but the device is composite class. I'll have this fixed tonight. Thanks for the input.
joshua
Awesome! Thanks for your work on this
On Thu, Nov 15, 2012 at 11:50 AM, Joshua Wise notifications@github.comwrote:
Tristan,
This looks like the same syndrome - the interface descriptor is okay, but the device is composite class. I'll have this fixed tonight. Thanks for the input.
joshua
— Reply to this email directly or view it on GitHubhttps://github.com/jwise/HoRNDIS/issues/2#issuecomment-10420294.
Tristan and Rob, can you test with rel1?
It works for me - thanks Joshua!
I'm still unable to get it to work although I'm seeing progress because I'm seeing HoRNDIS logs now.
Let me know if you'd like for me to create a new issue.
Thanks
Nov 16 16:57:51 Robs-MacBook-Pro kernel[0]: HoRNDIS: init: HoRNDIS tethering driver for Snow Leopard+, by Joshua Wise Nov 16 16:57:51 Robs-MacBook-Pro kernel[0]: HoRNDIS: rndisInit: their MTU 1486 Nov 16 16:57:51 Robs-MacBook-Pro kernel[0]: HoRNDIS: init: starting up with MTU 1486 Nov 16 16:57:51 Robs-MacBook-Pro kernel[0]: HoRNDISUSBInterface: Ethernet address e2:e9:d8:ab:92:29 Nov 16 16:57:51 Robs-MacBook-Pro kernel[0]: HoRNDIS: rndisCommand: unsupported: RNDIS_MSG_INDICATE Nov 16 16:57:52: --- last message repeated 1 time --- Nov 16 16:57:52 Robs-MacBook-Pro kernel[0]: 0 1 AppleUSBCDCACMData: start - Find CDC driver for ACM data interface failed Nov 16 16:57:52 Robs-MacBook-Pro kernel[0]: 0 1 AppleUSBCDCECMData: start - Find CDC driver for ECM data interface failed Nov 16 16:58:50 Robs-MacBook-Pro kernel[0]: HoRNDIS: outputPacket: waiting for buffer... Nov 16 16:58:50: --- last message repeated 9 times --- Nov 16 16:58:50 Robs-MacBook-Pro kernel[0]: HoRNDIS: outputPacket: timed out waiting for buffer
Okay, that's new and exciting ... sigh. Yeah, let's create a new issue for this one. I wonder why it's sending an INDICATE, when no other devices do that.
Devices like Droid RAZR, which have a device class of 0/0/0 (rather than 224/0/0), will not work, since currently we match on a device class of 224/0/0. We should match on an interface class to make sure we get what we want; if we do that, then we can match on the more specific interface class, as well, to avoid picking up CDC devices.
Original:
Subj: Tethering error with Mac 10.7.5 and Android 4.0.4
Steps:
Via kextstat I saw it wasn't loaded so I manually loaded it:
Tried to tether again and noticed these errors in kernel.log: