Open ctag opened 2 weeks ago
I know nothing about rust, but managed to get a text editor to recognize it, and learned that cargo can build locally.
The list function will return early if a device is incompatible. I removed the conflicting device ID, since my earbuds have the same one.
// Use UsbId instead of DeviceIds since some incompatible devices don't have a concept of DFU mode.
const INCOMPATIBLE_DEVICES: &[UsbId] = &[
// Bose Noise Cancelling Headphones 700
bose_pid(0x40ff),
// bose_pid(0x40fc),
];
Output. I guess since these are out of warranty I don't care about hiding the serial number.
[berocs@bns-kharselim bose-dfu]$ cargo build
Compiling bose-dfu v1.1.0 (/home/berocs/git/bose-dfu)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.22s
[berocs@bns-kharselim bose-dfu]$ ./target/debug/bose-dfu list
Device! 0x5A7, 0x40FC
05a7:40fc 081300m0253a713ae Bose Sport Earbuds [UNTESTED device in unknown mode]
Device! 0x5A7, 0x40FC
Device! 0x46D, 0xB01F
Device! 0x46D, 0xB01F
Device! 0x46D, 0xB01F
Device! 0x46D, 0xB01F
[berocs@bns-kharselim bose-dfu]$ ./target/debug/bose-dfu info -f
[WARN bose_dfu] Device has not been tested with bose-dfu; by proceeding, you risk damaging it
[WARN bose_dfu] Cannot determine device's mode; command may damage devices not in normal mode
USB serial: 081300m0253a713ae
HW serial: m024834830683763803b010
Device model: m024834830683763803b010
Current firmware: 2.0.0-ba77aca epdbuild.usvacepebldw05.2021-08-13T11:00:00
I tried using the btu.bose.com webpage from a Windows VM and capturing with wireshark, but wasn't able to make it work.
I did get the output from the webpage though:
These earbuds are stuck in the "red and white flashing LED" mode, so I know now that the btu webpage doesn't fix the issue.
Hi,
This is likely operator error somewhere, but I'm hoping to document my troubleshooting in case it happens to anyone else.
I used the cargo installation method on Archlinux.
Device: Bose Sport earbuds Model: 427929
Connected with USB-A cable (serial number edited out):
Modified 70-bose-dfu.rules installed:
Running bose-dfu:
The device's idVendor looks to be correct. I expect I need to do something to the hidraw driver.
I also see the device id is the same as an incompatible product: https://github.com/tchebb/bose-dfu/blob/fdf107269c8ddcaa391325c1113d0d65afe35ad4/src/device_ids.rs#L22