Linksys WRT160N
Supported Versions
According to Linksys_WRT300N_series#WRT160N there is more than one version of this device. Please see what version you have and add information to the wiki or post in this forum thread.
Model | CPU | Wireless | Flash | RAM | S/N | FCC ID | LEDE 17.01.4 | OpenWrt Kamikaze | OpenWrt Backfire | OpenWrt trunk (Barrier Breaker) |
---|---|---|---|---|---|---|---|---|---|---|
WRT160N v1.0 | BCM4704 | BCM4321? | 4MB | 32MB | CSE01? | ? | ? | X | Y | OOM |
WRT160N v1.1 | BCM4703 | BCM4321 | 4MB | 16MB | CSE01 | Q87WRT160N | ? | X (See Below) | ? | ? |
WRT160N v2.0 | RT2880F | Ralink | 4MB | 16MB | CSE11 | Q87WRT160NV2 | ? | not supported | ? | ? |
WRT160N v3.0 | BCM4716 | BCM4716 | 4MB | 32MB | CSE41/CSE51 | Q87WRT160NV3 | Yes | WIP (not supported yet, see below) | ? | WIP |
V1.1
Build | Date Released | Link | Comments |
---|---|---|---|
Stable Standard Backfire 10.03.1 | ? | ? | Recommended |
Stable Attitude Adjustment 12.09 | ? | ? | *Known to be slow |
Stable Barrier Breaker 14.07 | ? | ? | *Known to be slow |
* AA and BB tend to run very slowly due to low RAM and OOM if LuCI is used. https://github.com/leitec/openwrt-leitec/wiki/Limitations-on-Routers-with-16MB-RAM. Therefore, Backfire 10.03.1 is recommended.
V2.0
Not supported.
V3.0
V3.0 has the same hardware as the Linksys E1000 v1; see the information for it, which may be helpful.
Build | Date Released | Link | Comments |
---|---|---|---|
STABLE | 2017-10-18 | https://downloads.lede-project.org/releases/17.01.4/targets/brcm47xx/mips74k/lede-17.01.4-brcm47xx-mips74k-linksys-wrt160n-v3-squashfs.bin | LEDE 17.01.4 Release |
Development Snapshot | As of 2013-08-27 | https://downloads.openwrt.org/snapshots/trunk/brcm47xx/mips74k/openwrt-brcm47xx-mips74k-linksys-wrt160n-v3-squashfs.bin | This is a development snapshot build, (see https://downloads.openwrt.org/). |
Forum Links
Please see also the following forum topics:
- OpenWrt → General Discussion → LinkSys WRT160n -- https://forum.openwrt.org/viewtopic.php?id=15321
- OpenWrt → General Discussion → E1000v1/WRT160Nv3/Valet M10v1 - working “alpha” status, testing wanted -- https://forum.openwrt.org/viewtopic.php?id=44045
- OpenWrt → Developers Only → Add support for Linksys E1000 v1 (and brcm4716) -- https://forum.openwrt.org/viewtopic.php?id=39581
Installation
Flash Layout
OEM easy installation
TODO
How To Build
v3 don't related? (fixme) - it appears that just enabling it in backfire kernel don't make this router to work.
make kernel_menuconfig
- enable “Support 8-bit buswidth”
Location: -> Device Drivers -> Memory Technology Device (MTD) support (MTD [=y]) -> RAM/ROM/Flash chip drivers -> Flash chip driver advanced configuration options (MTD_CFI_ADV_OPTIONS [=y]) -> Specific CFI Flash geometry selection [*] Support 8-bit buswidth
- Exit the configuration menu and save the settings.
- build the whole thing again with the new config. (This time wont take as long)
Now you can flash the firmware image in /bin to your WRT160N using the Linksys web interface. (I tried the openwrt-wrt150n-squashfs.bin and it worked; openwrt-brcm-2.4-squashfs.trx also works if using the tftp install method)
- The wireless works when you enable it in /etc/config/wireless
Hardware
v1.0/v1.1 | v2.0 | v3.0 | |
---|---|---|---|
Architecture: | MIPS | MIPS | MIPS |
Vendor: | Broadcom | Ralink | Broadcom |
Bootloader: | CFE | uboot | CFE |
System-On-Chip: | Broadcom 4703KFBG | RT2880F (MIPS 4KEc V?.?) | Broadcom 4716B0KFBG (MIPS 74Kc V4.9) |
CPU/Speed | BCM4703 266 MHz | 266 MHz | BCM4716 300 MHz |
Flash-Chip: | EN29LV320AB | ?? | ?? |
Flash size: | 4 MiB | 4 MiB (Samsung 813; K8P3215UQB or EON Silicon EN29LV320AB) | 4 MiB (MX 25L3205DM2I) |
RAM: | 32/16 MiB | 16 MiB (WindBond W9864G6IH 64Mbit SDRAM) | 32 MiB (Winbond W9425G6EH-5H) |
Wireless: | BCM2055/BCM4321 | ? | ? |
Ethernet: | BCM5325 | RTL8306SD | BCM5325 |
USB: | No | No | No |
Serial: | Yes | Yes | Yes |
JTAG: | Yes | Yes | Yes |
Pads/headers on PCB
V1.0/1.1
There is 3 sets of pads on the PCB of the WRT160N.
Half of the JP1 and JP3 pads are on the reverse side of the PCB. JP1 is the JTAG port. JP2 is a serial port and it works if you use a 3.3v TTL to RS-232. * There is a hidden EXTERNAL serial port above the YELLOW INTERNET sticker inside the RJ-45 jack. Use a light to see it, 3.3v, rx, tx, grd, are all clearly labled. (special plug anyone?)*
JP1
JTAG
On Reverse | Pad 2 | GND | Pad 4 | GND | Pad 6 | GND | Pad 8 | GND | Pad 10 | GND | Pad 12 | ? |
---|---|---|---|---|---|---|---|---|---|---|---|---|
On Front | Pad 1 | RESET# | Pad 3 | TDI | Pad 5 | TD0 | Pad 7 | TMS | Pad 9 | TCK | Pad 11 | GND |
# Reset# of Flash Memory
JP2
3.3v TTL Serial
On Front | Pad 1 | 3.3v | Pad 2 | TX | Pad 3 | RX | Pad 4 | Not Connected | Pad 5 | GND |
---|
JP3
On Reverse | Pad 2 | GND | Pad 4 | GND | Pad 6 | GND | Pad 8 | GND | Pad 10 | GND | Pad 11 | ? |
---|---|---|---|---|---|---|---|---|---|---|---|---|
On Front | Pad 1 | ? | Pad 3 | ? | Pad 5 | ? | Pad 7 | ? | Pad 9 | ? | Pad 12 | ? |
V2.0
J10 is a serial port and it works if you use a 3.3v TTL to RS-232.
J11 is an empty 14-pin header and is likely a JTAG port to the CPU.
J10
Near WAN port | Pin 1 | 3.3v | Pin 2 | TX | Pin 3 | RX | Pin 4 | NC | Pin 5 | GND |
---|
J11
Pin 1 | ? | Pin 3 | ? | Pin 5 | ? | Pin 7 | ? | Pin 9 | ? | Pin 11 | ? | Pin 13 | ? |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Pin 2 | ? | Pin 4 | ? | Pin 6 | ? | Pin 8 | ? | Pin 10 | ? | Pin 12 | ? | Pin 14 | ? |
JTAG
The JTAG software needs to support 8-bit operation. tjtag v3-RC1 by Tornado can be used to read the flash chip.
Serial
→ see
JP2/J10 is a 3.3v serial port. Boot messages can be seen if you connect a 3.3v level shifter here and monitor with a serial port.
DO NOT CONNECT DIRECTLY TO A PC SERIAL PORT. Use a 3.3v TTL level shifter. Details at this page:
V3.0
JTAG Port
J2 appears to be a standard 12-bin JTAG port
Serial Ports
TP12-16 make up a 3.3V serial port. These are not through-holes, so wire has to be soldered directly to the exposed test point. Connect at 115200 Baud.
TP12 | TP13 | TP14 | TP15 | TP16 |
---|---|---|---|---|
VCC | TX | RX | ? | GND |
Recovery
V1.1
If the device becomes bricked, (and this can happen very easily with this device) you should attach a serial port to it to view the console and see why it has stopped booting.
- Boot_wait does not seem to work on this device.
- One common reason for it to stop booting is, after loading a image that doesn't recognize the 8-bit flash, it will be stuck in a endless reboot loop.
- Once the serial console is installed you can use a terminal emulator to stop the boot and manually flash a good image to it.
- Connect to the device using 115200 baud 8-n-1 and No Flow Control.
- press Ctrl + C very early in the boot to break into the CFE prompt.
- Enter this command to make the router accept an image via tftp.
flash -ctheader : flash1.trx
V3.0
To recover it, do the following procedure:
- Turned on, press the Reset button for 30 seconds
- Turn it off, without releasing the reset button
- Turn it on again, still without releasing the reset button for 30 seconds.
- Release the reset button.
- Now, it is in recover firmware mode and running just with the 192.168.1.1 IP (it don't matters the configured IP in the router) in one of the 4 ethernet interfaces.
- Configure your computer with another IP in that range (ex. 192.168.1.2) in the ethernet interface and access http://192.168.1.1 . At this point, you should see a very simple firmware upgrade page.
- Upload the good firmware (if you're in doubt, take the correct one in the LinkSys page). After the upgrade and the “upload ok” message in the page, wait for a minute. Now, your router should be running!