installing dd-wrt on a EA6350v2 from linux.
So linksys hasn’t released a firmare update for the EA6350V2 since 11/2017 and it is still on a 2.6 kernel, so I wanted to try to get to a newer kernel – DD-WRT supports EA6350v1 and the forum has tale of the same version working for the EA6350v1 working on the v2 – but you need to crack the case and use a serial port to upgrade.
My original EA6350v2 didn’t have headers on the serial port – guess they saved $0.05 that day – https://amzn.to/3dyEKxe $5 .
so I bought another router one off ebay (https://www.ebay.com/sch/i.html?_from=R40&_nkw=ea6350v2&_sacat=0&_sop=15) $23 – this one was built on a less cost cutting day and had the serial headers, I got a usb serial port off of ebay – something like this one https://amzn.to/2OnyKyO $6.
Then I hooked up my laptop to my “new” router via the serial port – you have to get the cover off the linksys, find the serial port – to the left of the big heat sink, the arrow marks the 3.3v pin (unused), next to that is TXD, then RXD, then GND (this is from left to right with the ports/antennae away from you. – you’re going to cross TXD from your serial adapter to RXD on the linksys, and RXD from your adapter to TXD with GND to GND.
I installed putty on linux – i know – and configured it to use /dev/ttyUSB0, 115200, 8,n,1 and connect to the serial port and voila I could watch my ea6350v2 boot and stop it during boot with ctrl + c which yeilds a CFE> prompt.
After getting the boot stopped, I connected my cross over cable between my linux laptop and one of the LAN ports on the router (not the one you connect to your cable modem/dsl box) and was able to ping 192.168.1.1 (the router) –
(i have a big box of ethernet cable and a crimper and rj45 connectors so I made my own cross over cable long ago – the router might automatically do the cross over for you or you can get your own cross over cable https://amzn.to/3fRIFbl $5).
(My laptop doesn’t have a wired ethernet port so I used a older relative of this https://amzn.to/3sUxJNO $ 19. )
My network port was actually already configured with a 192.168.1.x address but you can just bring it up with
$ sudo ifconfig <interface> inet 192.1.1.2 netmask 255.255.255.0
then on the router (via serial port) I typed:
CFE> flash -noheader : nflash0.trx
it said Reading :
then on the linux command line I typed
$ tftp 192.168.1.1
tftp> binary
tftp> put put linksys-ea6350-webflash.bin
71 seconds later the router (via serial) said programming and eventually returned to the CFE> prompt where I asked it to flash to the other location.
CFE> flash -noheader : nflash0.trx2
and I then repeated the above tftp put command
and another 71 seconds later it said programming again and after a bit returned to the CFE> prompt
after powercycling the linksys it came up running DD-WRT.