Hello,
Thanks for the quick reaction, Takashi :) I ran the command you mentioned, and your guess was spot on:
daniel@gibbonmoon:~/opt/linux-firewire-utils-0.4/src$ ./firewire-request /dev/fw1 read 0xffffc8020000 60 result: 000: 62 72 69 64 67 65 43 6f 03 00 00 00 00 00 00 00 bridgeCo........ result: 010: 00 27 23 00 00 00 00 02 02 00 00 00 00 00 00 00 .'#............. result: 020: 32 30 31 30 30 35 32 35 31 32 31 35 30 34 20 20 20100525121504
result: 030: 02 00 02 00 ff ff ff 00 80 00 0c 40 7c e3 13 00 ...........@|... result: 040: 32 30 30 38 31 32 30 32 31 33 34 34 34 38 20 20 20081202134448
result: 050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
Daniel
On Sun, Jan 19, 2020 at 4:43 PM Takashi Sakamoto o-takashi@sakamocchi.jp wrote:
Hi,
I'm an author of ALSA bebob driver (snd-bebob).
On Sun, Jan 19, 2020 at 03:01:00PM +0100, Daniel Jozsef wrote:
It's a Toneweal FW66, a 6x6 in/out 24bit 96kHz audio interface with
MIDI. I
kinda like it for its build quality and the time I spent with it. :D The largest chip in the device is labeled Trigaudio MNP-TA110. I searched for information on this device, and found very little - it's a Taiwanese company. There seems evidence that a "Trigaudio FW66" also exists, so the device may have been sold under different brands in different markets.
In my opinion, FW66 is an application of ArchWave BeBoB solution for audio and music units on IEEE 1394 bus (ArchWave is formerly known as BridgeCo) since I can find file structure for the solution in driver package shipped by the vendor. I guess that you can see large ASIC labelled with 'BridgeCo' (or 'ArchWave') DM1000/1100/1500 inner the device. If so, the device is possibly handled by implementation of FFADO.
But as a quick glance to your log, the implementation of FFADO fails to detect it:
daniel@gibbonmoon:~$ sudo ffado-test Discover ... 02878614308: Warning (bebob_avdevice.cpp)[ 228] discover: Using generic
BeBoB support for unsupported device 'ToneWeal FW66'
02878620133: Debug (bebob_avdevice_subunit.cpp)[ 83] discover:
Discovering BeBoB::AudioSubunit...
02878620175: Debug (avc_audiosubunit.cpp)[ 56] discover: Discovering
BeBoB::AudioSubunit...
02878620196: Debug (avc_subunit.cpp)[ 108] discoverPlugs: Discovering
plugs...
02878778208: Error (bebob_avplug.cpp)[ 237] discoverPlugType: Plug does
not implement extended plug info plug type info command
02878778236: Error (bebob_avplug.cpp)[ 120] discover: discover: Could
not discover plug type (1,1,0,0,1)
02878778272: Error (avc_subunit.cpp)[ 189] discoverPlugs: plug discover
failed
02878778283: Error (avc_subunit.cpp)[ 131] discoverPlugs: destination
plug discovering failed
02878778301: Error (avc_subunit.cpp)[ 99] discover: plug discovery
failed
02878778312: Error (avc_unit.cpp)[ 283] enumerateSubUnits:
enumerateSubUnits: Could not discover subunit_id = 0, subunit_type = 1 (Audio)
02878778335: Error (avc_unit.cpp)[ 177] discover: Could not enumerate
sub units
02878778347: Error (bebob_avdevice.cpp)[ 232] discover: Could not
discover unit
02878778376: Error (devicemanager.cpp)[ 628] discover: could not
discover device
02878778419: Debug (devicemanager.cpp)[ 661] discover: Discovery
finished... ...
The reason is the unit returns NOT_IMPLEMENTED response against vendor specific AV/C command (Extended Plug Information command defined by BridgeCo.) for Audio subunit. I guess that the device has no Audio subunit but the implementation performs to use it without checking available subunits.
For my information, would you please clone linux-firewire-utils[1] into your system and build it, then run below command to dump device information:
$ ./firewire-request /dev/fw1 read 0xffffc8020000 60 result: 000: 62 72 69 64 67 65 43 6f 03 00 00 00 00 00 00 00 bridgeCo........ result: 010: 00 96 14 00 22 03 00 00 19 00 00 00 00 00 00 00 ...."........... result: 020: 32 30 30 39 30 36 30 39 31 36 32 39 34 30 20 20 20090609162940 result: 030: 00 00 00 19 07 1f 00 00 80 00 0c 40 70 35 14 00 ...........@p5.. result: 040: 32 30 30 39 30 36 30 39 31 36 32 32 31 39 20 20 20090609162219 result: 050: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
The above is a sample of Phonic Firefly 202. I expect the first line includes bytes represent 'bridgeCo'.
[1] https://github.com/cladisch/linux-firewire-utils
Regards
Takashi Sakamoto