From fc3c82c8fc4f3ba31b25345ce362d1155a54a027 Mon Sep 17 00:00:00 2001 From: Marcel Romagnuolo Date: Sun, 30 Jun 2024 17:56:43 +0200 Subject: [PATCH] adjust config --- src/gcc_hid.rs | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/gcc_hid.rs b/src/gcc_hid.rs index 3e9e18a..881444a 100644 --- a/src/gcc_hid.rs +++ b/src/gcc_hid.rs @@ -300,7 +300,22 @@ pub async fn usb_transfer_task(raw_serial: [u8; 8], driver: Driver<'static, USB> info!("Detected flash with unique serial number {}", serial); trace!("Start of config"); - let mut usb_config = embassy_usb::Config::new(0x057e, 0x0337); + let mut usb_config: embassy_usb::Config; + if input_consistency_mode == InputConsistencyMode::XInput { + // TODO: might need to change more configs + usb_config = embassy_usb::Config::new(0x045e, 0x028e); + // necessary? + usb_config.device_class = 255; + usb_config.device_protocol = 255; + usb_config.device_sub_class = 255; + } else { + usb_config = embassy_usb::Config::new(0x057e, 0x0337); + // necessary? + usb_config.device_class = 0; + usb_config.device_protocol = 0; + usb_config.device_sub_class = 0; + }; + usb_config.manufacturer = Some("Naxdy"); usb_config.product = Some(match input_consistency_mode { InputConsistencyMode::Original => "NaxGCC (OG Mode)", @@ -312,10 +327,8 @@ pub async fn usb_transfer_task(raw_serial: [u8; 8], driver: Driver<'static, USB> usb_config.serial_number = Some(serial); usb_config.max_power = 200; usb_config.max_packet_size_0 = 64; - usb_config.device_class = 0; - usb_config.device_protocol = 0; usb_config.self_powered = false; - usb_config.device_sub_class = 0; + usb_config.supports_remote_wakeup = true; let mut device_descriptor = [0; 256];