On Tue, Aug 30, 2022 at 04:50:53PM +0000, Angelo wrote:
>
> /* vendor 0x2a39, product 0x3fb0, 1 configs */
> unsigned char config[] = {
> 0x09, 0x02, 0xa7, 0x01, 0x04, 0x01, 0x00, 0x80, 0x32,
> 0x08, 0x0b, 0x00, 0x04, 0x01, 0x00, 0x20, 0x00,
> 0x09, 0x04, 0x00, 0x00, 0x00, 0x01, 0x01, 0x20, 0x00,
> 0x09, 0x24, 0x01, 0x00, 0x02, 0x08, 0x55, 0x00, 0x00,
> 0x08, 0x24, 0x0a, 0x01, 0x03, 0x03, 0x00, 0x00,
> 0x11, 0x24, 0x02, 0x03, 0x01, 0x01, 0x00, 0x01, 0x0c, 0x00, 0x00, 0x00,
> 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x11, 0x24, 0x02, 0x05, 0x01, 0x02, 0x00, 0x01, 0x0c, 0x00, 0x00, 0x00,
> 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x0c, 0x24, 0x03, 0x04, 0x01, 0x03, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00,
> 0x0c, 0x24, 0x03, 0x06, 0x01, 0x01, 0x00, 0x05, 0x01, 0x00, 0x00, 0x00,
> 0x09, 0x04, 0x01, 0x00, 0x00, 0x01, 0x02, 0x20, 0x00,
> 0x09, 0x04, 0x01, 0x01, 0x02, 0x01, 0x02, 0x20, 0x00,
> 0x10, 0x24, 0x01, 0x03, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x02, 0x03,
> 0x00, 0x00, 0x00, 0x00,
> 0x06, 0x24, 0x02, 0x01, 0x03, 0x18,
> 0x07, 0x05, 0x03, 0x05, 0x96, 0x00, 0x01,
> 0x08, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x07, 0x05, 0x83, 0x11, 0x04, 0x00, 0x04,
> 0x09, 0x04, 0x01, 0x02, 0x02, 0x01, 0x02, 0x20, 0x00,
> 0x10, 0x24, 0x01, 0x03, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x0c, 0x00,
> 0x00, 0x00, 0x00, 0x00,
> 0x06, 0x24, 0x02, 0x01, 0x03, 0x18,
> 0x07, 0x05, 0x03, 0x05, 0x84, 0x03, 0x01,
> 0x08, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x07, 0x05, 0x83, 0x11, 0x04, 0x00, 0x04,
> 0x09, 0x04, 0x02, 0x00, 0x00, 0x01, 0x02, 0x20, 0x00,
> 0x09, 0x04, 0x02, 0x01, 0x01, 0x01, 0x02, 0x20, 0x00,
> 0x10, 0x24, 0x01, 0x06, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x0c, 0x00,
> 0x00, 0x00, 0x00, 0x00,
> 0x06, 0x24, 0x02, 0x01, 0x03, 0x18,
> 0x07, 0x05, 0x84, 0x05, 0x84, 0x03, 0x01,
> 0x08, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x09, 0x04, 0x02, 0x02, 0x01, 0x01, 0x02, 0x20, 0x00,
> 0x10, 0x24, 0x01, 0x06, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x02, 0x03,
> 0x00, 0x00, 0x00, 0x00,
> 0x06, 0x24, 0x02, 0x01, 0x03, 0x18,
> 0x07, 0x05, 0x84, 0x05, 0x96, 0x00, 0x01,
> 0x08, 0x25, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
> 0x09, 0x04, 0x03, 0x00, 0x02, 0x01, 0x03, 0x00, 0x02,
> 0x07, 0x24, 0x01, 0x00, 0x01, 0x61, 0x00,
> 0x09, 0x24, 0x03, 0x01, 0x03, 0x01, 0x02, 0x01, 0x04,
> 0x06, 0x24, 0x02, 0x02, 0x02, 0x04,
> 0x09, 0x24, 0x03, 0x01, 0x07, 0x01, 0x06, 0x01, 0x05,
> 0x06, 0x24, 0x02, 0x02, 0x06, 0x05,
> 0x06, 0x24, 0x02, 0x01, 0x01, 0x04,
> 0x09, 0x24, 0x03, 0x02, 0x04, 0x01, 0x01, 0x01, 0x04,
> 0x06, 0x24, 0x02, 0x01, 0x05, 0x05,
> 0x09, 0x24, 0x03, 0x02, 0x08, 0x01, 0x05, 0x01, 0x05,
> 0x09, 0x05, 0x07, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
> 0x06, 0x25, 0x01, 0x02, 0x01, 0x05,
> 0x09, 0x05, 0x86, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00,
> 0x06, 0x25, 0x01, 0x02, 0x03, 0x07
> };
The manual says that the device is class-compliant [*], but the
descriptors are "unusual" and the uaudio(4) driver fails to parse them
(there are nodes with duplicate IDs, generic and class-specific
interface descriptors are mixed together, etc).
This requires a lot of thinking to make it work.
Before digging further, could you check that your device is using the
latest firmware? Just in case this changed in the latest firmware
versions.
[*] https://www.rme-audio.de/downloads/bface_pro_fs_e.pdf