[LAD] Call for testing (final): ALSA driver for some firewire devices

M Murdock mbf.murdock at gmail.com
Mon May 5 18:21:51 UTC 2014

Hi Takashi,

I was able to perform more tests (still with PulseAudio disabled).

Takashi Sakamoto wrote
> Hi Matt,
> (May 05 2014 12:49), M Murdock wrote:
>> I am testing your FFADO and ALSA drivers for a ProjectMix I/O.  My goal
>> is
>> to get the hardware running in Ardour3 with both a firewire interface and
>> MIDI controls working.  I hope this is possible presently.
>> My configuration:
>> Ubuntu 14.04 (recently upgraded to get kernel 3.13 for your ALSA driver)
>> Installed the 3.11 firewire ALSA driver and the latest SVN FFADO driver
>> I have disabled PulseAudio as described
> Thanks for your trial. At first, I want to confirm which revision of 
> codes you use. What is the latest commit in your local repository for 
> ALSA drivers and which revision of FFADO you use?

*FFADO*: version.h shows "PACKAGE_VERSION 2.1.9999-2504"
svn log --limit 1 shows:
r2504 | jwoithe | 2014-05-03 08:57:38 -0400 (Sat, 03 May 2014) | 1 line

README: some initial editting of device status information in preparation
for the release of FFADO 2.2

*ALSA*: git diff HEAD^ HEAD shows the following
diff --git a/sound/firewire/amdtp.c b/sound/firewire/amdtp.c
index e573f25..29291e4 100644
--- a/sound/firewire/amdtp.c
+++ b/sound/firewire/amdtp.c
@@ -418,7 +418,7 @@ static void amdtp_write_s16(struct amdtp_stream *s,

Takashi Sakamoto wrote
>> Firewire:
>> Your ffado-mixer opens and recognizes the ProjectMix, but I am not able
>> to
>> see any reaction to the ffado-mixer sliders on the ProjectMix hardware.
> Please get logs and report it to me. The 'ffado-mixer' request 
> 'ffado-dbus-server' process to execute I/O from/to devices. So what you 
> do is to get logs from 'ffado-dbus-server'. Follow this instruction:
> 1. Close ffado-mixer
> 2. Open your favorite terminal
> 3. Kill processes of 'ffado-dbus-server' because 'ffado-mixer' starts 
> the process with dbus help
>    $ killall ffado-dbus-server
> 4. run ffado-dbus-server with verbose option
>    $ ffado-dbus-server -v 6
> 5. run 'ffado-mixer'
>    It doesn't matter to run it by GUI/CUI
> 6. read outputs from 'ffado-dbus-server' in the terminal

I followed your request for logging ffado-dbus-server output.  Attached is
the debug file captured with the following:
ffado-dbus-server -v 6 &> /tmp/ffado-dbus-server.out

I started ffado-mixer, played with most of the analoge input sliders,
auxiliary sliders, output sliders, and muted/unmuted channels.  I also
manually adjusted some of the faders on the ProjectMix.  The
ffado-dbus-server was then killed.

I was able to confirm that the headphone volume works through the ProjectMix
hardware when listening to random noise. 

Takashi Sakamoto wrote
>> ALSA:
>> I installed the modules with dkms.  ALSA appears to identify the
>> ProjectMix
>> but I am not able to route sound through aplay or arecord.  I am not able
>> to
>> verify MIDI to or from the ProjectMix.
> In ALSA side, logs are output in /var/log/syslog. So If you have 
> problems, please refer to the file.
> ProjectMix I/O (and Firewire 1814) can change its number of PCM channels 
> according to which digital interfaces are selected for input/output.
> So unless you don't know the rule, 'plughw' instead of 'hw' will be your 
> help. Like:
>   aplay -D plughw:ProjectMix /dev/urandom
>   arecord -D plughw:ProjectMix /dev/null

I was able to record and to play back using aplay and arecord and the
"plughw:ProjectMix" device.  This is great!  I didn't see any logs in syslog
for ALSA.  

I admit that I don't know the difference between "hw:ProjectMix" and
"plughw:ProjectMix".  For instance, how should I start jackd (I use
qjackctl).  Should I use the alsa or firewire driver in qjackctl?  Which
device should I specify, hw:ProjectMix or plughw:ProjectMix?

Takashi Sakamoto wrote
> If you want to switch digital interfaces for input/output, please use 
> amixer/alsamixer:
> $ amixer -c 1
> Simple mixer control 'Clock Source',0
>    Capabilities: enum
>    Items: 'Internal with Digital Mute' 'Digital' 'Word Clock' 'Internal'
>    Item0: 'Internal'
> Simple mixer control 'Digital Input Interface',0
>    Capabilities: enum
>    Items: 'S/PDIF Optical' 'S/PDIF Coaxial' 'ADAT Optical'
>    Item0: 'S/PDIF Coaxial'
> Simple mixer control 'Digital Output Interface',0
>    Capabilities: enum
>    Items: 'S/PDIF Coaxial' 'ADAT Optical'
>    Item0: 'S/PDIF Coaxial'
> Simple mixer control 'Sync Status',0
>    Capabilities: pswitch pswitch-joined
>    Playback channels: Mono
>    Mono: Playback [on]

I was unable to find out where or how to change the PCM channels.  alsamixer
exposes options for clock source, digital input interface (S/PDIF or ADAT)
and digital output interface (S/PDIF or ADAT).  I thought the PCM interfaces
would refer to the physical input and output channels (analogue streams)
available on the ProjectMix.

Takashi Sakamoto wrote
> MIDI functionality may work but there is an issue for Firewire 1814. So 
> I guess ProjectMix I/O also has this issue because these devices are 
> similar. For this issue, please see '2.Data rate for MIDI substream' in 
> this post:
> [alsa-devel] A Restriction and rest of issues for this patchsets
> http://mailman.alsa-project.org/pipermail/alsa-devel/2014-April/075912.html

I would like to test the MIDI functionality, but I believe my jackd
configuration needs attention first.  Insight into how to configure jackd
properly would be much appreciated.



View this message in context: http://linux-audio.4202.n7.nabble.com/Call-for-testing-final-ALSA-driver-for-some-firewire-devices-tp89134p90825.html
Sent from the linux-audio-dev mailing list archive at Nabble.com.

More information about the Linux-audio-dev mailing list