OpenWRT GUI not being able to be accessed on Linksys e2500

Hi everyone!

I pulled my linksys e2500 out of the closet yesterday and decided to try openwrt (v3) on it. I read a forum response of two from earlier in the year that it might not work, but since the router was just collecting dust for like 4 years now, I figured there was no downside.

I loaded openwrt into the router via the "upgrade firmware" option in the linksys dashboard. it worked perfectly! Im not a COMPLETE noob in networking, but im pretty close to it. so I was messing around with some settings and such. I wanted the linksys to not create a whole new subnet ( and just use the one google fiber created, so I turned off DHCP for the WAN (i think) (bad idea) as soon as I set that configuration, the GUI is not able to be accessed and I can't ssh in either. so no connection to the system at all.

I've tried putting it into failsafe mode and factory resetting to no avail. I have 2 buttons on the system and have tried multiple combinations of both. I got wireshark to get the message coming from the router saying "push the button now" but even after pushing the button when it says to, im still not able to ssh in. I only get the message on eth1. the weird thing is, is that wireshark is saying that the message is coming from already, so I would assume its either in failsafe mode already or at least has the right IP, but it still can't be reached. I've seen many many forums answers and have tried everything on the failsafe, factory reset, etc, page (except the serial connection which I'll try today) and nothings worked. I feel like its not bricked, and but I could be wrong.

I have a serial connection kit coming in today, but was wondering if anyone had any other ideas.

Thanks a ton in advance!

update: I soldered the serial connection, connected to it with both picocom and screen, and im getting output, but doesn't seem like input is taken, even though the usb adapted blinks when I type on the keyboard.

The output actually goes through the bootup it seems. makes it all the way to:
[ 40.729532] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 40.796199] br-lan: port 1(eth0.1) entered blocking state
[ 40.801833] br-lan: port 1(eth0.1) entered forwarding state
[ 40.808289] IPv6: ADDRCONF(NETDEV_CHANGE): eth0.2: link becomes ready
[ 40.928588] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready

so i think its actually working the way its supposed to? and I just dont have access to the console? any thoughts would be greatly appreciated as I try to figure out why the input isn't working!

let's start here:

What exactly is "v3" of OpenWrt -- this is not consistent with the versioning from the official OpenWrt project.
What was the exact file name of what you installed and from where did you download it?

If the serial connection is working fully, you should also be able to provide the output of this:

ubus call system board

ahhh apologies. Now looking at it, im assuming the v3 is actually in relation to the routers versioning and not the openwrt version.


As for the the command to try out, I have display of what's happening on the router, but cannot type or give any input into the system. Terminal running "screen" or "Picocom" shows absolutely no response. the only indication I see that the serial connection is acknowledging what im typing is the fact that a faint blue light flashes on the adapter when keys are pressed.

I've been reading that it probably has something to do with the Rx connection, but I have swapped them around and everything. I am going through the process of installing the driver locally, hoping that might solve the issue.

Also, as of the last couple of days, big fan. see you all over these forums so I really appreciate you helping me out, however big or small.

also, the picocom/screen commands have 115200 and 8N1 as the arguments.

update (as im sure no one has seen this this late): installed the driver from silicon labs on the laptop connected to the serial port, and I am getting action/output when keys are pressed, and also when the router is booting, but its all "?" with white around them. I have tried switching the rx and tx but no juice and how they are now is already crisscrossed how its supposed to be.

Ok... thanks for the updates.

First thing to discuss:

  • Did you read the warning about the wifi performance for this device?

Devices with Broadcom WiFi chipsets have limited OpenWrt supportability (due to limited FLOSS driver availability for Broadcom chips). Consider this when choosing a device to buy, or when deciding to flash OpenWrt on your device because it is listed as supported. See Broadcom WiFi for details.

  • And possibly even more importantly, did you see this warning:

WARNING! Wifi and ethernet LAN ports not working at this time with OpenWrt, including 22.03.x without a workaround. Forum Link

@nikedc3 Not sure if the fix made it to the release... if not the snapshot has the fix for the e2500 v3 per the forum link above

I unfortunately didn't see it until it was flashed.

At this point though, it seems more of a serial connection issue with no input being readable and therefore can even change the firmware back. Im wondering if my solder connection is weak. it'd make sense because im pretty bad at it.

I will attempt to make them a better connection later today hopefully

I hadn't seen that, but that's awesome. I might try the snapshot if I can get the serial connection to work. Did you experience an issue with no input when you made the serial connection by chance?

Serial works without issue. It's GND, SKIP, RX, TX - See:

yeah, that's how I have it. what about system? im attempting it using picocom on linux mint

if you're interested, the full output is below. again, this is the output given by the usb adapter, but it never displays input which I type although adapter does blink a super light blue next to the tx port when I type.

edited: And what adapter did you use? im using a c2102 afaik. think I might have fried it when I first got it (not connected to the router)


picocom -b 115200,8N1 /dev/ttyUSB0
picocom v2.2

port is : /dev/ttyUSB0
flowcontrol : none
baudrate is : 115200
parity is : none
databits are : 8
stopbits are : 1
escape is : C-a
local echo is : no
noinit is : no
noreset is : no
nolock is : no
send_cmd is : sz -vv
receive_cmd is : rz -vv -E
imap is :
omap is :
emap is : crcrlf,delbs,

Type [C-a] [C-h] to see available commands

Terminal ready

CFE version 1.0.37 for BCM947XX (32bit,SP,LE)
Build Date: 07/13/15 05:34:20 EDT (lzh@team2)
Copyright (C) 2000-2008 Broadcom Corporation.

Init Arena
Init Devs.
This is a Serial Flash
Boot partition size = 262144(0x40000)
Found a 16MB ST compatible serial flash
et0: Broadcom BCM47XX 10/100/1000 Mbps Ethernet Controller @VERSION_TYPE@
CPU type 0x19749: 300MHz
Tot mem: 65536 KBytes

CFE mem: 0x80700000 - 0x807A2670 (665200)
Data: 0x80735190 - 0x807391B0 (16416)
BSS: 0x807391B0 - 0x8073C670 (13504)
Heap: 0x8073C670 - 0x807A0670 (409600)
Stack: 0x807A0670 - 0x807A2670 (8192)
Text: 0x80700000 - 0x80735184 (217476)

Boot version: v6.07
The boot is CFE
The country is same

CLKDIV= 0x80e0842, SFlashClkDiv=8 clkdivsf=2

Change it to 0x20e0842 (2)

Device eth0: hwaddr 24-F5-A2-6B-94-95, ipaddr, mask
gateway not set, nameserver not set
Header CRC: 0x1907FA8F
Calculate CRC: 0x1907FA8F
Image 1 is OK
Try to load image 1.
Loader:raw Filesys:tftp Dev:eth0 File:: Options:(null)
Loading: Failed.
Could not load :: Timeout occured
Loader:raw Filesys:raw Dev:flash0.os File: Options:(null)
Loading: .. 3768 bytes read
Entry at 0x80001000
Closing network.
Starting program at 0x80001000
[ 0.000000] Linux version 5.10.176 (builder@buildhost) (mipsel-openwrt-linux-musl-gcc (OpenWrt GCC 11.2.0 r20134-5f15225c1e) 11.2.0, GNU ld (GNU Binutils) 2.37) #0 Thu Apr 27 20:28:15 2023
[ 0.000000] CPU0 revision is: 00019749 (MIPS 74Kc)
[ 0.000000] bcm47xx: Using bcma bus
[ 0.000000] (NULL device ): bus0: Found chip with id 0x5357, rev 0x02 and package 0x08
[ 0.000000] Initrd not found or empty - disabling initrd
[ 0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[ 0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[ 0.000000] This processor doesn't support highmem. -65536k highmem ignored
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] HighMem empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff]
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 16240
[ 0.000000] Kernel command line: noinitrd console=ttyS0,115200
[ 0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes, linear)
[ 0.000000] Writing ErrCtl register=00000000
[ 0.000000] Readback ErrCtl register=00000000
[ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[ 0.000000] Memory: 57632K/65536K available (5474K kernel code, 608K rwdata, 628K rodata, 188K init, 302K bss, 7904K reserved, 0K cma-reserved, 0K highmem)
[ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] NR_IRQS: 256
[ 0.000000] bcm47xx_soc: bus0: Core 0 found: ChipCommon (manuf 0x4BF, id 0x800, rev 0x26, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 1 found: IEEE 802.11 (manuf 0x4BF, id 0x812, rev 0x1C, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 2 found: GBit MAC (manuf 0x4BF, id 0x82D, rev 0x03, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 3 found: MIPS 74K (manuf 0x4A7, id 0x82C, rev 0x04, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 4 found: USB 2.0 Host (manuf 0x4BF, id 0x819, rev 0x05, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 5 found: DDR1/DDR2 Memory Controller (manuf 0x4BF, id 0x82E, rev 0x02, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 6 found: I2S (manuf 0x4BF, id 0x834, rev 0x02, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Core 7 found: Internal Memory (manuf 0x4BF, id 0x80E, rev 0x0B, class 0x0)
[ 0.000000] bcm47xx_soc: bus0: Found M25FL128 serial flash (size: 16384KiB, blocksize: 0x10000, blocks: 256)
[ 0.000000] bcm47xx_soc: bus0: Early bus registered
[ 0.000000] MIPS: machine is Unknown Board
[ 0.000000] bcm47xx: Setting up vectored interrupts
[ 0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 12741736309 ns
[ 0.000023] sched_clock: 32 bits at 150MHz, resolution 6ns, wraps every 14316557820ns
[ 0.000292] Calibrating delay loop... 149.91 BogoMIPS (lpj=749568)
[ 0.070136] pid_max: default: 32768 minimum: 301
[ 0.070603] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.070678] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.076597] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[ 0.079027] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.079114] futex hash table entries: 256 (order: -1, 3072 bytes, linear)
[ 0.082430] NET: Registered protocol family 16
[ 0.083941] thermal_sys: Registered thermal governor 'step_wise'
[ 0.190173] clocksource: Switched to clocksource MIPS
[ 0.193956] NET: Registered protocol family 2
[ 0.194595] IP idents hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.196679] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
[ 0.196891] TCP established hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.196967] TCP bind hash table entries: 1024 (order: 0, 4096 bytes, linear)
[ 0.197027] TCP: Hash tables configured (established 1024 bind 1024)
[ 0.197381] UDP hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.197481] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.198239] NET: Registered protocol family 1
[ 0.198387] PCI: CLS 0 bytes, default 32
[ 0.291020] bcm47xx_soc: bus0: Bus registered
[ 0.307114] workingset: timestamp_bits=14 max_order=14 bucket_order=0
[ 0.319909] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.319974] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[ 0.323297] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 252)
[ 0.326289] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[ 0.332316] printk: console [ttyS0] disabled
[ 0.352797] serial8250.0: ttyS0 at MMIO 0xb8000300 (irq = 2, base_baud = 1250000) is a U6_16550A
[ 0.835511] printk: console [ttyS0] enabled
[ 0.924512] 3 bcm47xxpart partitions found on MTD device bcm47xxsflash
[ 0.931255] Creating 3 MTD partitions on "bcm47xxsflash":
[ 0.936776] 0x000000000000-0x000000040000 : "boot"
[ 0.955826] 0x000000040000-0x000000ff0000 : "firmware"
[ 0.963731] failed to parse "brcm,trx-magic" DT attribute, using default: -89
[ 0.971210] 3 trx partitions found on MTD device firmware
[ 0.976718] Creating 3 MTD partitions on "firmware":
[ 0.981868] 0x00000000001c-0x00000000091c : "loader"
[ 0.986934] mtd: partition "loader" doesn't start on an erase/write block boundary -- force read-only
[ 1.004232] 0x00000000091c-0x000000204c00 : "linux"
[ 1.009233] mtd: partition "linux" doesn't start on an erase/write block boundary -- force read-only
[ 1.024607] 0x000000204c00-0x000000fb0000 : "rootfs"
[ 1.029702] mtd: partition "rootfs" doesn't start on an erase/write block boundary -- force read-only
[ 1.041768] mtd: setting mtd4 (rootfs) as root device
[ 1.046990] 1 squashfs-split partitions found on MTD device rootfs
[ 1.053423] 0x000000590000-0x000000fb0000 : "rootfs_data"
[ 1.066759] 0x000000ff0000-0x000001000000 : "nvram"
[ 1.108979] bgmac_bcma bcma0:2: Found PHY addr: 30 (NOREGS)
[ 1.131931] b53_common: found switch: BCM5325, rev 4
[ 1.137256] bgmac_bcma bcma0:2: Support for Roboswitch not implemented
[ 1.146554] bgmac_bcma: Broadcom 47xx GBit MAC driver loaded
[ 1.153095] bcm47xx-wdt bcm47xx-wdt.0: BCM47xx Watchdog Timer enabled (30 seconds)
[ 1.163933] NET: Registered protocol family 10
[ 1.184206] Segment Routing with IPv6
[ 1.188300] NET: Registered protocol family 17
[ 1.193235] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[ 1.206524] 8021q: 802.1Q VLAN Support v1.8
[ 1.219763] VFS: Mounted root (squashfs filesystem) readonly on device 31:4.
[ 1.228738] Freeing unused kernel memory: 188K
[ 1.233425] This architecture does not have kernel memory protection.
[ 1.240013] Run /sbin/init as init process
[ 2.455314] init: Console is alive
[ 2.459814] init: - watchdog -
[ 4.145849] kmodloader: loading kernel modules from /etc/modules-boot.d/

[ 4.352683] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[ 4.371285] init: - preinit -
[ 7.773548] random: jshn: uninitialized urandom read (4 bytes read)
[ 8.095489] random: jshn: uninitialized urandom read (4 bytes read)
[ 8.351076] random: jshn: uninitialized urandom read (4 bytes read)
[ 8.694457] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 8.704892] IPv6: ADDRCONF(NETDEV_CHANGE): eth0.1: link becomes ready
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[ 13.645508] jffs2: notice: (336) jffs2_build_xattr_subsystem: complete building xattr subsystem, 92 of xdatum (7 unchecked, 85 orphan) and 93 of xref (85 dead, 0 orphan) found.
[ 13.664793] mount_root: switching to jffs2 overlay
[ 13.673912] overlayfs: upper fs does not support tmpfile.
[ 13.693626] urandom-seed: Seeding with /etc/urandom.seed
[ 13.983647] procd: - early -
[ 13.987356] procd: - watchdog -
[ 14.975976] procd: - watchdog -
[ 14.981796] procd: - ubus -
[ 15.154850] random: ubusd: uninitialized urandom read (4 bytes read)
[ 15.168254] random: ubusd: uninitialized urandom read (4 bytes read)
[ 15.185141] random: ubusd: uninitialized urandom read (4 bytes read)
[ 15.204400] procd: - init -
Please press Enter to activate this console.
[ 16.496622] random: jshn: uninitialized urandom read (4 bytes read)
[ 16.527663] random: ubusd: uninitialized urandom read (4 bytes read)
[ 16.535018] random: ubus: uninitialized urandom read (4 bytes read)
[ 17.642938] random: jshn: uninitialized urandom read (4 bytes read)
[ 18.691022] kmodloader: loading kernel modules from /etc/modules.d/*
[ 18.745930] urngd: v1.0.2 started.
[ 19.611514] random: crng init done
[ 19.615027] random: 19 urandom warning(s) missed due to ratelimiting
[ 19.660748] Loading modules backported from Linux version v5.15.92-0-ge515b9902f5f
[ 19.668482] Backport generated by backports.git v5.15.92-1-0-gdfe0f60c
[ 20.129343] PPP generic driver version 2.4.2
[ 20.143178] NET: Registered protocol family 24
[ 20.181591] b43-phy0: Broadcom 5357 WLAN found (core revision 28)
[ 20.188243] b43-phy0: Found PHY: Analog 9, Type 4 (N), Revision 9
[ 20.194566] b43-phy0 ERROR: FOUND UNSUPPORTED RADIO (Manuf 0x17F, ID 0x2057, Revision 5, Version 2)
[ 20.203928] b43: probe of bcma0:1 failed with error -122
[ 20.209663] Broadcom 43xx driver loaded [ Features: NL ]
[ 20.250845] kmodloader: done loading kernel modules from /etc/modules.d/*
[ 60.554447] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 60.689517] br-lan: port 1(eth0.1) entered blocking state
[ 60.695204] br-lan: port 1(eth0.1) entered disabled state
[ 60.701927] device eth0.1 entered promiscuous mode
[ 60.706840] device eth0 entered promiscuous mode
[ 60.740548] br-lan: port 1(eth0.1) entered blocking state
[ 60.746088] br-lan: port 1(eth0.1) entered forwarding state
[ 61.611037] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready`