Re: Firewire Phase24 Motu help
Hi,
(C.C.ed to administrator of alsa-devel mailing list)
On Mon, Jan 30, 2023 at 12:40:06PM +0100, M. Armsby wrote:
Hi Takashi, I'm writing direct because I cannot seem to get a post on AlsaDevel list.
I've realized your two posts, but no reaction since they have no message body:
* Firewire ALSA Motu and Phase24 * https://lore.kernel.org/alsa-devel/sokos1-r6xj933yn42y-hmy3gsrfgsma-mnwe9a-c... * Firewire Motu ALSA (Re-post) * https://lore.kernel.org/alsa-devel/v6inx6-fwmr0r-kvajcd-kfs8u9l6m2qn2cnogd-2...
Jaroslav, would I ask your opinion for the problem which perhaps dropped the message body from his messages?
I need to repair my two Phase X24 (defekt caps?) and I'm having problems with Traveler and other Motu interfaces on Linux. Thanks for any hints or where I should post. Here's a copy of my post:
Hello everyone! Thank you for all the hard work on this. Especially Mr. Takashi Sakamoto. I'm an experienced studio engineer and was a Beta tester for Samplitude for years. Not a programmer and have very little experience with Linux. So please excuse me blundering in on this professional programmer forum but I'm hoping my experience will help somehow to find bugs. I'll provide any information I can or test following instructions. I really would love to completely change over to Linux but I need reliable drivers. How can I help? Here's my experience so far.
Around November I started testing Linux for audio as I have occasionally over the last years. I was pleased to find Manjaro and Sparky would detect Traveler Mk1 and Mk3 and to run so efficiently compared to Win10. But things would freeze. Reaper has a long standing Midi bug so it was difficult at first to see why my laptop would freeze on occasion. I dissabled hardware midi in the software. Then I updated Sparky beginning of December and to my surprise Firewire didn't work anymore. The Firewire stack must have been removed. I use: Dell Laptops 4310, 6510, M4800 Tested platforms Ardour and Reaper using Pianoteq 8 No JACK Manjaro Kernel from 6.0 rc4? and 6.1.1 work for a limited time. Sparky only works with special kernels Xanmod1 6.1.7-x64v2 but the audio is completely distorted. CachyOS Kernel 6.2 rc4 sounds good. Common problem is freezing or loosing audio. Ardour is less sensitive than Reaper but Reaper is far more efficient on CPU (20% compared to 90%and more with one instance of Pianoteq 7 or 8) Motu Traveler MK3 and MK1 wrong channel assignment from 1+2 (3+4 are actually 1+2) and freezing or just loosing audio. Motu 896Mk3 Hybrid not recognised in firewire or USB mode. Shame cause its the best. Motu 8pre working similarly. Phase 24 working much better but still freezes or looses audio after long period. Tested in Ardour and Reaper. I hope that's not too much at once. Martin Armsby M. Armsby
Thanks for the report including many issues. I apologize to trouble you. In my opinion, the issues are not so easy since each application uses ALSA PCM device by slightly different ways. So we need to investigate the issue step by step to take relevant longer time than easy issues.
Before discussing about the issue, I need to ask a help about MOTU devices. As you realized, 896 mk3 is neither supported yet, FireWire only nor Hybrid, in IEEE 1394 bus nor Universal Serial Bus. For example, you can see no entry for the device in module device table[1] in the file which consists of snd-firewire-motu driver.
The reason is apparent; no one provides information enough to support it. Then I would like you to help me to integrate for it in the case in IEEE 1394 bus.
I maintain a remote repository for my collection of configuration ROM image which includes identity information of each node in IEEE 1394 bus[2]. The information is useful both to make the entry of module device table and to make hardware database[3] in systemd project.
When 896 mk3 Hybrid is connected to IEEE 1394 bus and only connected to the bus, Linux FireWire subsystem detects it as '/dev/fw1'. Then the rom image is exported to an node on sysfs. You can retrieve the content by the command line below:
$ cat /sys/bus/firewire/devices/fw1/config_rom > motu-896mk3hybrid.img
If retrieved successfully, please send it to me. I don't mind to receive it to private message, mailing list, any upload services.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/soun... [2] https://github.com/takaswie/am-config-roms [3] https://github.com/systemd/systemd/blob/main/hwdb.d/80-ieee1394-unit-functio...
Thanks
Takashi Sakamoto
On 30.01.2023 14:19, Takashi Sakamoto wrote:
Hi,
(C.C.ed to administrator of alsa-devel mailing list)
On Mon, Jan 30, 2023 at 12:40:06PM +0100, M. Armsby wrote:
Hi Takashi, I'm writing direct because I cannot seem to get a post on AlsaDevel list.
I've realized your two posts, but no reaction since they have no message body:
- Firewire ALSA Motu and Phase24
- Firewire Motu ALSA (Re-post)
Jaroslav, would I ask your opinion for the problem which perhaps dropped the message body from his messages?
I need to repair my two Phase X24 (defekt caps?) and I'm having problems with Traveler and other Motu interfaces on Linux. Thanks for any hints or where I should post. Here's a copy of my post: Hello everyone! Thank you for all the hard work on this. Especially Mr. Takashi Sakamoto. I'm an experienced studio engineer and was a Beta tester for Samplitude for years. Not a programmer and have very little experience with Linux. So please excuse me blundering in on this professional programmer forum but I'm hoping my experience will help somehow to find bugs. I'll provide any information I can or test following instructions. I really would love to completely change over to Linux but I need reliable drivers. How can I help? Here's my experience so far. Around November I started testing Linux for audio as I have occasionally over the last years. I was pleased to find Manjaro and Sparky would detect Traveler Mk1 and Mk3 and to run so efficiently compared to Win10. But things would freeze. Reaper has a long standing Midi bug so it was difficult at first to see why my laptop would freeze on occasion. I dissabled hardware midi in the software. Then I updated Sparky beginning of December and to my surprise Firewire didn't work anymore. The Firewire stack must have been removed. I use: Dell Laptops 4310, 6510, M4800 Tested platforms Ardour and Reaper using Pianoteq 8 No JACK Manjaro Kernel from 6.0 rc4? and 6.1.1 work for a limited time. Sparky only works with special kernels Xanmod1 6.1.7-x64v2 but the audio is completely distorted. CachyOS Kernel 6.2 rc4 sounds good. Common problem is freezing or loosing audio. Ardour is less sensitive than Reaper but Reaper is far more efficient on CPU (20% compared to 90%and more with one instance of Pianoteq 7 or 8) Motu Traveler MK3 and MK1 wrong channel assignment from 1+2 (3+4 are actually 1+2) and freezing or just loosing audio. Motu 896Mk3 Hybrid not recognised in firewire or USB mode. Shame cause its the best. Motu 8pre working similarly. Phase 24 working much better but still freezes or looses audio after long period. Tested in Ardour and Reaper. I hope that's not too much at once. Martin Armsby M. Armsby
Thanks for the report including many issues. I apologize to trouble you. In my opinion, the issues are not so easy since each application uses ALSA PCM device by slightly different ways. So we need to investigate the issue step by step to take relevant longer time than easy issues.
Before discussing about the issue, I need to ask a help about MOTU devices. As you realized, 896 mk3 is neither supported yet, FireWire only nor Hybrid, in IEEE 1394 bus nor Universal Serial Bus. For example, you can see no entry for the device in module device table[1] in the file which consists of snd-firewire-motu driver.
The reason is apparent; no one provides information enough to support it. Then I would like you to help me to integrate for it in the case in IEEE 1394 bus.
I maintain a remote repository for my collection of configuration ROM image which includes identity information of each node in IEEE 1394 bus[2]. The information is useful both to make the entry of module device table and to make hardware database[3] in systemd project.
When 896 mk3 Hybrid is connected to IEEE 1394 bus and only connected to the bus, Linux FireWire subsystem detects it as '/dev/fw1'. Then the rom image is exported to an node on sysfs. You can retrieve the content by the command line below:
$ cat /sys/bus/firewire/devices/fw1/config_rom > motu-896mk3hybrid.img
If retrieved successfully, please send it to me. I don't mind to receive it to private message, mailing list, any upload services.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/soun... [2] https://github.com/takaswie/am-config-roms [3] https://github.com/systemd/systemd/blob/main/hwdb.d/80-ieee1394-unit-functio...
Thanks
Takashi Sakamoto
Ok, Im pleased to help with the drivers for Motu 896 Mk3 Hybrid I followed your instruction and dumped an .img Just for comparison I also dumped an .img for Traveler Mk1 These are both in the zip file - (or how would ou like it) The img seems ver small - I hope it's usefull :)
BTW Manjaro update with Kernel 6.2.Rc6 is running very well with Terratec Phase24 and both Motu Travelers. Not perfeclty but I was able (for the first time) to edit productions using Reaper for over an hour with no problem!
Note: Traveler have wrong output numbering.
Cheers,
Martin
Hi,
On Sun, Feb 05, 2023 at 12:54:38PM +0100, Martin Armsby on GMX wrote:
On 30.01.2023 14:19, Takashi Sakamoto wrote:
Jaroslav, would I ask your opinion for the problem which perhaps dropped the message body from his messages?
Now his message is successfully blasted to subscribers. Thanks.
Ok, Im pleased to help with the drivers for Motu 896 Mk3 Hybrid I followed your instruction and dumped an .img Just for comparison I also dumped an .img for Traveler Mk1 These are both in the zip file - (or how would ou like it) The img seems ver small - I hope it's usefull :)
Thanks. I pushed it to my public repository for the collection[1].
Additionally, I filed a merge request to systemd project for the hardware database[2]:
BTW Manjaro update with Kernel 6.2.Rc6 is running very well with Terratec Phase24 and both Motu Travelers. Not perfeclty but I was able (for the first time) to edit productions using Reaper for over an hour with no problem!
Note: Traveler have wrong output numbering.
I guess that you mentioned about the difference between the contents of attached 'motu-896mk3hybrid.img' and 'ma_test_traveler.img'. If not, would I ask your further opinion about the 'output numbering' so that I can figure out it.
If it was the mapping of PCM channels, it would come from the specification of MOTU protocol. As long as I know, the second generation of MOTU FireWire series, the first two channels in playback PCM frame are for headphone output 1 and 2 (if exists). The channels for analog outputs, for main outputs (if exists), for S/PDIF outputs (if exists), for ADAT outputs (if exists) follow to them in the order.
Well, if supporting MOTU 896 mk3 hybrid, we need to investigate the format of packet content. You can see the format table in 'sound/firewire/motu/motu-protocol-v3.c'[3]. Unfortunately, I have never had chance to access to the real hardware, so it would be helpful to me that you investigate it on behalf of me. But it consumes your time. If you are willing to help, I'm pleased to work for it with you.
[1] https://github.com/takaswie/am-config-roms [2] https://github.com/systemd/systemd/pull/26319 [3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/soun...
Regards
Takashi Sakamoto
Hi,
On Mon, Feb 06, 2023 at 06:30:44PM +0100, M. Armsby wrote:
Hi there Takashi,
please send me your instructions.
I will do everything to get these MOTU devices working properly.
Okay. As a first step, would I ask you to build `linux-firewire-utils`?
* https://github.com/cladisch/linux-firewire-utils
In the top level of directory, execute below commands:
$ autoreconf -i $ ./configure $ make
When building successfully, you can find `firewire-request` in `src` directory. It is useful to read the status of device and required for our investigation.
Before building, I think you need to install some package required for the work (e.g. compiler), but I'm not Manjaro user so contact to Manjaro user to ask it...
The problem with device allocation is this:
Ardour and Reaper see the ALSA driver and automatically choose 1+2 for main stereo out.
But - there is no connection.
If I choose 3+4 then Motu hardware actually gets sound output on 1+2
That means all Motu outs are shifted by 2 in the Linux protocol.
This is true for Traveler MK1 and MK3 so I assume it is an error in all snd_motu_spec
I made a short video demonstrating this.
Thanks for your taking and uploading the video.
The below figure illustrates your cases:
++======================++ +-------+ ++===============++ || Traveler || | frame | || Application || || || | | || || || headphone output 1/2 || <- | 0/1 | <- || Output 1/2 || || analog output 1/2 || <- | 2/3 | <- || Output 3/4 || || analog output 3/4 || <- | 4/5 | <- || Output 5/6 || || analog output 5/6 || <- | 6/7 | <- || Output 7/8 || || analog output 7/8 || <- | 8/9 | <- || Output 9/10 || || AES/EBU (XLR) 1/2 || <- | 10/11 | <- || Output 11/12 || || S/PDIF (opt) 1/2 || <- | 12/13 | <- || Output 13/14 || ++======================++ +-------+ ++===============++
I note that the effective source of headphone output is selectable between the above 7 pairs. Additionally, when enabling ADAT optical output, 8 channels are newly added to the frame thus 22 channels are available in a view of application.
Well, inconveniently to you, the above mapping is expected. ALSA firewire-motu driver passes no information to the application about what the channel of frame is assigned to, due to technical reason of ALSA interface to user space application. As a result, the application just enumerates audio sample in its order.
Regards
Takashi Sakamoto
participants (3)
-
M. Armsby
-
Martin Armsby on GMX
-
Takashi Sakamoto