Hey,
Thanks a lot. That does sound pretty strange. Thankfully, I'm in no hurry as I'm still mainly using an older Mac for audio stuff, but I'd like to replace it sooner or later, and getting an upgradable Linux machine sounds better than paying 1.5 to 2 times as much for a Mac with the same specs (and no extensibility).
I'll try to do some testing around on my current Linux box. Unfortunately it's an old machine with a "known problematic" Firewire implementation, though I doubt that should play a part in device discovery.
Daniel
On Wed, Jan 29, 2020 at 4:16 AM Takashi Sakamoto o-takashi@sakamocchi.jp wrote:
Hi,
On Tue, Jan 28, 2020 at 10:28:20PM +0000, Daniel Jozsef wrote:
I'm a little baffled by what my device just did. :P
$ ./firewire-request /dev/fw1 fcp 0x016002c0000100ffff00 response: 000: 0c 60 02 c0 00 01 00 ff ff 00 00
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0000101ffff00 response: 000: 0c 60 02 c0 00 01 01 ff ff 00 00
.`.........
(<- didn't fail) $ ./firewire-request /dev/fw1 fcp 0x016002c0000102ffff00 response: 000: 0c 60 02 c0 00 01 02 ff ff 00 00
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0000103ffff00 response: 000: 0c 60 02 c0 00 01 03 ff ff 00 00
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0000104ffff00 response: 000: 0c 60 02 c0 00 01 04 ff ff 00 02
.`.........
(<- didn't fail)
In fact...
$ ./firewire-request /dev/fw1 fcp 0x016002c0000105ffff00 response: 000: 0c 60 02 c0 00 01 05 ff ff 00 03
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0000106ffff00 response: 000: 08 60 02 c0 00 01 06 ff ff 00 .`........ (<- shorter) $ ./firewire-request /dev/fw1 fcp 0x016002c0000107ffff00 response: 000: 08 60 02 c0 00 01 07 ff ff 00 .`........ $ ./firewire-request /dev/fw1 fcp 0x016002c00001ffffff00 response: 000: 08 60 02 c0 00 01 ff ff ff 00 .`........ (<-srsly?)
As for the second batch:
$ ./firewire-request /dev/fw1 fcp 0x016002c0010100ffff00 response: 000: 0c 60 02 c0 01 01 00 ff ff 00 00
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0010101ffff00 response: 000: 0c 60 02 c0 01 01 01 ff ff 00 00
.`.........
(<- didn't fail)
So again...
$ ./firewire-request /dev/fw1 fcp 0x016002c0010102ffff00 response: 000: 0c 60 02 c0 01 01 02 ff ff 00 00
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0010103ffff00 response: 000: 0c 60 02 c0 01 01 03 ff ff 00 02
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0010104ffff00 response: 000: 0c 60 02 c0 01 01 04 ff ff 00 03
.`.........
$ ./firewire-request /dev/fw1 fcp 0x016002c0010105ffff00 response: 000: 08 60 02 c0 01 01 05 ff ff 00 .`........ (<- shorter) $ ./firewire-request /dev/fw1 fcp 0x016002c0010106ffff00 response: 000: 08 60 02 c0 01 01 06 ff ff 00 .`........ $ ./firewire-request /dev/fw1 fcp 0x016002c001010fffff00 response: 000: 08 60 02 c0 01 01 0f ff ff 00 .`........
Honestly I have no idea what is going on. :D
It looks to work well.
You tried for input plugs of audio subunit, thus the shorter response with 0x08 in the first byte (=NOT IMPLEMENTED) is expected for inquiry to 6th input plug.
Hm. I guess your issue is a kind of Heisenbugs[1]. It seems to depend on case. To drill down the case in which the issue appears, I'd like you to investigate whether you can see the same log every time you run with libffado (jackd with Firewire backend, or ffado-dbus-server) or not:
Error (bebob_avplug.cpp)[ 237] discoverPlugType: Plug does not implement
extended plug info plug type info command
Error (bebob_avplug.cpp)[ 120] discover: discover: Could not discover
plug type (1,1,0,0,1)
Additionally, I write a patch for ALSA bebob driver to support your device[2]. If you need a prompt solution to use the device in Linux-based system, it's available in topic branch of my remote repository. But it's required for you to study the way to update installed driver modules...
I note that ALSA bebob driver supports transmission of audio frames and MIDI messages, thus it's not available to control internal DSP.
[1] https://en.wikipedia.org/wiki/Heisenbug [2] https://github.com/takaswie/snd-firewire-improve/commit/1c9fabb7dd9de36ea829... [3] https://github.com/takaswie/snd-firewire-improve/tree/topic/fw66
Regards
Takashi Sakamoto