Linksys WRTSL54GS

This device is NOT RECOMMENDED for future use with OpenWrt due to low flash/ram.
DO NOT BUY DEVICES WITH 4MB FLASH / 32MB RAM if you intend to flash an up-to-date and secure OpenWrt version onto it! See 4/32 warning for details.

1) This device does not have sufficient resources (flash and/or RAM) to provide secure and reliable operation.
This means that even setting a password or changing simple network settings might not be possible any more, rendering the device effectively useless. See OpenWrt on 4/32 devices what you can do now.

2) OpenWrt support for this device has ended in 2022.
19.07.10 was the last official build for 4/32 devices.

The Linksys WRTSL54GS is a wireless router similar to the WRT54G series, with a single USB port.

Install OpenWrt (generic explanation)

FIXME Please add the installation procedure here.

Architecture MIPS
Vendor Broadcom
Bootloader CFE
System-On-Chip BCM4704KPB
CPU Speed 266MHz
Flash-Chip Intel TE28F640J3C-120
Flash size 8MB
RAM 32MB
Wireless Broadcom BCM4318EKFBG
Ethernet Broadcom BCM5325FKQM
USB NEC D720101F1
Serial 2 internal (pads only)
JTAG internal (pads only)
                     .-OpenWrt---------------------.
                     | .-----.                     |
                     | | br0 |--------------.      |
                     | '-----'              |      |
                     |    |                 |      |
                     | .------. .------. .-------. |
                     '-| eth0 |-| eth1 |-| wlan0 |-'
                       '------' '------' '-------'
                          |        |        |
                          |        '---.    |
    .-switch--------------|----------. |    |
    | .-vlan0-------------|--.       | |    |
    | |                .--|--+-vlan1 | |    |
    | |[0] [1] [2] [3] | [5] | [4] | | |    |
    | '-|---|---|---|--+-----'     | | |    |
    |   |   |   |   |  '-----------' | |    |
    '---|---|---|---|----------------' |    |
        |   |   |   |      .-----------'    |
        |   |   |   |      |       .--------'
        |   |   |   |      |       |
    .---|---|---|---|------|-------|----.
    |  [1] [2] [3] [4]   [wan]   [wifi] |
    '-case------------------------------'

This design is different from many units which use a single interface to handle both LAN & WAN traffic, so performance should be better.

Note that internal switch port 4 is not externally available.

As this is a USB device, the easiest way to add a serial port is to connect a USB-to-serial adapter cable, either directly to the onboard USB port or through a standard USB hub. Kernel drivers are provided for a few of the most common USB-to-serial adapters.

However, if you have installed OpenWrt, you will have noticed that two serial ports (/dev/tts/0 and /dev/tts/1) are already being detected by the kernel. These are internal to the unit, but lack a level-converter (a chip such as the MAX3232 will do the trick) and external connectors to bring them outside the box. The two internal serial ports do not provide RS232 handshaking signals; they do provide serial data in both directions.

2 serial ports in a 2×5 (10-pin) block near front of board, console on ttyS0 at 115,200 baud. No hardware flow control available. Pins are arranged in exact configuration for addition of an IDC-10 ribbon-cable connector. Unfortunately Linksys did not put one there so you will have to add your own. The signal from the WRT board is 3.3 Volt TTL however, so you cannot simply wire to a standard RS-232 connector as they operate at 12 Volts. You will need a circuit to convert the 3.3 Volt signal to a level that is usable by a host.

connector 1 2 3 4 5 defaults usage
JP4(ttyS0) 3.3v TX RX NC GND 115,200 baud, 8-n-1, none console root shell
JP3(ttyS1) 3.3v TX RX NC GND 9,600 baud, 8-n-1, none unused

When soldering to these connections, particularly pin 5, you need to apply quite a lot of heat. If you can, applying an iron to each side of the board helps.

See Serial Console for discussion on wiring up serial ports. Possibly the easiest way is with a USB-serial adapter with 3.3V levels, such as the FTDI TTL-232R-3V3. This terminates in a standard 1/8“ stereo jack, which makes for a neat external interface. Alternatively, a mobile-phone cable such as the DKU-5 can be easily modified to terminate in a stereo jack.

wrtsl54gs_serial.jpg

stereo-jack connector

tip(1) ring(2) sleeve(3)
TX RX GND

You have to cross TX and RX wires from the plug to the WRT board.

wiring diagram examples:

plug to WRTSL54GS
1(TX) JP4-3(RX)
2(RX) JP4-2(TX)
3(GND) JP4-5(GND)

Note: When selecting the audio jack, make sure that the threaded end is long enough to poke through your case and still be able to attach the nut that secures it. Many common stereo plugs are for use with a thin metal faceplate and do not have sufficient depth of thread. The one pictured above is from Altex Electronics part number 502K, vincentfox reports that an identical part is available from Fry's/Outpost.com, Mfg Philmore, part number 504K.

GPIO# Direction Location Name Function
0 output LEDC15 DMZ LED - DMZ
1 output LEDC9 POWER LED LED - Power
2 output RA59(back) ? ?
3 output RA60(back) ? ?
4 input PSW2 button Button - SES
5 output LEDC13 SES white LED - SES white
6 input PSW1 RESET Button - reset
7 output LEDC14 SES amber LED - SES amber

Since this part is identical for all devices, see Basic configuration.

To connect stuff to the USB port, please see Connect stuff to the USB port.

wrtsl54gs_jtag.jpg

No JTAG header is available. However, all basic pins are present on test points.

SRST and TRST haven't been identified, but ignoring them doesn't prevent JTAG from operating.

Be warned that soldering or probing on test points is fairly tricky. If you are using a cheap unbuffered cable, you only need to solder 5 wires since you won't be using Vcc line.

Both Xilinx and Wiggler cables should work - see JTAG Cables.

HairyDairyMaid's debricker is working, but currently requires /skipdetect and instrlen:8 options since the 4704 isn't in the list of supported processors. The 28F640J3 flash in the SL is in the known parts list of the debricker.

The board has tracking and mounting holes for a stacked dual-USB port, although it is only a single port is fitted. As an alternative to adding an external USB hub, remove the existing unit, and substitute with a dual. Stacked dual-USB port can be scavenged from an old/dead motherboard.

You'll need to cut an extra hole in the case, but with care, this can be done in just the sidewall, avoiding the lid.

There is a theoretical method (no attempts actually made) to add 3 more USB ports, but they are limited to being USB1.1, as the relevant pads for USB2.0 are not routed out from under the USB hub chip. In the image below, the blue dots are the existing USB2.0 traces to the socket, the yellow arrows are the untracked pads necessary for USB2.0, and the red dots are the necessary connections for the extra 3 potential USB1.1 ports. Obviously, the 0V and +5V connections will need to be made somewhere for each port as well, and some care will need to be taken to ensure the source can supply enough current.

ASCII

RAM upgrade to 64 MiB is possible by soldering the 20 missing resistors and a adding second 32 MiB chip. Noted in the Links section as having been done using a Micron MT46V16M16 which is pin-compatible replacement for the Hynix.

It is likely that by replacement of original RAM chip with a 64-meg one like Micron MT46V32M16, plus a second one at the unoccupied position, the memory could be upgraded to 128 megs.

The LED10 location at front of board contains no LED. Perhaps it is usable for something. But it does not appear to be connected directly to a GPIO pin as a voltmeter shows nothing when cycling all GPIO lines.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2024/02/12 08:58
  • by 127.0.0.1