Tascam FW-1804

Back to Tascam

Tascam FW-1804 front view

The latest computer interface solution from TASCAM and Frontier Design Group brings many of the audio and MIDI interface features of the FW-1884 to a rackmountable format with the new FW-1804. It features four great-sounding XLR microphone inputs with analog inserts and phantom power for professional condenser mics. An additional four line inputs are provided, plus ADAT and S/PDIF digital connection for a total of 18 inputs and 12 outputs. Two MIDI inputs and four MIDI outputs round out the interfacing with pro touches like word clock and a guitar-level input.

Device internals

  • PDI1394P23BD
  • PDI1394L40BE
  • XC2S100 (SPARTAN-II 2.5V FPGA FAMILY)
  • XILINX XC9536XL
  • ATMEL AT91M42800A

Device initialization

A full description of a device initialization routine is given here: Tascam/FW-1804/Device_initialization
Below is the FW-1804 initialization packets list sent by the driver after Bus Reset:

Device  Address              Length    Phase  Data                                                Description       Cmd.Phase.Ofs(rep)
------  -------------------  --------  -----  --------------------------------------------------  ----------------  ------------------
  38                                   RESET                                                                               1.1.0(2)     
  38    ffc0 ffff 0000 0208         4  OUT    00 00 00 00                                         ....                     3.1.0        
  38                                   NTSTS  c0120090                                            wrong generation         3.2.0        
  38                                   RESET                                                                               4.1.0(2)     
  38    ffc0 ffff 0000 0208         4  OUT    00 00 00 00                                         ....                     6.1.0        
  38    ffc0 ffff 0000 0210         4  OUT    00 00 00 00                                         ....                     7.1.0        
  38    ffc0 ffff 0000 022c         4  OUT    00 00 20 00                                         .. .                     8.1.0        
  38    ffc0 ffff 0000 0200         4  OUT    00 00 00 00                                         ....                     9.1.0        
  38    ffc0 ffff 0000 0200         4  IN     00 00 00 00                                         ....                    10.1.0        
  38    ffc0 ffff 0000 0204         4  OUT    00 00 00 02                                         ....                    11.1.0        
  38    ffc0 ffff 0000 0204         4  IN     00 00 00 02                                         ....                    12.1.0        
  38    ffc0 ffff 0000 020c         4  OUT    00 00 00 01                                         ....                    13.1.0        
  38    ffc0 ffff 0000 020c         4  IN     00 00 00 01                                         ....                    14.1.0        
  38    ffc0 ffff 0000 022c         4  OUT    00 20 00 00                                         . ..                    15.1.0        
  38    ffc0 ffff 0000 0214         4  OUT    00 00 00 00                                         ....                    16.1.0        
  38    ffc0 ffff 0000 0218         4  OUT    00 00 00 03                                         ....                    17.1.0        
  38    ffc0 ffff 0000 021c         4  OUT    00 00 00 0d                                         ....                    18.1.0        
  38    ffc0 ffff 0000 0228         4  OUT    00 00 01 01                                         ....                    19.1.0        
  38    ffc0 ffff 0000 0208         4  OUT    00 00 00 01                                         ....                    20.1.0        
  38    ffc0 ffff 0000 0210         4  OUT    00 00 00 01                                         ....                    21.1.0        
  38    ffc0 ffff 0000 0404         4  OUT    00 01 00 8e                                         ....                    22.1.0        
  38    ffc0 ffff 0000 0304         4  OUT    ff c1 00 01                                         ....                    23.1.0        
  38    ffc0 ffff 0000 0308         4  OUT    00 00 00 00                                         ....                    24.1.0        
  38    ffc0 ffff 0000 0300         4  OUT    00 00 00 01                                         ....                    25.1.0        
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                26.1.0(3)     
  38                     0h      1220  ISOC   f0 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        29.1.0        
                                              ea 25 ea 25  00 00 00 00  ea 26 ea 26  00 00 00 00  .%.%.....&.&....        29.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                30.1.0        
  38                     0h      1220  ISOC   f1 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        31.1.0        
                                              ea 2b ea 2b  00 00 00 00  ea 2c ea 2c  00 00 00 00  .+.+.....,.,....        31.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                32.1.0        
  38                     0h      1220  ISOC   f2 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        33.1.0        
                                              ea 30 ea 30  00 00 00 00  ea 31 ea 31  00 00 00 00  .0.0.....1.1....        33.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                34.1.0        
  38                     0h      1220  ISOC   f3 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        35.1.0        
                                              ea 36 ea 36  00 00 00 00  ea 37 ea 37  00 00 00 00  .6.6.....7.7....        35.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                36.1.0        
  38                     0h      1220  ISOC   f4 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        37.1.0        
                                              ea 3b ea 3b  00 00 00 01  ea 3c ea 3c  00 00 00 00  .;.;.....<.<....        37.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                38.1.0        
  38                     0h      1220  ISOC   f5 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        39.1.0        
                                              ea 41 ea 41  00 00 00 00  ea 42 ea 42  00 00 00 00  .A.A.....B.B....        39.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                40.1.0        
  38                     0h      1220  ISOC   f6 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        41.1.0        
                                              ea 46 ea 46  ff ff ff ff  ea 47 ea 47  ff ff ff ff  .F.F.....G.G....        41.1.16       
  38                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                42.1.0        
  38                     0h      1220  ISOC   f7 e9 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        43.1.0        
                                              ea 4c ea 4c  00 00 00 00  ea 4d ea 4d  00 00 00 00  .L.L.....M.M....        43.1.16       

Isochronous mode

Seems like only two channels are used for isochronous operation:

  • Channel 0: listening
  • Channel 1: talking

Below are the packets that driver sends when device is idle:

Device  Address              Length    Phase  Data                                                Description       Cmd.Phase.Ofs(rep)
------  -------------------  --------  -----  --------------------------------------------------  ----------------  ------------------
  37                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                52.1.0(3)     
  37                     0h      1220  ISOC   aa d7 00 84  a0 40 08 00  00 02 00 00  9e 00 00 00  .....@..........        55.1.0        
                                              00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................        55.1.16       
                                              00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................        55.1.32       
                                              00 00 00 00  00 00 00 00                            ........                55.1.48       
  37                     1h         8  ISOC   01 00 00 00  be 00 00 00                            ........                56.1.0        
  37                     0h      1220  ISOC   ab d7 51 84  a0 40 08 00  00 02 00 00  9e 00 00 00  ..Q..@..........        57.1.0        
                                              00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................        57.1.16       
                                              00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00  ................        57.1.32       
                                              00 00 00 00  00 00 00 00                            ........                57.1.48       

Here are the packets sent while the device is in audio transmission mode:

Device  Address              Length    Phase  Data                                                Description       Cmd.Phase.Ofs(rep)
------  -------------------  --------  -----  --------------------------------------------------  ----------------  ------------------
  33                     1h        48  ISOC   01 02 00 db  be 00 00 00  07 43 00 00  10 d1 00 00  .........C......         1.1.0        
                                              06 f1 00 00  10 57 00 00  06 e5 00 00  10 00 00 00  .....W..........         1.1.16       
                                              07 7d 00 00  0f a5 00 00  08 46 00 00  0f b7 00 00  .........F......         1.1.32       
  33                     0h      1220  ISOC   6d 3a 51 94  a0 40 38 00  00 02 00 9d  9e 00 00 00  m:Q..@8.........         2.1.0        
                                              8d 28 8d 28  00 00 00 00  8d 29 8d 29  00 00 00 00  .(.(.....).)....         2.1.16       
                                              8d 2a 8d 2a  00 00 00 00  8d 2b 8d 2b  00 00 00 00  .*.*.....+.+....         2.1.32       
                                              8d 2c 8d 2c  00 00 00 00                            .,.,....                 2.1.48       
  33                     1h        56  ISOC   01 02 00 e0  be 00 00 00  07 c9 00 00  0f a6 00 00  ................         3.1.0        
                                              06 c1 00 00  0f 1b 00 00  06 67 00 00  0e 84 00 00  .........g......         3.1.16       
                                              07 3f 00 00  0e 9f 00 00  07 d4 00 00  0e 8f 00 00  .?..............         3.1.32       
                                              07 7a 00 00  0d df 00 00                            .z......                 3.1.48       
  33                     0h      1220  ISOC   6e 3a 51 94  a0 40 30 00  00 02 00 a3  9e 00 00 00  n:Q..@0.........         4.1.0        
                                              8d 2e 8d 2e  00 00 00 00  8d 2f 8d 2f  00 00 00 00  ........././....         4.1.16       
                                              8d 30 8d 30  00 00 00 00  8d 31 8d 31  00 00 00 00  .0.0.....1.1....         4.1.32       
                                              8d 32 8d 32  00 00 00 00                            .2.2....                 4.1.48       
  33                     1h        48  ISOC   01 02 00 e6  be 00 00 00  06 f8 00 00  0d 75 00 00  .............u..         5.1.0        
                                              06 41 00 00  0d 27 00 00  05 f3 00 00  0c 8b 00 00  .A...'..........         5.1.16       
                                              06 54 00 00  0c 4f 00 00  06 b3 00 00  0c 68 00 00  .T...O.......h..         5.1.32       
  33                     0h      1220  ISOC   6f 3a 51 94  a0 40 38 00  00 02 00 a8  9e 00 00 00  o:Q..@8.........         6.1.0        
                                              8d 33 8d 33  00 00 00 00  8d 34 8d 34  01 01 01 01  .3.3.....4.4....         6.1.16       
                                              8d 35 8d 35  00 00 00 00  8d 36 8d 36  1c 96 00 00  .5.5.....6.6....         6.1.32       
                                              8d 37 8d 37  18 2e ff 00                            .7.7....                 6.1.48       
  33                     1h        56  ISOC   01 02 00 eb  be 00 00 00  06 54 00 00  0c 1a 00 00  .........T......         7.1.0        
                                              06 5d 00 00  0b e6 00 00  06 5d 00 00  0c 04 00 00  .].......]......         7.1.16       
                                              05 ab 00 00  0b c6 00 00  06 2f 00 00  0b 99 00 00  ........./......         7.1.32       
                                              06 ff 00 00  0b 4a 00 00                            .....J..                 7.1.48       
  33                     0h      1220  ISOC   70 3a 51 94  a0 40 30 00  00 02 00 ae  9e 00 00 00  p:Q..@0.........         8.1.0        
                                              8d 39 8d 39  00 00 00 00  8d 3a 8d 3a  00 00 00 00  .9.9.....:.:....         8.1.16       
                                              8d 3b 8d 3b  00 00 00 01  8d 3c 8d 3c  00 00 00 00  .;.;.....<.<....         8.1.32       
                                              8d 3d 8d 3d  00 00 00 00                            .=.=....                 8.1.48       
  33                     1h        56  ISOC   01 02 00 f1  be 00 00 00  06 9b 00 00  0a d6 00 00  ................         9.1.0        
                                              06 35 00 00  0b 2b 00 00  06 9e 00 00  0b a3 00 00  .5...+..........         9.1.16       
                                              06 a0 00 00  0b 41 00 00  06 62 00 00  0a 69 00 00  .....A...b...i..         9.1.32       
                                              06 2d 00 00  0a 36 00 00                            .-...6..                 9.1.48       
  33                     0h      1220  ISOC   71 3a 51 94  a0 40 38 00  00 02 00 b3  9e 00 00 00  q:Q..@8.........        10.1.0        
                                              8d 3e 8d 3e  00 00 00 00  8d 3f 8d 3f  00 00 00 00  .>.>.....?.?....        10.1.16       
                                              8d 40 8d 40  00 00 00 00  8d 41 8d 41  00 00 00 00  .@.@.....A.A....        10.1.32       
                                              8d 42 8d 42  00 00 00 00                            .B.B....                10.1.48       

The xmit ISOC packets on channel 1 seems to contain a kind of header:

SID = 0x01              // some ID which is always = 0x01
CHN = 0x00 или 0x02     // a number of channels
FL1 = 0x00              // unknown
DBС = 0xXX              // a kind of block counter
FL2 = 0xBE              // unknown
FL3 = 0x00              // unknown
FL4 = 0x00              // unknown
FL5 = 0x00              // unknown

The xmit packets are either 8, 48 or 56 bytes long. The recv packets are always 1220 bytes long.
Here are the results of an audio test (Tascam/FW-1804/AudioTest) to discover which bytes contain an audio data.

Device registers

These are described on an additional Tascam/FW-1804/Device_registers page.

Other helpful sources