When I turn on the router, I can see lights that its powered on and that i have a device connected at lan port 1, however, I am unable to ping the router.
Luckily I did take a backup of boot chain (as per the link in the instruction for the upgrade of the UBI Installation steps). However, not sure what steps to take next to try to recovery this device.
What should be my next steps? Do I need to order parts for a serial recovery?
Oops. Yes, I do think you have a problem there. Thankfully you have the backup of the boot chain and it’s nothing but bad software, so you can get full function back. All you need from your boot backup is the mtd2 file. It should be either 512kb or 1Mb in size, and it should start with the bytes 0x22 0x76. That is the factory data and it’s unique to each device, so it can’t be downloaded from the OpenWRT site. Every other file you need can be downloaded from the firmware selector, but be cautious about the versions of the files you select. The process differs between versions.
Go to the wiki page for the e8450. Toward the bottom of the page, under the serial recovery instructions (which is a primer for what you will be doing and the mtk_uartboot took you need), there will be a troubleshooting tips section with a link about how to recover if your bootloader has been damaged in an unusual way. That link has a step-by-step set of instructions that runs through the process of full recovery. If you can’t find it there, the linked post is present in the forum under the main topic for the e8450 and can be found by searching for the phrase “hard recovery”. Unfortunately, I don’t have the direct link at hand at the moment.
Yes, you do need parts for a serial recovery. Thankfully, it’s as simple as a USB to UART adapter capable of handling 3.3v logic and (if possible) a 6 pin JST PH2.0 connector for the serial header. You don’t actually need the connector if you have a good set of test clips to connect the three serial pins (GND, TxD, RxD).
To look at the bytes of the file, you will need a program called a hex editor. It’s not actually a requirement either, but only a way to help you be sure that the file you have is the correct one. However, the file you have is most likely correct anyway since you know it came from the boot backup and that the versions of the e8450 UBI installer that produce more than two files have the factory data in mtd2.
In the full / hard recovery instructions, there is a marked section for restoring the factory data. In that section, it states that this is where you need the mtd2 file from your backup.
Thank you again! Another thing i am confused about is the tftp server prep. Im not sure how to do this on a mac. Do I just need to connect the ethernet port to lan 1 on the router and that it? or is there a software that i need to install?
Unfortunately, that’s something I won’t be able to provide much assistance on. I haven’t done much with mac since the OS 10.x series, and I know much has changed since then. Yes, you do need some additional software. Previously, it was possible to run it either from the Mac OS X Server application (it was a paid application at the time) or from Homebrew, but I’m not sure if either is still capable of doing so. The instructions for setting it up will depend entirely upon the software package you use.
In essence, it comes down to setting up the server package, allowing the server package to receive incoming connections (through the firewall), and placing the proper files in the proper folders and with the proper names. Beyond that, follow the instructions in the post. It includes the list of assumptions you must have met before the process will work. The wiki page also shows you some of the information you will need about the mtk_uartboot tool and how to use it to boot your router when it can’t boot on its own, but the whole process still relies on some skill and familiarity with using the command line terminal.
./mtk_uartboot -a -p mt7622-ram-1ddr-bl2.bin -f openwrt-mediatek-mt7622-linksys_e8450-ubi-bl31-uboot.fip -s /dev/cu.usbserial-0001
response:
mtk_uartboot - 0.1.1
Using serial port: /dev/cu.usbserial-0001
thread 'main' panicked at src/main.rs:143:17:
Failed to open port: Error { kind: Unknown, description: "Settings did not apply correctly" }
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
[2] 79853 abort ./mtk_uartboot -a -p mt7622-ram-1ddr-bl2.bin -f -s /dev/cu.usbserial-0001
which settings is it referring to? specifically where it says: Failed to open port: Error { kind: Unknown, description: "Settings did not apply correctly" }
any idea what this is? I had it show the handshake once and then i exited using ctrl+x/ctrl+c? could that have cause something to go wrong?
You may not have access to the serial port, but that error message doesn’t make much sense. I know in the past, Mac OS would sometimes lock down the serial port and treat it as a modem / network device. You may need to go into the network preferences panel (with admin privileges) and disable the “network device” associated with the serial port. Alternatively, it’s possible your dongle might be configured with a different device name. You may need to review the list of devices either on command line or via system information and find out what device name the USB to TTL adapter is using.
Ok yea so the issue was that I didnt end the previous run properly and i completed closed out the terminal and reopened it. The issue I’m having now is get being able to get past the handshake…I checked and I get two devices showing up when i plug in the USB-UART: cu.usbserial-0001 and tty.usbserial-0001, I tried to run mtk-uartboot with both and same result. I have the UART set to 3.3V and it showed that TX and RX were connected. also confirmed that I have RX going to TX and TX going to RX and grd connected to grd. I have the UART set to 3.3V not sure what else I’m missing.
@grauerfuchs I used the following commands and I’m getting the ERROR: BL2: Failed to load image id 3 (-2) error, and the troubleshooting is saying that “It means the BL31+U-Boot FIP cannot be access. Try putting the appropriate file, which you are already using with the mtk_uartboot program, to your TFTP server”