Files
phaten-audio/en/docs/dev_doc/EQ_Protocols/EQ_HID_Protocol.md
PhatenIoT-yan 78b9a5eae4 update
update
2025-12-31 18:12:27 +08:00

7.4 KiB

title, description, keywords
title description keywords
Zero-Code Firmware Series EQ HID Control Protocol and Command Set EQ HID control protocol for zero-code firmware series devices, including message structure, command set, and field descriptions for mode switching, parameter read/write, and device information retrieval. EQ, HID, Control Protocol, Command Set, USB HID, XU316, Zero-Code Firmware, Phaten Audio

--8<-- "common/phaten_xmos_support_img.md"

Zero-Code Firmware Series EQ HID Control Protocol and Command Set

1. Protocol Foundation Specifications

1.1 Underlying Communication Protocol

Based on USB HID (Human Interface Device) protocol.

Parameter Value
Report ID 0x01
Packet Size 64 bytes
Transfer Direction Bidirectional (Host <-> Device)

1.2 Message Format and Data Transmission

Common Message Format All commands and responses follow the Report structure below:

Field Bytes Description
Report ID 1 Fixed as 0x01
Sync Header 1 Fixed as 0x77 (command start identifier)
Command Code 1 Indicates specific operation (e.g., 0x8A)
Data Area 61 Specific data content (unused bytes typically filled with 0)

Data Transmission Notes

  • Byte Order: All multi-byte data is transmitted in Little Endian mode.
  • Floating Point: Follows IEEE 754 float format.

2. Protocol Command Set

2.1 Command Classification Overview

Command Code Command Description Direction Function
0x8A SET_EQ_MODE Host→Device Switch current EQ mode
0x8B GET_EQ_MODE Host→Device Get current EQ mode information (mode number, gain, name)
0x8C SET_MODE_GAIN_AND_NAME Host→Device Set overall gain and name for specified mode
0x8D SET_EQ_PARAMS Host→Device Send single filter parameters
0x8E GET_EQ_PARAMS Host→Device Read single filter parameters
0x8F GET_DEVICE_INFO Host→Device Get device basic information (PID, VID, SN, etc.)
0x90 RESET_EQ_PARAMS Host→Device Reset EQ parameters (restore presets)

3. Basic Function Command Details

3.1 Switch EQ Mode (0x8A)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8A Command code
3 1 Mode Mode value
0-5: Preset modes
6-8: User modes
9: Bypass
4-63 60 Reserved Reserved bytes (0x00)

3.2 Get Current EQ Mode Information (0x8B)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8B Command code
3-63 61 Reserved Reserved bytes (0x00)

Device Returns (Response)

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header 1
2 1 0x8B Sync header 2 (echo command code)
3 1 Mode Current mode value
4-7 4 Gain Overall gain (int32, little endian, range 0~-50dB)
8-23 16 Name Mode name (UTF-8 string)
24-63 40 Reserved Reserved bytes

3.3 Set Mode Overall Gain and Name (0x8C)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8C Command code
3 1 Mode Target mode value (0-9)
4-7 4 Gain Overall gain (int32, little endian)
8-23 16 Name Mode name (UTF-8 string)
24-63 40 Reserved Reserved bytes

3.4 Send EQ Parameters (0x8D)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8D Command code
3 1 Mode Mode value (0-9)
4 1 Band Filter index (0-7)
5 1 Type Filter type (see table below)
6-9 4 Freq Center frequency Hz (float, little endian)
10-13 4 Q Q value (float, little endian)
14-17 4 BW Bandwidth Hz (float, little endian)
18-21 4 Gain Gain dB (float, little endian)
22-63 42 Reserved Reserved bytes

Filter Type Codes

Code Type Code Type
0x00 Bypass 0x06 Band Reject
0x01 All Pass 0x07 Notch
0x02 Peak 0x08 Constant Q
0x03 Low Pass 0x09 Low Shelf
0x04 High Pass 0x0A High Shelf
0x05 Band Pass

3.5 Read EQ Parameters (0x8E)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8E Command code
3 1 Mode Mode value (0-9)
4 1 Band Filter index (0-7)
5-63 59 Reserved Reserved bytes

Device Returns (Response)

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header 1
2 1 0x8E Sync header 2 (echo command code)
3 1 Mode Mode value
4 1 Band Filter index
5 1 Type Filter type
6-9 4 Freq Center frequency (float, little endian)
10-13 4 Q Q value (float, little endian)
14-17 4 BW Bandwidth (float, little endian)
18-21 4 Gain Gain (float, little endian)
22-63 41 Reserved Reserved bytes

3.6 Get Device Information (0x8F)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x8F Command code
3-63 61 Reserved Reserved bytes

Device Returns (Response)

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header 1
2 1 0x8F Sync header 2 (echo command code)
3-4 2 PID Product ID (uint16, little endian)
5-6 2 VID Vendor ID (uint16, little endian)
7-22 16 Product Product string (UTF-8)
23-38 16 Vendor Vendor string (UTF-8)
39-54 16 SN Serial number string (UTF-8)
55-63 9 Reserved Reserved bytes

3.7 Reset EQ Parameters (0x90)

Host Sends

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header
2 1 0x90 Command code
3 1 Mode Mode number (0-9)
0xFF indicates reset all modes
4-63 60 Reserved Reserved bytes

Device Returns (Response)

Byte Position Length Content Description
0 1 0x01 Report ID
1 1 0x77 Sync header 1
2 1 0x90 Sync header 2 (echo command code)
3 1 Status Status code (0x00=success, 0x01=failure)
4-63 60 Reserved Reserved bytes

Inquiries and Feedback

Click to expand inquiry and feedback form

--8<-- "common/customer_form.md"