Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Logitech G Pro X 2 #314

Closed
darkymtp opened this issue Dec 20, 2023 · 6 comments
Closed

Support for Logitech G Pro X 2 #314

darkymtp opened this issue Dec 20, 2023 · 6 comments

Comments

@darkymtp
Copy link
Contributor

Description

Hello.
I can set sidetone, noise reduction and timeout via these command lines :
Side tone :

headsetcontrol --dev -- --device 0x046d:0x0af7 --usage 0xffa0,0x1 --send "0x51, 0x0a, 0x00, 0x03, 0x1b, 0x00, 0x05, 0x00, 0x07, 0x1b, 0x01, $1"

Mic noise reduction :

headsetcontrol --dev -- --device 0x046d:0x0af7 --usage 0xffa0,0x1 --send "0x51, 0x09, 0x00, 0x03, 0x1c, 0x00, 0x04, 0x00, 0x08, 0x1c, $1"

Time out :

headsetcontrol --dev -- --device 0x046d:0x0af7 --usage 0xffa0,0x1 --send "0x51, 0x09, 0x00, 0x03, 0x1c, 0x00, 0x04, 0x00, 0x06, 0x1d, $1"

I forked the project and wrote files to support side tone settings only, unsuccessfully.
https://github.com/darkymtp/HeadsetControl/

Help ! :-)

Headset Name

Logitech G Pro X 2

Device information

Detailed Device Information
Device Found
 VendorID: 0x046d
ProductID: 0x0af7
 path: /dev/hidraw4
 serial_number: 0000000000000000
 Manufacturer: Logitech
 Product:      PRO X 2 LIGHTSPEED
 Interface:    3
 Usage-Page: 0xc Usageid: 0x1

Device Found
 VendorID: 0x046d
ProductID: 0x0af7
 path: /dev/hidraw4
 serial_number: 0000000000000000
 Manufacturer: Logitech
 Product:      PRO X 2 LIGHTSPEED
 Interface:    3
 Usage-Page: 0xff13 Usageid: 0x1

Device Found
 VendorID: 0x046d
ProductID: 0x0af7
 path: /dev/hidraw4
 serial_number: 0000000000000000
 Manufacturer: Logitech
 Product:      PRO X 2 LIGHTSPEED
 Interface:    3
 Usage-Page: 0xffa0 Usageid: 0x1
Copy link

Hello 👋

Thank you for reaching out and expressing interest in having support for a new headset.
We appreciate your willingness to contribute to the project!

In order to create a implementation for a specific headset, we need to be able to reverse-engineer and test the implementation on that particular device.
Explicitly speaking, only people who actually own the headset, can implement that request.

👉 If you're interested in adding support for a specific headset, we recommend taking a look at our wiki to get started.

📝 If you encounter any problems while using WireShark, we would be more than happy to help. Simply post screenshots and data on your progress.

@Sapd
Copy link
Owner

Sapd commented Dec 20, 2023

Hello,

Hello. I can set sidetone, noise reduction and timeout via these command lines : Side tone :

headsetcontrol --dev -- --device 0x046d:0x0af7 --usage 0xffa0,0x1 --send "0x51, 0x0a, 0x00, 0x03, 0x1b, 0x00, 0x05, 0x00, 0x07, 0x1b, 0x01, $1"

https://github.com/darkymtp/HeadsetControl/blob/1e0255409ee73cccce32bb75a358cd9e7891f4b1/src/devices/logitech_gpro_x2.c#L40

If that works, your command here must be different. HIDPP_LONG_MESSAGE is just a value for 0x11, which is not strictly applicable to all (logitech) headsets.

So the code must simply look like this:

 uint8_t sidetone_data[12] = { 0x51, 0x0a, 0x00, 0x03, 0x1b, 0x00, 0x05, 0x00, 0x07, 0x1b, 0x01, num};

also dont forget to set usage and usagepage in gpro_x2_init

@darkymtp
Copy link
Contributor Author

It works, thanks !

@Sapd
Copy link
Owner

Sapd commented Dec 21, 2023

Good to hear, dont forget to PR it! (Just click on Pull Requests, and create a new one from the branch where you pushed the changes)

@darkymtp
Copy link
Contributor Author

I would like to add battery status before PR.

@darkymtp
Copy link
Contributor Author

I have no clue on how to add battery status reporting, so here is my contribution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants