Implement set_voice_prompt_packet for Cloud III S Wireless

This commit is contained in:
Cédric de Launois
2026-04-30 12:05:56 +02:00
parent 91975eaf49
commit dcd956e5cc

View File

@@ -55,6 +55,7 @@ const GET_SIDE_TONE_COMMAND_ID: u8 = 0x16;
const SET_SIDE_TONE_COMMAND_ID: u8 = 0x0D;
const GET_AUTO_POWER_OFF_COMMAND_ID: u8 = 0x4B;
const GET_VOICE_PROMPT_COMMAND_ID: u8 = 0x14;
const SET_VOICE_PROMPT_COMMAND_ID: u8 = 0x0B;
// Button report header (incoming from headset)
const CONSUMER_CONTROL_HEADER: u8 = 0x0f;
@@ -235,8 +236,13 @@ impl Device for CloudIIISWireless {
Some(packet)
}
fn set_voice_prompt_packet(&self, _enable: bool) -> Option<Vec<u8>> {
None
fn set_voice_prompt_packet(&self, enable: bool) -> Option<Vec<u8>> {
// Confirmed via NGenuity USB capture: `0c 02 03 00 00 0b <0|1>`.
let mut packet = BASE_PACKET.to_vec();
packet[3] = 0x00;
packet[5] = SET_VOICE_PROMPT_COMMAND_ID;
packet[6] = enable as u8;
Some(packet)
}
fn get_wireless_connected_status_packet(&self) -> Option<Vec<u8>> {