* presonus StudioLive 24.4.2
@ 2020-06-16 8:11 m.eik michalke
2020-06-16 12:18 ` Takashi Sakamoto
0 siblings, 1 reply; 9+ messages in thread
From: m.eik michalke @ 2020-06-16 8:11 UTC (permalink / raw)
To: alsa-devel
hi,
i'm trying to get a presonus StudioLive 24.4.2 up and running:
https://www.presonus.com/products/studiolive-24.4.2
so far i'm partly successful -- looks like the board is automatically detected
and supported by the firewire dice module.
however, i'm only offered 16 of the 24 supported audio channels. in the list
of soundcards it is merely shown as "studiolive" without further info on the
model. i wasn't able to find further info on this board's status with regards
to alsa, so if there's documentation on this somewhere, could someone please
point me to it?
in case that as of now the studiolive isn't officially supported or the above
behavior is due to the fact that so far only the 16.4.2 is known to the
module, i'm willing to help as far as i can ;) i hope that already seeing 16
channels is a good point to start and that it's not too hard to make the
remaining 8 show up as well...
best regards :: m.eik
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-16 8:11 presonus StudioLive 24.4.2 m.eik michalke
@ 2020-06-16 12:18 ` Takashi Sakamoto
2020-06-17 13:00 ` m.eik michalke
0 siblings, 1 reply; 9+ messages in thread
From: Takashi Sakamoto @ 2020-06-16 12:18 UTC (permalink / raw)
To: m.eik michalke; +Cc: alsa-devel
Hi,
I'm a developer for ALSA firewire stack.
On Tue, Jun 16, 2020 at 10:11:57AM +0200, m.eik michalke wrote:
> i'm trying to get a presonus StudioLive 24.4.2 up and running:
>
> https://www.presonus.com/products/studiolive-24.4.2
>
> so far i'm partly successful -- looks like the board is automatically detected
> and supported by the firewire dice module.
Thanks for your trial to the device. For my information, would you show
your kernel version?
> however, i'm only offered 16 of the 24 supported audio channels. in the list
> of soundcards it is merely shown as "studiolive" without further info on the
> model. i wasn't able to find further info on this board's status with regards
> to alsa, so if there's documentation on this somewhere, could someone please
> point me to it?
I guess that Dice ASIC in your device can process two pairs of
isochronous packet streams. In the case, the driver adds two PCM devices
to system. I think you saw the first PCM device and it can handle 16 PCM
channels. Another can handle the rest 8 channels.
Would you find below procfs nodes and dump their contents?
* /proc/asound/cardX/firewire/dice
* /proc/asound/cardX/firewire/formation
Here, the 'X' should be replaced with the one in your system.
> in case that as of now the studiolive isn't officially supported or the above
> behavior is due to the fact that so far only the 16.4.2 is known to the
> module, i'm willing to help as far as i can ;) i hope that already seeing 16
> channels is a good point to start and that it's not too hard to make the
> remaining 8 show up as well...
Would you get output from '/proc/asound/pcm'?
For example, in the case of M-Audio Profire 610:
$ cat /proc/asound/pcm
...
02-00: DICE : FW610 : playback 1 : capture 1
02-01: DICE : FW610 : playback 1
We can see two PCM devices in the above for playback PCM substream.
Thanks
Takashi Sakamoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-16 12:18 ` Takashi Sakamoto
@ 2020-06-17 13:00 ` m.eik michalke
2020-06-17 13:37 ` Takashi Sakamoto
0 siblings, 1 reply; 9+ messages in thread
From: m.eik michalke @ 2020-06-17 13:00 UTC (permalink / raw)
To: Takashi Sakamoto; +Cc: alsa-devel
hi,
Am Dienstag, 16. Juni 2020, 14:18:29 CEST schrieb Takashi Sakamoto:
> On Tue, Jun 16, 2020 at 10:11:57AM +0200, m.eik michalke wrote:
> > i'm trying to get a presonus StudioLive 24.4.2 up and running:
> > https://www.presonus.com/products/studiolive-24.4.2
> >
> > so far i'm partly successful -- looks like the board is automatically
> > detected and supported by the firewire dice module.
>
> Thanks for your trial to the device. For my information, would you show
> your kernel version?
$ uname -a
Linux yrla 5.3.0-59-generic #53~18.04.1-Ubuntu SMP Thu Jun 4 14:58:26 UTC 2020
x86_64 x86_64 x86_64 GNU/Linux
> > however, i'm only offered 16 of the 24 supported audio channels. in the
> > list of soundcards it is merely shown as "studiolive" without further
> > info on the model. i wasn't able to find further info on this board's
> > status with regards to alsa, so if there's documentation on this
> > somewhere, could someone please point me to it?
>
> I guess that Dice ASIC in your device can process two pairs of
> isochronous packet streams. In the case, the driver adds two PCM devices
> to system. I think you saw the first PCM device and it can handle 16 PCM
> channels. Another can handle the rest 8 channels.
i see.
> Would you find below procfs nodes and dump their contents?
>
> * /proc/asound/cardX/firewire/dice
> * /proc/asound/cardX/firewire/formation
$ cat /proc/asound/cards
[...]
4 [StudioLive ]: DICE - StudioLive
PreSonus STUDIOLIVE_2442 (serial xxxxxxx) at fw1.0, S400
$ cat /proc/asound/card4/firewire/dice
sections:
global: offset 10, size 90
tx: offset 100, size 142
rx: offset 242, size 282
ext_sync: offset 524, size 4
unused2: offset 0, size 0
global:
owner: ffc1:000100000000
notification: 00000020
nick name: StudioLive
clock select: internal 44100
enable: 0
status: locked 44100
ext status: 00000000
sample rate: 44100
version: 1.0.4.0
clock caps: 44100 48000 arx1 arx2 internal
clock source names: AES12\SPDIF\AES56\AES78\AES_ANY\ADAT\ADAT_AUX\Word Clock
\Unused\Unused\Unused\Unused\Internal\\
tx 0:
iso channel: -1
audio channels: 16
midi ports: 0
speed: S400
names: Ch 1\Ch 2\Ch 3\Ch 4\Ch 5\Ch 6\Ch 7\Ch 8\Ch 9\Ch 10\Ch 11\Ch 12\Ch
13\Ch 14\Ch 15\Ch 16\\
ac3 caps: 00000000
ac3 enable: 00000000
tx 1:
iso channel: -1
audio channels: 16
midi ports: 0
speed: S400
names: Ch 17\Ch 18\Ch 19\Ch 20\Ch 21\Ch 22\Ch 23\Ch 24\Auxiliary Ch
25\Auxiliary Ch 26\Auxiliary Ch 27\Auxiliary Ch 28\Auxiliary Ch 29\Auxiliary
Ch 30\Auxiliary Ch 31\Auxiliary Ch 32\\
ac3 caps: 00000000
ac3 enable: 00000000
rx 0:
iso channel: -1
sequence start: 0
audio channels: 16
midi ports: 0
names: Ch 1\Ch 2\Ch 3\Ch 4\Ch 5\Ch 6\Ch 7\Ch 8\Ch 9\Ch 10\Ch 11\Ch 12\Ch
13\Ch 14\Ch 15\Ch 16\\
ac3 caps: 00000000
ac3 enable: 00000000
rx 1:
iso channel: -1
sequence start: 0
audio channels: 10
midi ports: 0
names: Ch 17\Ch 18\Ch 19\Ch 20\Ch 21\Ch 22\Ch 23\Ch 24\2TrackIn L\2TrackIn R
\\
ac3 caps: 00000000
ac3 enable: 00000000
ext status:
clock source: internal
locked: 1
rate: 44100
adat user data: -
$ cat /proc/asound/card4/firewire/formation
Output stream from unit:
low middle high MIDI
Tx 0: 16 0 0 0
Tx 1: 16 0 0 0
Input stream to unit:
low middle high
Rx 0: 16 0 0 0
Rx 1: 10 0 0 0
> > in case that as of now the studiolive isn't officially supported or the
> > above behavior is due to the fact that so far only the 16.4.2 is known to
> > the module, i'm willing to help as far as i can ;) i hope that already
> > seeing 16 channels is a good point to start and that it's not too hard to
> > make the remaining 8 show up as well...
>
> Would you get output from '/proc/asound/pcm'?
$ cat /proc/asound/pcm
[...]
04-00: DICE : StudioLive : playback 1 : capture 1
04-01: DICE : StudioLive : playback 1 : capture 1
all looks to me like you were right. IIUC the board provides a total of 32
output channels and 26 for input. does this mean the device is already fully
recognized and functional? can alsa be configured to provide all channels as
one "sound card" so they become available in, say, ardour?
thank you & best regards :: m.eik
--
: . . : : .·· :
::. .. ..:: dipl. psych. : : m.eik michalke ::.. .. .. .::
: · : .· . : : . .: :
:.. .. . .. . : OpenPGP: F8315CCB7BDABA8E .· . ::.: · : :
: ..:·· .: ··. ..:... :
:.. https://reaktanz.de ... https://angstalt.de ... https://C3S.cc ..:
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-17 13:00 ` m.eik michalke
@ 2020-06-17 13:37 ` Takashi Sakamoto
2020-06-17 16:12 ` m.eik michalke
0 siblings, 1 reply; 9+ messages in thread
From: Takashi Sakamoto @ 2020-06-17 13:37 UTC (permalink / raw)
To: m.eik michalke; +Cc: alsa-devel
Hi,
Thanks for the information.
On Wed, Jun 17, 2020 at 03:00:49PM +0200, m.eik michalke wrote:
> > > in case that as of now the studiolive isn't officially supported or the
> > > above behavior is due to the fact that so far only the 16.4.2 is known to
> > > the module, i'm willing to help as far as i can ;) i hope that already
> > > seeing 16 channels is a good point to start and that it's not too hard to
> > > make the remaining 8 show up as well...
> >
> > Would you get output from '/proc/asound/pcm'?
>
> $ cat /proc/asound/pcm
> [...]
> 04-00: DICE : StudioLive : playback 1 : capture 1
> 04-01: DICE : StudioLive : playback 1 : capture 1
>
>
> all looks to me like you were right. IIUC the board provides a total of 32
> output channels and 26 for input. does this mean the device is already fully
> recognized and functional? can alsa be configured to provide all channels as
> one "sound card" so they become available in, say, ardour?
ALSA dice driver is functional expectedly in the case, with the inconvenience
that you noted... The driver adds two pair of PCM playback/capture device so
that each of them handles corresponding single isochronous packet streaming.
I suggest users to use 'alsa_in' and 'alsa_out' in jackd
session. Two pairs of PCM device (hw:x,0 and hw:x,1) need to be handled
for all of PCM channels. I'm sorry but at present total channels are not
available via one pair of PCM device.
Well, this is a request from me. In IEEE 1394 bus, each device has
'configuration ROM' which the other device can read. Linux FireWire
subsystem read it for device detection. I gather the ROM image[1] for
better detection and would I request you to send the ROM image to me
by following below instruction?
After detected, FireWire character device corresponding to your device
is added to Linux system. Typically it's '/dev/fw1'. At the same time,
the ROM image is served via node on sysfs. In the case of '/dev/fw1',
it's '/sys/bus/firewire/devices/fw1/config_rom'. I'd like you to
redirect its content to file and send it to me (or send pull request
by github service).
[1] https://github.com/takaswie/am-config-roms/
Thanks
Takashi Sakamoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-17 13:37 ` Takashi Sakamoto
@ 2020-06-17 16:12 ` m.eik michalke
2020-06-17 23:32 ` Takashi Sakamoto
0 siblings, 1 reply; 9+ messages in thread
From: m.eik michalke @ 2020-06-17 16:12 UTC (permalink / raw)
To: Takashi Sakamoto; +Cc: alsa-devel
hi,
Am Mittwoch, 17. Juni 2020, 15:37:04 CEST schrieb Takashi Sakamoto:
> > $ cat /proc/asound/pcm
> > [...]
> > 04-00: DICE : StudioLive : playback 1 : capture 1
> > 04-01: DICE : StudioLive : playback 1 : capture 1
> I suggest users to use 'alsa_in' and 'alsa_out' in jackd
> session. Two pairs of PCM device (hw:x,0 and hw:x,1) need to be handled
> for all of PCM channels. I'm sorry but at present total channels are not
> available via one pair of PCM device.
ok, could a hack like this also help me out?
http://www.jrigg.co.uk/linuxaudio/ice1712multi.html
> Well, this is a request from me. In IEEE 1394 bus, each device has
> 'configuration ROM' which the other device can read. Linux FireWire
> subsystem read it for device detection. I gather the ROM image[1] for
> better detection and would I request you to send the ROM image to me
sent to you off-list. hth.
viele grüße :: m.eik
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-17 16:12 ` m.eik michalke
@ 2020-06-17 23:32 ` Takashi Sakamoto
2020-06-18 10:14 ` m.eik michalke
0 siblings, 1 reply; 9+ messages in thread
From: Takashi Sakamoto @ 2020-06-17 23:32 UTC (permalink / raw)
To: m.eik michalke; +Cc: alsa-devel
Hi,
On Wed, Jun 17, 2020 at 06:12:48PM +0200, m.eik michalke wrote:
> hi,
>
> Am Mittwoch, 17. Juni 2020, 15:37:04 CEST schrieb Takashi Sakamoto:
> > > $ cat /proc/asound/pcm
> > > [...]
> > > 04-00: DICE : StudioLive : playback 1 : capture 1
> > > 04-01: DICE : StudioLive : playback 1 : capture 1
>
> > I suggest users to use 'alsa_in' and 'alsa_out' in jackd
> > session. Two pairs of PCM device (hw:x,0 and hw:x,1) need to be handled
> > for all of PCM channels. I'm sorry but at present total channels are not
> > available via one pair of PCM device.
>
> ok, could a hack like this also help me out?
>
> http://www.jrigg.co.uk/linuxaudio/ice1712multi.html
Yep, the PCM multi plugin in alsa-lib seems to be available as well.
> > Well, this is a request from me. In IEEE 1394 bus, each device has
> > 'configuration ROM' which the other device can read. Linux FireWire
> > subsystem read it for device detection. I gather the ROM image[1] for
> > better detection and would I request you to send the ROM image to me
>
> sent to you off-list. hth.
I added it at below commit:
https://github.com/takaswie/am-config-roms/commit/38819873e51d
From my curiousity, would I ask you extra check in system log (like
journalctl -k)? ALSA Dice driver supports TCAT protocol extension, and
it firstly attempts to detect it for all of devices without explicit
flags (in your case). If the device doesn't support the extension, the
attempt fails and we can see below log:
```
kernel: snd_dice fw1.0: transaction failed: timeout
```
I'm glad if you reports whether to see the above or not.
Thanks
Takashi Sakamoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-17 23:32 ` Takashi Sakamoto
@ 2020-06-18 10:14 ` m.eik michalke
2020-06-18 14:06 ` Takashi Sakamoto
0 siblings, 1 reply; 9+ messages in thread
From: m.eik michalke @ 2020-06-18 10:14 UTC (permalink / raw)
To: Takashi Sakamoto; +Cc: alsa-devel
hi,
Am Donnerstag, 18. Juni 2020, 01:32:13 CEST schrieb Takashi Sakamoto:
> > ok, could a hack like this also help me out?
> >
> > http://www.jrigg.co.uk/linuxaudio/ice1712multi.html
>
> Yep, the PCM multi plugin in alsa-lib seems to be available as well.
that's encouraging. now i only have to figure that out ;) never had to deal
with .asoundrc before (which is testament to the hard work of all of you,
thx!).
> From my curiousity, would I ask you extra check in system log (like
> journalctl -k)? ALSA Dice driver supports TCAT protocol extension, and
> it firstly attempts to detect it for all of devices without explicit
> flags (in your case). If the device doesn't support the extension, the
> attempt fails and we can see below log:
>
> ```
> kernel: snd_dice fw1.0: transaction failed: timeout
> ```
here's what i see in journalctl -k when the device is being plugged in:
kernel: firewire_ohci 0000:05:00.0: isochronous cycle inconsistent
kernel: firewire_core 0000:05:00.0: created device fw1: GUID 000a920404af7744,
S400
kernel: firewire_core 0000:05:00.0: phy config: new root=ffc1, gap_count=5
kernel: firewire_core 0000:05:00.0: IRM is not 1394a compliant, making local
node (ffc0) root
kernel: firewire_core 0000:05:00.0: phy config: new root=ffc0, gap_count=5
kernel: snd_dice fw1.0: transaction failed: address error
let me know if you need anything else.
viele grüße :: m.eik
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-18 10:14 ` m.eik michalke
@ 2020-06-18 14:06 ` Takashi Sakamoto
2020-06-18 21:29 ` m.eik michalke
0 siblings, 1 reply; 9+ messages in thread
From: Takashi Sakamoto @ 2020-06-18 14:06 UTC (permalink / raw)
To: m.eik michalke; +Cc: alsa-devel
On Thu, Jun 18, 2020 at 12:14:41PM +0200, m.eik michalke wrote:
> hi,
>
> Am Donnerstag, 18. Juni 2020, 01:32:13 CEST schrieb Takashi Sakamoto:
> > > ok, could a hack like this also help me out?
> > >
> > > http://www.jrigg.co.uk/linuxaudio/ice1712multi.html
> >
> > Yep, the PCM multi plugin in alsa-lib seems to be available as well.
>
> that's encouraging. now i only have to figure that out ;) never had to deal
> with .asoundrc before (which is testament to the hard work of all of you,
> thx!).
The domain specific language in alsa-lib is not so easy to understand
and control. The result affects to all of ALSA applications like pulseaudio.
It's better to use alsa_in/alsa_out for the purpose to avoid unexpected
influences, IMO...
> > From my curiousity, would I ask you extra check in system log (like
> > journalctl -k)? ALSA Dice driver supports TCAT protocol extension, and
> > it firstly attempts to detect it for all of devices without explicit
> > flags (in your case). If the device doesn't support the extension, the
> > attempt fails and we can see below log:
> >
> > ```
> > kernel: snd_dice fw1.0: transaction failed: timeout
> > ```
>
> here's what i see in journalctl -k when the device is being plugged in:
>
> kernel: firewire_ohci 0000:05:00.0: isochronous cycle inconsistent
> kernel: firewire_core 0000:05:00.0: created device fw1: GUID 000a920404af7744,
> S400
> kernel: firewire_core 0000:05:00.0: phy config: new root=ffc1, gap_count=5
> kernel: firewire_core 0000:05:00.0: IRM is not 1394a compliant, making local
> node (ffc0) root
> kernel: firewire_core 0000:05:00.0: phy config: new root=ffc0, gap_count=5
> kernel: snd_dice fw1.0: transaction failed: address error
Thanks. Now we confirm that the device doesn't support the protocol
extension. (And I realize there're two cases; the device doesn't just respond,
or returns RCODE_ADDRESS_ERROR.)
> let me know if you need anything else.
Hm. If you hear sound with periodical noise, please report it. The dice-based
device is known as one of the devices to require drivers for media clock
recovery. In detail, please read the other case[1].
[1] https://mailman.alsa-project.org/pipermail/alsa-devel/2020-May/167413.html
Regards
Takashi Sakamoto
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: presonus StudioLive 24.4.2
2020-06-18 14:06 ` Takashi Sakamoto
@ 2020-06-18 21:29 ` m.eik michalke
0 siblings, 0 replies; 9+ messages in thread
From: m.eik michalke @ 2020-06-18 21:29 UTC (permalink / raw)
To: Takashi Sakamoto; +Cc: alsa-devel
hi,
Am Donnerstag, 18. Juni 2020, 16:06:23 CEST schrieb Takashi Sakamoto:
> The domain specific language in alsa-lib is not so easy to understand
> and control. The result affects to all of ALSA applications like pulseaudio.
> It's better to use alsa_in/alsa_out for the purpose to avoid unexpected
> influences, IMO...
i'll probably try both, and maybe FFADO as well. my goal is a solution that
reliably works when we (my band) start recording again.
it's a pity alsa currently can't transparently take care of this. it looks
like basically everything is in place, but you're left with that IKEA feeling,
a collection of parts and a construction manual in your hand. when you plug in
a 24-channel sound card and alsa successfully detects all of them, as a user
you'd expect the single card that is actually offered by alsa to just provide
all those channels. that the board internally might use mutliple chips is
something you shouldn't have to worry about/figure out. i'd argue there's
exactly one configuration that everyone would expect to get from a board like
this, and that's all channels in one device. it would do no harm to
automatically configure it like this by default. should someone actually
prefer to have split devices for whatever use case, IMHO that should be the
exception to be configured manually.
> > let me know if you need anything else.
>
> Hm. If you hear sound with periodical noise, please report it. The
> dice-based device is known as one of the devices to require drivers for
> media clock recovery. In detail, please read the other case[1].
i'll check it out. we have just bought the board second-hand to replace a
phonic helixboard that broke after ~10 years in our studio. i'm just starting
to get familiar with it and haven't recorded much more than a proof of basic
functionality yet.
viele grüße :: m.eik
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-06-18 21:31 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-16 8:11 presonus StudioLive 24.4.2 m.eik michalke
2020-06-16 12:18 ` Takashi Sakamoto
2020-06-17 13:00 ` m.eik michalke
2020-06-17 13:37 ` Takashi Sakamoto
2020-06-17 16:12 ` m.eik michalke
2020-06-17 23:32 ` Takashi Sakamoto
2020-06-18 10:14 ` m.eik michalke
2020-06-18 14:06 ` Takashi Sakamoto
2020-06-18 21:29 ` m.eik michalke
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.