Skip to content

failed to write to port.: Custom { kind: TimedOut, error: "Operation timed out" } error when running mtk_uartboot moments after program execution #23

Description

@jaguar7926

I came across this software as a suggestion from the OpenWRT Table Of Hardware page for the Belkin RT3200/Linksys E8450 home router. After a failed attempt at upgrading this device, I found that the device would not power back on. Upon further investigation, I found the culprit on the hardware page for the device which explained that I had apparently run into the "OpenWRT Kiss Of Death (OKD)" bug with this device.

In attempts to recover this device, which I successfully got to boot only a very small handful of times since discovering the bug over that last few days, I've experienced the in more than half of the cases where I was finally able to get the device to power on that the mtk_uartboot binary would throw an failed to write to port.: Custom { kind: TimedOut, error: "Operation timed out" } error and in only one instance was I able to get the device to boot and was able to catch the boot process with the mtk_uartboot binary and loaded the suggested boot loader image from the troubleshooting document.

I'm creating this issue to attempt to understand and even successfully get the mtk_uartboot binary to remain running in a waiting state while I attempt to get the device to boot successfully. In at least two recent instances, I was able to get the device to boot and had the binary process die just as the device began spewing out data to the console. In researching the previous issues on this repository, I have attempted to set a number of the CLI flags with various values; however, I am still unable to get the binary to remain running consistently. Due to the nature of the software bug with the existing boot loader software, I want to ensure that the software is set up and running without issue so that any successful device boot henceforth is absolutely caught and I'm able to continue recovering the device without fear that I'll lose access to the device part way through the boot process.

Below is the last time I ran into this issue, which was only moments ago, and is an example of the issues I've been experiencing with this software. The error below is usually returned approximately 5 seconds after executing the command.

[username@computer install]$ sudo ./mtk_uartboot -s /dev/ttyUSB0 -a -p mt7622-ram-1ddr-bl2.bin -f *uboot.fip --brom-load-baudrate 921600 --bl2-load-baudrate 115200 && sudo screen /dev/ttyUSB0 115200 ;
mtk_uartboot - 0.1.1
Using serial port: /dev/ttyUSB0
Handshake...
thread 'main' panicked at src/bootrom.rs:28:18:
failed to write to port.: Custom { kind: TimedOut, error: "Operation timed out" }
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Aborted                    sudo ./mtk_uartboot -s /dev/ttyUSB0 -a -p mt7622-ram-1ddr-bl2.bin -f *uboot.fip --brom-load-baudrate 921600 --bl2-load-baudrate 115200

In a handful of instances, only one of which I was able to successfully get the device to boot and was able to interact with the boot menu that the temporary boot image presents, have I had the mtk_uartboot binary run much longer than a few moments and the process of which was killed by my direct and intentional influence.

Is there a way to help to ensure that the mtk_uartboot processes remain active until killed by me directly? Am I missing something in the execution of the binary which may help in this situation? Please let me know if there is any further information one would require from me to help in troubleshooting this issue and I'll respond with the information as soon as I am able. Any assistance or information which can be provided will be greatly appreciated. Thank you for your time and support!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions