Wednesday, November 5, 2025

HE - Hardware read & write utility v1.25.11.05

 

1. Update USB function (Parse Audio Control & Audio Streaming Interface descriptor).
2. Built-in Thrid-Party VPN tool FastOrange for the Full version.
3. Improve PCI function. 


For example:
======================================================
USB Connector Properties: 0x00000001
 Is Port User Connectable: Yes
 Is Port Debug Capable: No
 Is Port Multiple Companions: No
 Is Port Type-C Connector: No
Companion Hub Name: USB#VID_05E3&PID_0626#6&15ba20bd&0&1#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Companion Port Number: 2
======================================================
USB Protocols Support: 0x00000003
 Low Speed: Yes
 High Speed: Yes
 Super Speed: No
 
Parent Hub Name: USB#VID_05E3&PID_0610#6&73d8705&0&1#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
Parent Port Number: 2
DriverKeyName: {36fc9e60-c465-11cf-8056-444553540000}\0002
======================================================
Connection Information
Offset[0x00] 02 00 00 00 12 01 00 02 00 00 00 40 CB 0E FD 20 . . . . . . . . . . . @ . . .   
Offset[0x10] 00 01 01 02 03 01 01 01 00 3B 00 01 00 00 00 01 . . . . . . . . . ; . . . . . . 
Offset[0x20] 00 00 00 07 05 84 03 40 00 04 00 00 00 00       . . . . . . . @ . . . . . .   
 ConnectionIndex: 0x00000002(Port Number)
 ConnectionStatus : 0x00000001(DeviceConnected)
 Configuration Value : 0x01
 Device Bus Speed : 0x01    - Full Speed
 DeviceIsHub: 0x01    - No
 Device Address : 0x003B
 Open Pipes : 0x00000001
 
Open Piples Descriptor
Offset[0x00] 07 05 84 03 40 00 04 00 00 00 00                . . . . @ . . . . . .      
 Pipe[1]: 07 05 84 03 40 00 04 00 00 00 00 
  bLength : 0x07
  bDescriptorType : 0x05    - Endpoint Descriptor
  bEndpointAddress : 0x84    - Direction:IN - EndpointID:4
  Transfer Type : 0x03    - Interrupt Transfer Type
  wMaxPacketSize : 0x0040
  bInterval : 0x04    - 4 milliseconds
 
Device Descriptor
Offset[0x00] 12 01 00 02 00 00 00 40 CB 0E FD 20 00 01 01 02 . . . . . . . @ . . .   . . . . 
Offset[0x10] 03 01                                           . .               
 bLength : 0x12
 bDescriptorType : 0x01
 bcdUSB : 0x0200  - Spec# = 02.00
 bDeviceClass : 0x00    - Defined at Interface level
 bDeviceSubClass : 0x00
 bDeviceProtocol : 0x00
 bMaxEP0Size : 0x40    - 64 bytes
 idVendor : 0x0ECB  - "Harman Kardon"
 idProduct : 0x20FD
 bcdDevice : 0x0100  - Device# = 01.00
 iManufacturer : 0x01    - "Harman International Inc"
 iProduct : 0x02    - "JBL Tour Pro 3"
 iSerialNumber : 0x03    - "0000000000000000"
 bNumConfigurations : 0x01
------------------------------------------
Configuration Header
Offset[0x00] 09 02 0E 01 04 01 00 80 32                      . . . . . . . . 2        
 bLength : 0x09
 bDescriptorType : 0x02    - Configuration Header
 wTotalLength : 0x010E
 bNumInterfaces : 0x04
 bConfigValue : 0x01
 iConfiguration : 0x00
 bmAttributes : 0x80
  BIT[7]: 1       - Bus Powered(Yes)
  BIT[6]: 0       - Self Powered(No)
  BIT[5]: 0       - Remote Wakeup(No)
 bMaxPower : 0x32    - 100mA
                           
Interface Descriptor
Offset[0x00] 09 04 00 00 00 01 01 00 04                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x00
 bAlternateSetting : 0x00
 bNumEndpoints : 0x00
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x01    - Control Device
 bProtocol : 0x00
 iInterface : 0x04    - "JBL Tour Pro 3"
                           
Audio Control Interface Header Descriptor
Offset[0x00] 0A 24 01 00 01 47 00 02 01 02                   . $ . . . G . . . .       
 bLength : 0x0A
 bDescriptorType : 0x24
 bDescriptorSubType : 0x01    - Audio Control Interface Header Descriptor
 bcdADC : 0x0100
 wTotalLength : 0x0047
 bInCollection : 0x02
   baInterfaceNr[1] : 0x01
   baInterfaceNr[2] : 0x02
                           
Audio Control Input Terminal Descriptor
Offset[0x00] 0C 24 02 01 01 01 00 02 03 00 00 00             . $ . . . . . . . . . .     
 bLength : 0x0C
 bDescriptorType : 0x24
 bDescriptorSubType : 0x02    - Audio Control Input Terminal Descriptor
 bTerminalID : 0x101
 wTerminalType : 0x0101  - USB streaming
 bAssocTerminal : 0x00
 bNrChannels : 0x02
 wChannelConfig : 0x0003
  BIT[00] : 1    yes   - Left Front (L)
  BIT[01] : 1    yes   - Right Ront (R)
  BIT[02] : 0    no    - Center Front (C)
  BIT[03] : 0    no    - Low Frequency Enhancement (LFE)
  BIT[04] : 0    no    - Left Surround (Ls)
  BIT[05] : 0    no    - Right Surround (Rs)
  BIT[06] : 0    no    - Left of Center (Lc)
  BIT[07] : 0    no    - Right of Center (Rc)
  BIT[08] : 0    no    - Surround (S)
  BIT[09] : 0    no    - Side Left (Sl)
  BIT[10] : 0    no    - Side Right (Sr)
  BIT[11] : 0    no    - Top (T)
 iChannelNames : 0x00
 iTerminal : 0x00
                           
Audio Control Output Terminal Descriptor
Offset[0x00] 0A 24 06 02 01 01 01 02 02 00                   . $ . . . . . . . .       
 bLength : 0x0A
 bDescriptorType : 0x24
 bDescriptorSubType : 0x06    - Audio Control Output Terminal Descriptor
 bUnitID : 0x02
 bSourceID : 0x01
 bControlSize : 0x01
 bmaControls[master] : 0x01
  BIT[00] : 1    yes   - Mute
  BIT[01] : 0    no    - Volume
  BIT[02] : 0    no    - Bass
  BIT[03] : 0    no    - Mid
  BIT[04] : 0    no    - Treble
  BIT[05] : 0    no    - Graphic equalizer
  BIT[06] : 0    no    - Automatic gain
  BIT[07] : 0    no    - Delay
 bmaControls[channel 1] : 0x02
  BIT[00] : 0    no    - Mute
  BIT[01] : 1    yes   - Volume
  BIT[02] : 0    no    - Bass
  BIT[03] : 0    no    - Mid
  BIT[04] : 0    no    - Treble
  BIT[05] : 0    no    - Graphic equalizer
  BIT[06] : 0    no    - Automatic gain
  BIT[07] : 0    no    - Delay
 bmaControls[channel 2] : 0x02
  BIT[00] : 0    no    - Mute
  BIT[01] : 1    yes   - Volume
  BIT[02] : 0    no    - Bass
  BIT[03] : 0    no    - Mid
  BIT[04] : 0    no    - Treble
  BIT[05] : 0    no    - Graphic equalizer
  BIT[06] : 0    no    - Automatic gain
  BIT[07] : 0    no    - Delay
 iFeature : 0x00
                           
Audio Control Output Terminal Descriptor
Offset[0x00] 09 24 03 03 01 03 00 02 00                      . $ . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x24
 bDescriptorSubType : 0x03    - Audio Control Output Terminal Descriptor
 bTerminalID : 0x03
 wTerminalType : 0x0301  - Speaker
 bAssocTerminal : 0x00
 bSourceID : 0x02
 iTerminal : 0x00
                           
Audio Control Input Terminal Descriptor
Offset[0x00] 0C 24 02 05 01 02 0B 01 00 00 00 00             . $ . . . . . . . . . .     
 bLength : 0x0C
 bDescriptorType : 0x24
 bDescriptorSubType : 0x02    - Audio Control Input Terminal Descriptor
 bTerminalID : 0x105
 wTerminalType : 0x0201  - Microphone
 bAssocTerminal : 0x0B
 bNrChannels : 0x01
 wChannelConfig : 0x0000
  BIT[00] : 0    no    - Left Front (L)
  BIT[01] : 0    no    - Right Ront (R)
  BIT[02] : 0    no    - Center Front (C)
  BIT[03] : 0    no    - Low Frequency Enhancement (LFE)
  BIT[04] : 0    no    - Left Surround (Ls)
  BIT[05] : 0    no    - Right Surround (Rs)
  BIT[06] : 0    no    - Left of Center (Lc)
  BIT[07] : 0    no    - Right of Center (Rc)
  BIT[08] : 0    no    - Surround (S)
  BIT[09] : 0    no    - Side Left (Sl)
  BIT[10] : 0    no    - Side Right (Sr)
  BIT[11] : 0    no    - Top (T)
 iChannelNames : 0x00
 iTerminal : 0x00
                           
Audio Control Output Terminal Descriptor
Offset[0x00] 09 24 06 06 05 01 03 00 00                      . $ . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x24
 bDescriptorSubType : 0x06    - Audio Control Output Terminal Descriptor
 bUnitID : 0x06
 bSourceID : 0x05
 bControlSize : 0x01
 bmaControls[master] : 0x03
  BIT[00] : 1    yes   - Mute
  BIT[01] : 1    yes   - Volume
  BIT[02] : 0    no    - Bass
  BIT[03] : 0    no    - Mid
  BIT[04] : 0    no    - Treble
  BIT[05] : 0    no    - Graphic equalizer
  BIT[06] : 0    no    - Automatic gain
  BIT[07] : 0    no    - Delay
 bmaControls[channel 1] : 0x00
  BIT[00] : 0    no    - Mute
  BIT[01] : 0    no    - Volume
  BIT[02] : 0    no    - Bass
  BIT[03] : 0    no    - Mid
  BIT[04] : 0    no    - Treble
  BIT[05] : 0    no    - Graphic equalizer
  BIT[06] : 0    no    - Automatic gain
  BIT[07] : 0    no    - Delay
 iFeature : 0x00
                           
Audio Control Output Terminal Descriptor
Offset[0x00] 09 24 03 07 01 01 00 06 00                      . $ . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x24
 bDescriptorSubType : 0x03    - Audio Control Output Terminal Descriptor
 bTerminalID : 0x07
 wTerminalType : 0x0101  - USB streaming
 bAssocTerminal : 0x00
 bSourceID : 0x06
 iTerminal : 0x00
                           
Interface Descriptor
Offset[0x00] 09 04 01 00 00 01 02 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x01
 bAlternateSetting : 0x00
 bNumEndpoints : 0x00
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x02    - Streaming
 bProtocol : 0x00
 iInterface : 0x00
                           
Interface Descriptor
Offset[0x00] 09 04 01 01 01 01 02 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x01
 bAlternateSetting : 0x01
 bNumEndpoints : 0x01
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x02    - Streaming
 bProtocol : 0x00
 iInterface : 0x00
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 07 24 01 01 01 01 00                            . $ . . . . .          
 bLength : 0x07
 bDescriptorType : 0x24
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Interface Descriptor
 bTerminalLink : 0x01
 bDelay : 0x01
 wFormatTag : 0x0001  - PCM
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 0E 24 02 01 02 02 10 02 80 BB 00 00 77 01       . $ . . . . . . . . . . w .   
 bLength : 0x0E
 bDescriptorType : 0x24
 bDescriptorSubType : 0x02    - Audio Streaming Format Type Descriptor
 bFormatType : 0x01    - FORMAT_TYPE_I
 bFormatType : 0x01
 bNrChannels : 0x02
 bSubframeSize : 0x02
 bBitResolution : 0x10     - 16
 bSamFreqType : 0x02     - Discrete
 tSamFreq[0] : 0x00BB80 - 48000 Hz
 tSamFreq[1] : 0x017700 - 96000 Hz
                           
Endpoint Descriptor
Offset[0x00] 09 05 01 09 80 01 01 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x05    - Endpoint Descriptor
 bEndpointAddress : 0x01    - Direction:OUT - EndpointID:1
 Transfer Type : 0x09    - Isochronous Transfer Type, Synchronization Type = Adaptive, Usage Type = Data Endpoint
 wMaxPacketSize : 0x0180
 wInterval : 0x0001  - 1 milliseconds
 bSyncAddress : 0x00
                           
Audio Streaming Class Specific Audio Data Endpoint Descriptor
Offset[0x00] 07 25 01 01 00 00 00                            . % . . . . .          
 bLength : 0x07
 bDescriptorType : 0x25
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Audio Data Endpoint Descriptor
 bmAttributes : 0x01
 bmAttributes : 0x01
  BIT[0] : 1    yes   - Sampling Frequency control
  BIT[1] : 0    no    - Pitch control
  BIT[7] : 0    no    - MaxPacketsOnly
 bLockDelayUnits : 0x00    - Undefined
 wLockDelay : 0x0000
                           
Interface Descriptor
Offset[0x00] 09 04 01 02 01 01 02 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x01
 bAlternateSetting : 0x02
 bNumEndpoints : 0x01
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x02    - Streaming
 bProtocol : 0x00
 iInterface : 0x00
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 07 24 01 01 01 01 00                            . $ . . . . .          
 bLength : 0x07
 bDescriptorType : 0x24
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Interface Descriptor
 bTerminalLink : 0x01
 bDelay : 0x01
 wFormatTag : 0x0001  - PCM
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 0E 24 02 01 02 03 18 02 80 BB 00 00 77 01       . $ . . . . . . . . . . w .   
 bLength : 0x0E
 bDescriptorType : 0x24
 bDescriptorSubType : 0x02    - Audio Streaming Format Type Descriptor
 bFormatType : 0x01    - FORMAT_TYPE_I
 bFormatType : 0x01
 bNrChannels : 0x02
 bSubframeSize : 0x03
 bBitResolution : 0x18     - 24
 bSamFreqType : 0x02     - Discrete
 tSamFreq[0] : 0x00BB80 - 48000 Hz
 tSamFreq[1] : 0x017700 - 96000 Hz
                           
Endpoint Descriptor
Offset[0x00] 09 05 01 09 40 02 01 00 00                      . . . . @ . . . .        
 bLength : 0x09
 bDescriptorType : 0x05    - Endpoint Descriptor
 bEndpointAddress : 0x01    - Direction:OUT - EndpointID:1
 Transfer Type : 0x09    - Isochronous Transfer Type, Synchronization Type = Adaptive, Usage Type = Data Endpoint
 wMaxPacketSize : 0x0240
 wInterval : 0x0001  - 1 milliseconds
 bSyncAddress : 0x00
                           
Audio Streaming Class Specific Audio Data Endpoint Descriptor
Offset[0x00] 07 25 01 01 00 00 00                            . % . . . . .          
 bLength : 0x07
 bDescriptorType : 0x25
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Audio Data Endpoint Descriptor
 bmAttributes : 0x01
 bmAttributes : 0x01
  BIT[0] : 1    yes   - Sampling Frequency control
  BIT[1] : 0    no    - Pitch control
  BIT[7] : 0    no    - MaxPacketsOnly
 bLockDelayUnits : 0x00    - Undefined
 wLockDelay : 0x0000
                           
Interface Descriptor
Offset[0x00] 09 04 02 00 00 01 02 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x02
 bAlternateSetting : 0x00
 bNumEndpoints : 0x00
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x02    - Streaming
 bProtocol : 0x00
 iInterface : 0x00
                           
Interface Descriptor
Offset[0x00] 09 04 02 01 01 01 02 00 00                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x02
 bAlternateSetting : 0x01
 bNumEndpoints : 0x01
 bInterfaceClass : 0x01    - Audio
 bSubClass : 0x02    - Streaming
 bProtocol : 0x00
 iInterface : 0x00
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 07 24 01 07 01 01 00                            . $ . . . . .          
 bLength : 0x07
 bDescriptorType : 0x24
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Interface Descriptor
 bTerminalLink : 0x07
 bDelay : 0x01
 wFormatTag : 0x0001  - PCM
                           
Audio Streaming Class Specific Interface Descriptor
Offset[0x00] 0E 24 02 01 01 02 10 02 80 3E 00 80 BB 00       . $ . . . . . . . > . . . .   
 bLength : 0x0E
 bDescriptorType : 0x24
 bDescriptorSubType : 0x02    - Audio Streaming Format Type Descriptor
 bFormatType : 0x01    - FORMAT_TYPE_I
 bFormatType : 0x01
 bNrChannels : 0x01
 bSubframeSize : 0x02
 bBitResolution : 0x10     - 16
 bSamFreqType : 0x02     - Discrete
 tSamFreq[0] : 0x003E80 - 16000 Hz
 tSamFreq[1] : 0x00BB80 - 48000 Hz
                           
Endpoint Descriptor
Offset[0x00] 09 05 81 09 60 00 01 00 00                      . . . . ` . . . .        
 bLength : 0x09
 bDescriptorType : 0x05    - Endpoint Descriptor
 bEndpointAddress : 0x81    - Direction:IN - EndpointID:1
 Transfer Type : 0x09    - Isochronous Transfer Type, Synchronization Type = Adaptive, Usage Type = Data Endpoint
 wMaxPacketSize : 0x0060
 wInterval : 0x0001  - 1 milliseconds
 bSyncAddress : 0x00
                           
Audio Streaming Class Specific Audio Data Endpoint Descriptor
Offset[0x00] 07 25 01 01 00 00 00                            . % . . . . .          
 bLength : 0x07
 bDescriptorType : 0x25
 bDescriptorSubType : 0x01    - Audio Streaming Class Specific Audio Data Endpoint Descriptor
 bmAttributes : 0x01
 bmAttributes : 0x01
  BIT[0] : 1    yes   - Sampling Frequency control
  BIT[1] : 0    no    - Pitch control
  BIT[7] : 0    no    - MaxPacketsOnly
 bLockDelayUnits : 0x00    - Undefined
 wLockDelay : 0x0000
                           
Interface Descriptor
Offset[0x00] 09 04 03 00 01 03 00 00 06                      . . . . . . . . .        
 bLength : 0x09
 bDescriptorType : 0x04    - Interface Descriptor
 bInterfaceNum : 0x03
 bAlternateSetting : 0x00
 bNumEndpoints : 0x01
 bInterfaceClass : 0x03    - Human Interface Devices
 bSubClass : 0x00
 bProtocol : 0x00
 iInterface : 0x06    - "JBL Tour Pro 3"
                           
HID Descriptor
Offset[0x00] 09 21 10 01 00 01 22 B6 00                      . ! . . . . " . .        
 bLength : 0x09
 bDescriptorType : 0x21    - HID Descriptor
 wHIDversion : 0x0110  - Spec# = 01.10
 bCountryCode : 0x00    - Not Supported
 bHIDDescriptorCount : 0x01
 Descriptor 0:
   bHIDReportType : 0x22    - Report Descriptor
   wHIDReportLength : 0x00B6
                           
Endpoint Descriptor
Offset[0x00] 07 05 84 03 40 00 04                            . . . . @ . .          
 bLength : 0x07
 bDescriptorType : 0x05    - Endpoint Descriptor
 bEndpointAddress : 0x84    - Direction:IN - EndpointID:4
 Transfer Type : 0x03    - Interrupt Transfer Type
 wMaxPacketSize : 0x0040
 bInterval : 0x04    - 4 milliseconds
                           
------------------------------------------
Device Qualifier Descriptor
Offset[0x00] 0A 06 00 02 00 00 00 40 01 00                   . . . . . . . @ . .       
 bLength : 0x0A
 bDescriptorType : 0x06    - Device Qualifier Descriptor
 bcdUSB : 0x0200  - Spec# = 02.00
 bDeviceClass : 0x00
 bDeviceSubClass : 0x00
 bDeviceProtocol : 0x00
 bMaxPacketSize0 : 0x40
 bNumConfigurations : 0x01
 bReserved : 0x00
                           
------------------------------------------
String LanguageID = 0x0409 (English (United States))

No comments:

Post a Comment

HE - Hardware read & write utility v1.25.11.05

  1. Update USB function (Parse Audio Control & Audio Streaming Interface descriptor). 2. Built-in Thrid-Party VPN tool FastOrange for t...