How do I install OpenWrt on a FRITZ!Box 7430?

I'm a total noob when it comes to technology, but I am fond of the open source movement and would like to install OpenWrt on my Fritz!Box 7430. I looked in the table of hardware and it was listed there. When I started eva_ramboot.py on 192.168.178.1, which was also shown in the output of netstat -nr, I got the following error message:

Traceback (most recent call last):
  File "/home/user/repo/openwrt/./scripts/flashing/eva_ramboot.py", line 28, in <module>
    ftp = FTP(args.ip, 'adam2', 'adam2')
  File "/usr/lib64/python3.9/ftplib.py", line 121, in __init__
    self.connect(host)
  File "/usr/lib64/python3.9/ftplib.py", line 158, in connect
    self.sock = socket.create_connection((self.host, self.port), self.timeout,
  File "/usr/lib64/python3.9/socket.py", line 844, in create_connection
    raise err
  File "/usr/lib64/python3.9/socket.py", line 832, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

Likewise at 169.254.120.1, with the exception that the last line says this:

OSError: [Errno 113] No route to host

With a completely different IP address I get:

  File "/usr/lib64/python3.9/ftplib.py", line 123, in __init__
    self.login(user, passwd, acct)
  File "/usr/lib64/python3.9/ftplib.py", line 414, in login
    resp = self.sendcmd('PASS ' + passwd)
  File "/usr/lib64/python3.9/ftplib.py", line 281, in sendcmd
    return self.getresp()
  File "/usr/lib64/python3.9/ftplib.py", line 254, in getresp
    raise error_perm(resp)
ftplib.error_perm: 530 Login incorrect.

Can anyone help me? Sorry if I make a stupid mistake here. I am, as I said, still a layman. If it doesn't work, what router can you guys recommend me for OpenWrt instead? I appreciate any answer you can give me.

Could you post here the full commands that you wrote in the terminal to upload the image? In the first case you have the Connection Refused error, which might mean that you are trying to connect to the wrong IP.
The No route to host is kinda expected, if your client is not using APIPA address.
The last error has to do with wrong user/pass, most likely the last device was not the 7430 router.

mkdir ~/repo
cd ~/repo
git clone https://git.openwrt.org/openwrt/openwrt.git
mkdir files
cd files
wget https://downloads.openwrt.org/releases/21.02.0/targets/lantiq/xrx200/openwrt-21.02.0-lantiq-xrx200-avm_fritz7430-initramfs-kernel.bin
cd ~/repo/openwrt
./scripts/flashing/eva_ramboot.py 192.168.178.1 ~/repo/files/openwrt-21.02.0-lantiq-xrx200-avm_fritz7430-initramfs-kernel.bin

These are all the commands that I used. Thank you for your answer, but unfortunately I can't do much with it because I don't know how to fix these errors. What should I do? What would be the correct IP? And what is an APIPA address? Thanks in advance.

Hello,

I have had the same issue trying to install OpenWrt on the same router model. You have to make sure to execute the eva_ramboot.py command as soon as possible during the device's boot. This is because the FTP server to which the eva_ramboot.py script tries to connect is only active for a couple seconds during the boot process (during these few seconds the power LED of the router will be blinking). You can try spamming the command as soon as you connect your router to power.
Another solution that helped me was initially trying to connect to this FTP server by running: ftp 192.168.178.1 (when asked for credentials, you can use adam2 for both the username and password), if the connection is established, the server seems to stay up for longer. However, You will have to spam this command too.

Hope that helps!

Good afternoon,

The suggested steps didn't work for me. I interpret my installation as failed:

openwrt/scripts/flashing$ python3 eva_ramboot.py 192.168.178.1 ../../../openwrt-lantiq-xrx200-avm_fritz7430-initramfs-kernel.bin
> SETENV memsize 0x07a60000
< 200 SETENV command successful
> SETENV kernel_args_tmp mtdram1=0x87a60000,0x88000000
< 200 SETENV command successful
> MEDIA SDRAM
< 200 Media set to MEDIA_SDRAM

$ ssh 192.168.1.1
ssh: connect to host 192.168.1.1 port 22: No route to host

$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether c8:d9:d2:8e:84:60 brd ff:ff:ff:ff:ff:ff
    inet 192.168.178.20/24 brd 192.168.178.255 scope global dynamic noprefixroute enp1s0
       valid_lft 861966sec preferred_lft 861966sec
    inet6 fd59:d692:3d77::da8/128 scope global dynamic noprefixroute 
       valid_lft 42020sec preferred_lft 42020sec
    inet6 fd59:d692:3d77:0:dd6f:28b:1cdc:9218/64 scope global temporary dynamic 
       valid_lft 603621sec preferred_lft 85002sec
    inet6 fd59:d692:3d77:0:7ef2:229b:8381:e846/64 scope global mngtmpaddr noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::a7de:1299:8ce:fc31/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: wlp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether d8:9c:67:05:82:a7 brd ff:ff:ff:ff:ff:ff
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:81:4b:10 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:81:4b:10 brd ff:ff:ff:ff:ff:ff

What alternative (detailed step-by-step) method is available?

Which suggested steps ?

Follow https://openwrt.org/toh/avm/avm_fritz_box_7430 ?

The steps suggested before my post in this thread.
The linked how-to uses eva_ramboot.py, which obviously does not work for my Fritzbox. Is there a method to manually (i.e. without eva_ramboot.py) install the latest version of Openwrt on said device?