Operation Nighthawk Down

Why yet another write-up on debricking a Netgear R7000 router?

So that is why I have compiled my own "guide" as a write-up so it will be collected in just 1 place and to provide information on the extra issues I ran into.

What is wrong? And how to solve it.

Issue:


Solution:
  1. Establish connection through the UART interface on the PCB (Printed circuit board) using a USB interface converter (https://joy-it.net/en/products/SBC-TTL).
  2. Get a firmware interface/bootloader environment on the device know as "CFE" (https://en.wikipedia.org/wiki/Common_Firmware_Environment).
    And enable the tftp daemon (Trivial File Transfer Protocol: https://en.wikipedia.org/wiki/Trivial_File_Transfer_Protocol)
  3. Upload the original firmware (https://www.netgear.com/support/product/r7000/#download) to the storage on the device.
  4. Reboot and confirm that the device boots normally.
  5. And lastly confirm that we can reach the default setup page.

The steps

Preparation:

  1. We need to setup our local ethernet interface to a static IP. Example: 192.168.1.10
  2. And we need to set the subnet mask to: 255.255.255.0
  3. And lastly setting the default gateway to: 192.168.1.1

Execution:

  1. Plugin the USB interface converter and place the wires to match the ones in the picture.

    USB interface converter

    Now on the PCB connect the wires to the USB interface converter.
    Black goes to black, white goes to white and then connect the last wires.

    Connecting UART

  2. Open a serial console on you PC like puTTY and select the correct COM port
    PuTTY serial connection

    • Set baudrate to: 115200
    • Set data to: 8
    • Set stopbit to: 1
    • Set Parity to: None
    • Set Flow Control to: None

    Serial connection settings

    Now in PuTTY click "Open" and turn on the device.
    Now you should see output from the UART connection.

    Issues I ran into:
    Most likely to my bad sodderings :)

    Gibberish output:
    I started out by soddering a 4-pin connector onto the PCB. But when I connected from puTTY I got a lot of gigibberish output.
    So I decided to remove the 4-pin connector and sodder wires directly onto the PCB.
    And this seemed to solve this issue.

    Issue with gibberish UART output

    No output:
    If you do not get any output at all when you turn on the device and the led does not flash as they are supposed to.
    Then turn off the device and disconnect the (on my picture) red wire.
    Then turn on the device and as soon at the power turns on connect the red wire again.
    I do not know why this can happen but I experienced it and found this solution.

    Issue with no UART output

  3. Here we can see that the root file system is not present which could indicate that the file system is corrupt. And this is what we expected so we do not worry. :)

    Kernel Panic

  4. We reboot the device and spam ctrl+c until we get the CFE. Then we enable the tftp daemon.

    Getting CFE

  5. We can now from our PC upload the original firmware with a tftp client.

    TFTP upload completed

  6. Now we can reboot the device and confirm that it boots normally.

    Confirm successfully booting

    Booting done

  7. And we can reach the default setup page by visiting https://192.168.1.1

    Confirming normal boot

Resources