Table of Contents

DS Linker Writer/N-Card (Slot-2 USB cart)

The DS Linker Writer (also known as the N-Card, ExpressCard, DS Fire Link, etc.) is a Slot-2 GBA cartridge with an USB controller; in combination with a software USB stack running on the DS itself, it allows the console to act as an USB device.

Two variants exist:

To identify the variant in your possesion, you can use nrio-usb-disk (linked below), which displays the detected chip ID:

Alternatively, you can compare the PCB with photos available below.

Software

Implementations

Photos

Cartridges

Note that the casing color may differ between batches.

D12

D14

(Source: ApacheThunder, Disturbo)

Notes:

PCBs

(Source: SylverReZ)

ExpressCard Writer (D14)

(Source: SylverReZ)

N-Card (D14)

(Source: Disturbo)

Wiring

D14 (ISP1581)

The DS Linker Writer uses an ISP1581 (or clone, depending on batch) USB controller and a 12 MHz crystal.

In theory, it should be possible to replace the chip with an ISP1582 or ISP1583 in newer designs while maintaining compatibility.

TODO: Mark power pin connections?

                                  _____
                                 /     \
                           DGND / 1  64 \ VCC(3.3)
                      VCC(5.0) / 2 _  63 \ TEST
                         AGND / 3 / \  62 \ WAKEUP
                   VCCA(3.3) / 4  \_/   61 \ DGND
               USB D- <> D- / 5          60 \ XTAL1 <- 12 MHz oscillator
              USB D+ <> D+ / 6            59 \ XTAL2 -> 12 MHz oscillator
                      RPU / 7              58 \ VCC(3.3)
                    RREF / 8                57 \ DATA15 <> GBA AD15
                  MODE1 / 9                  56 \ DATA14 <> GBA AD14
                /RESET / 10                   55 \ DATA13 <> GBA AD13
                  EOT / 11                     54 \ DATA12 <> GBA AD12
                DREQ / 12                       53 \ DATA11 <> GBA AD11
               DACK / 13                         52 \ DATA10 <> GBA AD10
              DIOR / 14                           51 \ DATA9 <> GBA AD9
             DIOW / 15                             50 \ DATA8 <> GBA AD8
           INTRQ / 16                               49 \ DATA7 <> GBA AD7
                /                                       \
                \          Philips/NXP ISP1581          /
            /CS1 \ 17                               48 / DATA6 <> GBA AD6
             /CS0 \ 18                             47 / DATA5 <> GBA AD5
               DA0 \ 19                           46 / DATA4 <> GBA AD4
                DA1 \ 20                         45 / DATA3 <> GBA AD3
                 DA2 \ 21                       44 / DATA2 <> GBA AD2
                READY \ 22                     43 / VCC(3.3)
                  DGND \ 23                   42 / DGND
               VCC(3.3) \ 24                 41 / DATA1 <> GBA AD1
           GBA /CS <-/CS \ 25               40 / DATA0 <> GBA AD0
           GBA /RD <- /RD \ 26             39 / AD7 <- GBA A23
            GBA /WR <- /WR \ 27           38 / AD6 <- GBA A22
           GBA /IREQ <- INT \ 28         37 / VCC(3.3)
                          A0 \ 29       36 / DGND
               GBA A16 -> AD0 \ 30     35 / AD5 <- GBA A21
                GBA A17 -> AD1 \ 31   34 / AD4 <- GBA A20
                 GBA A18 -> AD2 \ 32 33 / AD3 <- GBA A19
                                 \     /   
                                  \   /
                                   \ /      
                                    V
                                    
                            GBA cartridge port
                            
                    |________________________________|
                    |:                              :|
                    |::::::::::::::::::::::::::::::::|
                  1 |::::::::::::::::::::::::::::::::| 32 
                     |||||||||||||||||||||||||||||||'- /GND
                     ||||||||||||||||||||||||||||||'- /IREQ           
                     |||||||||||||||||||||||||||||'- /CS2
                     |||||||||||||||||||||'+++++++- A16-23
                     |||||||||||||||||||||
                     |||||'+++++++++++++++- AD0-15
                     ||||'- /CS
                     |||'- /RD
                     ||'- /WR
                     |'- PHI
                     '- VDD                     

D12 (PDIUSBD12) variant

A much rarer, alternate design uses a PDIUSBD12 chip instead, configured with a separate address/data bus.

In theory, it should be possible to replace the chip with an FT120, a modern replacement chip, while maintaining compatibility. However, minor differences exist, and this has not been tested on actual hardware.

TODO: Mark power pin connections?

                        /\
                       /  \
                      /    \
                      :  28 \ A0 <- GBA A16?
                    _./   27 \ VOUT(3.3)
                   /       26 \ D+ <> USB D+
                  /  o      25 \ D- <> USB D-
 GBA AD0 <> DATA0 \ 1        24 \ VDD
  GBA AD1 <> DATA1 \ 2    P   23 \ XTAL2 -> 12 MHz oscillator
   GBA AD2 <> DATA2 \ 3    D   22 \ XTAL1 <- 12 MHz oscillator
    GBA AD3 <> DATA3 \ 4    I   21 \ GL_N -> LED
           GND -- GND \ 5    U   20 \ /RESET <- GBA AD8?
      GBA AD4 <> DATA4 \ 6    S   19 \ /EOT
       GBA AD5 <> DATA5 \ 7    B   18 \ /DMACK 
        GBA AD6 <> DATA6 \ 8    D   17 \ DMREQ
         GBA AD7 <> DATA7 \ 9    1   16 \ /WR <- GBA /WR
                GND -- ALE \ 10   2   15 \ /RD <- GBA /RD
             GBA /CS -> /CS \ 11         /
                     SUSPEND \ 12       /
                       CLKOUT \ 13     /
             GBA /IREQ <- /INT \ 14   /
                                \    /
                                 \  /
                                  \/

* ISP1581 datasheet (Rev 06)