Firebox

Support Status: 
Reported to work
Manufacturer: 
Presonus
Platform: 

Comments

Just got my Firepod working in ubuntustudio 10.04. Very easy setup (packages only; no source compiling). Everything looks great so far:
- jack reports 6 inputs and 8 outputs.
- I am able to record 4 channels simultaneously while playing back through the headphones.
- Getting a latency of about 2ms is cake for my aging laptop. I can get down to 0.7ms latency without any xruns, but this pushes the CPU pretty hard.
- It appears that ffado mixer controls are not implemented for this device, but that's a minor issue for me.

Thanks for your excellent work, devs!

I can't make it work. Y have a Firebox (not FIREPOD like the post above) and I just can't make it work =(.

if you really have a firepod, you won't see any mixer because the device doesn't have one. But then you should also see ten inputs and ten outputs in jack.

the firebox on the other hand seems to need the channels unmuted. I don't know whether the experimental mixer in developers trunk actually provides this. Otherwise you will have to un-mute with the other os...

Works with Ubuntu 10.10 out of the box.
No mixer, but that's not the end of the earth.

Glad to hear that!!, can you describe some steps for the newbies like myself?

Im from Italy and im trying to solve the troubls to install Firebox i installed FFado and Jack but no works pls anybody can help me?
Thanks

Ok, i'm from france and i made it work on Ubuntu Studio 10.04

So first what you have to do is to launch ffado-mixer... but actually it didn't work
Then, you can go to your terminal and start typing:

$ ffado-dbus-server

After that, you can lauch graphically ffado-mixer: Applications->Sound&Video->ffado-mixer

If your card is recognized, you can start jack and configure it with firewire settings
Remember to always have a look to the jack's messages window, and if you see any error message you can google it and find a solution

The firebox manual mentions the presonus software has a 12dB boost switch for all channels.
Anyone know if this is on or off by default with ffado and how to reverse it.

the 12 db boost is a physical switch on th eface of the firebox, i do not think it is controlled by software.

Thought someone might be interested - I've just got a firebox from ebay and am running it beside my firepod.
qjackctl shows 16 capture and 18 playback.
/usr/bin/jackd -dfirewire -r88200 -p32 -n3
latency 1.09 msec according to qjackctl
ubuntustudio 10.04, 2.6.31-11-rt
Asus P5Q deluxe motherboard with Agere Systems FW322/323 (rev 70)
Seems stable.

I was able to daisy chain two of these devices on Ubuntu Studio 12.04. This was done despite Presonus saying daisy chaining is not supported. So we thank FFADO for this!

Daisy chaining worked straight up, no special configuration. 12 inputs, 20 out.

I've tested my PreSonus FireBox with FFADO 2.2.1, all of the channels on the FireBox are supported (http://www.presonus.com/products/FireBox - the URL changed). In MS Windows and OS X, a mixer software package is included with the drivers. The GUI of the mixer looks like this:

- http://media.soundonsound.com/sos/jul05/images/presonusfirebox01.l.jpg

Unfortunately, FFADO-Mixer does not seem to support any of the software channels. When I run FFADO-Mixer, I get four volume sliders which appear to do nothing and four balance sliders which also appear to do nothing. However, the most important feature that is missing is the hardware monitoring. The software drivers allow the user to select which inputs to be hardware monitored directly to the headphone jack. The lowest-latency workaround for monitoring that I have found is to within JACK connect the input source you are using to both the Left and Right main output channels, which are also sent to the headphone jack. There is a slight latency in doing this because the signal is being processed by the PC, but the latency is noticeably less than doing monitoring within a DAW (tested with Ardour3).

As a workaround, I have tried using MS Windows in VirtualBox with the official PreSonus drivers to enable/disable hardware monitoring, but since FireWire 1394 is not supported in VirtualBox (and does not seem to be in the roadmap), this is not a suitable/working workaround.

I have posted to the ffado-users mailing list in hopes to find a solution to this issue, or to assist in implementing this feature:

- http://sourceforge.net/mailarchive/forum.php?thread_name=515A32C8.300090...

Other than the hardware monitoring issue and lack of access to the mixer, all of the channels are supported and work out of the box.

As suggested in the mailing list thread you refer to, investigating why the ffado mixer controls you see don't appear to have any effect on the device would require access to an example device. I have not dealt with the Presonus devices or their driver at all so I can't really suggest anything to try. I'm not sure whether the presence of those mixer controls indicate that they used to work (perhaps with an earlier Firebox firmware), or if they're simply being created speculatively by ffado based on information supplied by the device when probed.

The issue with the hardware monitoring is closely related to the mixer. Collectively the mixer and the hardware monitoring are all controlled using the same types of commands. If one had a chance to work on the mixer controls, the monitoring side of things would be investigated and dealt with along with it.

Regarding the use of VirtualBox, I think recent versions support PCI passthrough if the host PC is sufficiently modern (from memory it requires an IOMMU). The downside to this is that VirtualBox requires exclusive access to the card, so the OHCI kernel driver would have to be unloaded (I think) for this to work. None-the-less, it may be possible to use PCI passthrough with VirtualBox to set up the monitoring. After closing that down you could then load the OHCI kernel module and use jackd in the usual way. While potentially doable as a workaround, it is fiddly and certainly is not a long-term solution.

Hi !

I can't make work my presonus firebox on debian wheezy, she work fine in TangoStudio (based on ubuntu 10.04)

Jackd freeze when i start it and i have to reset power of the firebox to have Jackd'result messages
22:43:43.558 /usr/bin/jackd -dfirewire -r48000 -p2048 -n3
22:43:43.577 JACK a été démarrer avec le PID=5511.
no message buffer overruns
no message buffer overruns
no message buffer overruns
jackdmp 1.9.9.5
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2012 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
JACK server starting in realtime mode with priority 10
libffado 2.1.9999- built Dec 19 2012 23:09:34
22:44:45.463 Impossible de connecter le serveur JACK comme client. - L'opération a échoué. - Erreur de communication serveur. Veuillez consulter la fenêtre des messages pour plus d'informations.
22:44:45.528 JACK s'arrête...
firewire ERR: Could not start streaming threads
Cannot start driver
JackServer::Start() failed with -1
Failed to start server
Cannot read socket fd = 10 err = Connexion ré-initialisée par le correspondant
CheckRes error
Could not read result type = 22
Client name = qjackctl conflits with another running client
Cannot connect to the server

Here some informations:

FFADO diagnostic utility 2.1.9999-
============================
(C) 2008 Pieter Palmers
2009-2010 Arnold Krille

=== CHECK ===
Base system...
kernel version............ 3.2.0-4-realtime-686-pae
Preempt (low latency)... False
RT patched.............. True
old 1394 stack present.... False
old 1394 stack loaded..... False
old 1394 stack active..... False
new 1394 stack present.... True
new 1394 stack loaded..... True
new 1394 stack active..... True
/dev/raw1394 node present. False
/dev/fw* permissions:
crwxrwxrwx 1 root video 252, 0 avril 29 2013 /dev/fw0
crw-rw---T+ 1 root video 252, 1 avril 29 2013 /dev/fw1
User IDs:
uid=1000(manu) gid=1000(manu) groupes=1000(manu),4(adm),6(disk),21(fax),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),104(scanner),107(lpadmin),110(netdev),111(bluetooth),113(fuse)
Prerequisites (dynamic at run-time)...
gcc ............... gcc (Debian 4.7.2-5) 4.7.2
g++ ............... g++ (Debian 4.7.2-5) 4.7.2
PyQt4 (by pyuic4) . Python User Interface Compiler 4.9.3 for Qt version 4.8.2
jackd ............. no message buffer overruns
path ............ /usr/bin/jackd
flags ........... -I/usr/local/include -L/usr/local/lib -ljack
libraw1394 ........ 2.0.9
flags ........... -lraw1394
libavc1394 ........ 0.5.4
flags ........... -lavc1394 -lrom1394 -lraw1394
libiec61883 ....... 1.2.0
flags ........... -liec61883 -lraw1394
libxml++-2.6 ...... 2.34.2
flags ........... -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 -I/usr/lib/i386-linux-gnu/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib/i386-linux-gnu/sigc++-2.0/include -I/usr/include/libxml++-2.6 -I/usr/lib/libxml++-2.6/include -L/usr/local/lib -lxml++-2.6 -lxml2 -lglibmm-2.4 -lgobject-2.0 -lsigc-2.0 -lglib-2.0
dbus-1 ............ 1.6.8
flags ........... -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -ldbus-1
Prerequisites (static at compile-time)...
gcc ............... gcc (Debian 4.7.2-4) 4.7.2
g++ ............... g++ (Debian 4.7.2-4) 4.7.2
PyQt4 (by pyuic4) . Python User Interface Compiler 4.9.3 for Qt version 4.8.2
jackd ............. sh: 1: jackd: not found
path ............
flags ........... Package jack was not found in the pkg-config search path.
libraw1394 ........ 2.0.9
flags ........... -lraw1394
libavc1394 ........ Package libavc1394 was not found in the pkg-config search path.
flags ........... Package libavc1394 was not found in the pkg-config search path.
libiec61883 ....... 1.2.0
flags ........... -liec61883 -lraw1394
libxml++-2.6 ...... 2.34.2
flags ........... -I/usr/include/libxml2 -I/usr/include/glibmm-2.4 -I/usr/lib/i386-linux-gnu/glibmm-2.4/include -I/usr/include/sigc++-2.0 -I/usr/lib/i386-linux-gnu/sigc++-2.0/include -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/libxml++-2.6 -I/usr/lib/libxml++-2.6/include -lxml++-2.6 -lxml2 -lglibmm-2.4 -lgobject-2.0 -lsigc-2.0 -lglib-2.0
dbus-1 ............ 1.6.8
flags ........... -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -ldbus-1
uname -a...
Linux tangodebian 3.2.0-4-realtime-686-pae #1 SMP PREEMPT RT Debian 3.2.41-2+tstudio.1 i686 GNU/Linux
Hardware...
Host controllers:
01:0a.0 FireWire (IEEE 1394) [0c00]: O2 Micro, Inc. Firewire (IEEE 1394) [1217:00f7] (rev 02) (prog-if 10 [OHCI])
Subsystem: Uniwill Computer Corp Device [1584:300b]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- SERR-
Kernel driver in use: firewire_ohci

CPU info:
Architecture : i686
Mode(s) opératoire(s) des processeurs : 32-bit, 64-bit
Boutisme : Little Endian
Processeur(s) : 2
Liste de processeur(s) en ligne : 0,1
Thread(s) par cœur : 1
Cœur(s) par socket : 2
Socket(s) : 1
Identifiant constructeur : GenuineIntel
Famille de processeur : 6
Modèle : 15
Révision : 6
Vitesse du processeur en MHz : 996.000
BogoMIPS : 3989.81
Virtualisation : VT-x
Cache L1d : 32K
Cache L1i : 32K
Cache L2 : 4096K
Configuration...
IRQ information
Hardware Interrupts:
--------------------
IRQ 0: PID: None, count: [107223, 0], Sched None (priority None), drivers: ['timer']
IRQ 1: PID: None, count: [9, 0], Sched None (priority None), drivers: ['i8042']
IRQ 8: PID: None, count: [1, 0], Sched None (priority None), drivers: ['rtc0']
IRQ 9: PID: None, count: [19147, 0], Sched None (priority None), drivers: ['acpi']
IRQ 12: PID: None, count: [144, 0], Sched None (priority None), drivers: ['i8042']
IRQ 14: PID: None, count: [14249, 0], Sched None (priority None), drivers: ['ata_piix']
IRQ 15: PID: None, count: [81, 0], Sched None (priority None), drivers: ['ata_piix']
IRQ 16: PID: None, count: [1729, 0], Sched None (priority None), drivers: ['uhci_hcd:usb5', 'i915']
IRQ 17: PID: None, count: [3368, 0], Sched None (priority None), drivers: ['sata_sil24']
IRQ 18: PID: None, count: [98, 0], Sched None (priority None), drivers: ['mmc0', 'uhci_hcd:usb4', 'firewire_ohci']
IRQ 19: PID: None, count: [0, 0], Sched None (priority None), drivers: ['uhci_hcd:usb3']
IRQ 23: PID: None, count: [5968, 0], Sched None (priority None), drivers: ['ehci_hcd:usb1', 'uhci_hcd:usb2']
IRQ 43: PID: None, count: [2335, 0], Sched None (priority None), drivers: ['eth0']
IRQ 44: PID: None, count: [0, 0], Sched None (priority None), drivers: ['iwl3945']
IRQ 45: PID: None, count: [146, 0], Sched None (priority None), drivers: ['snd_hda_intel']

Software Interrupts:
--------------------

=== REPORT ===
FireWire kernel drivers:

The new FireWire kernel stack is loaded.
If running a kernel earlier than 2.6.37 and problems are experienced, either
try with the old Firewire kernel stack or upgrade to a newer kernel
(preferrably 2.6.37 or later).

-----------------------------------------------
FFADO test and diagnostic utility
Part of the FFADO project -- www.ffado.org
Version: 2.1.9999-
(C) 2008, Daniel Wagner, Pieter Palmers
This program comes with ABSOLUTELY NO WARRANTY.
-----------------------------------------------

=== 1394 PORT 0 ===
Node id GUID VendorId ModelId Vendor - Model
0 0x000a9200d6082487 0x00000A92 0x00010000 Presonus - PreSonus FIREBOX
1 0x00030d49200056d3 0x0000030D 0x00000000 Linux Firewire -

-----------------------------------------------

[$] → ls -la /dev/fw*
crw-rw---T 1 root video 252, 0 avril 29 2013 /dev/fw0
crw-rw---T+ 1 root video 252, 1 avril 29 2013 /dev/fw1


Someone can help me please ?

And sorry for my bad English (nobody is perfect)

For future reference, this issue was subsequently taken up on the ffado-user mailing list in April/May 2013. The thread subject was "Firebox don't work on my debian wheezy". At the time of writing investigations continue, but the O2 Micro firewire controller may have something to do with it.