Critical feedback installing OpenWrt

Hi folks,
yesterday evening I managed to install OpenWRT on my Fritzbox 3370 after 3 days of fighting, following guide https://openwrt.org/toh/avm/fritz.box.wlan.3370
Finally it works, but would like to share some feedback

Conclusion 1: It did not work at all with windows. I tried all ftp clients I could install - all of them failed. Windows ftp does not have passive mode, others (like ncftp) don't support the simple ADAM2 ftp server. Ok, maybe they would do - but who knows all their options and how to set them?

Conclusion 2: Changing the IP address of your main PC is not a good solution.
As you always need to download something or google for problems, you need a second PC being connected. I solved this (and windows problem) by using a Raspberry Pi. The problem is, I only have one monitor and connecting via Ethernet obviously does not work, as IP address needs to be changed. Thus I used serial console on the Pi to connect.

Conclusion 3: Timing the ftp access to the router is a kind of lottery
I fixed this by soldering a serial cable to the router's mainboard. Thus I always had console access and also could stop the boot process.

Conclusion 4: It cannot be reproduced
Still it did not work in the beginning. FTP errors or simply no reaction, still booting into Fritzbox software. Maybe a connection problem? Maybe the fact that 3370 uses a toggle for partition layout, so it's 50:50? Cannot say, after some attempts it worked and I still do not know why or why not.

So I wonder who is able to install OpenWRT. I could do this, as I studied engineering and have Linux experience. And was willing to play it as a kind of escape room game.
But what about non-Nerds? Or people who do not have a laboratory-like equipment with several monitors, PCs, raspberrys or whatsoever?
Did I do things wrong or just have bad luck? Currently I can hardly imagine a "normal end user" is able to install OpenWRT.

The documentation mentioned above seems so nice and simple - but it was not. In the end, the way was paved with pitfalls and problems. Only trying, playing and googling helped - and lots of time. Do you see any chance to make the documentation better, showing what works and what not?

Kind regards,
Felix

I'll make a remark in the Wiki regarding the client.

ncftp does however support the quote command, but it might not be on Win, just *nix.
https://www.ncftp.com/ncftp/doc/ncftp.html

Documentation is an ongoing issue for Openwrt. Or for Open Source in general. It makes fun, to do some coding, but does writing docs make fun ?
"The only correct docs is the source code."
Regarding installation of Openwrt: You need to choose the device model very carefully, in case you want simple install. Having a fleet of different device types in the field to support, I am a fan of my "workhorses" from ZBT, i.e. WE826.
Reason probably is, that these ZBTs are OEM-devices, and very likely to be re-flashed with custom firmware. The Fritz-boxes are not developed having this in mind.

Read the docs before you decide on the device you want to install Openwrt onto.

Best strategy is, to get the dumbest router from your ISP, or just a modem, which is even better. And then connect your Openwrt-box to it.

That's nice and will help, frollic.
But my remark was a general one. I have the impression, OpenWRT is a product for nerds as of now. It would be great to make it available for a broader target group. I might be wrong, and I do not have an answer how to achieve that.
I have seen the eva tools project by PeterPawn, but did not go deeper, as I did not want to spend more time. Anyway an approach like that could help to make the whole thing fool-proof.

That's good advice. I just bought ebay's cheapest Fritzbox. Or almost, I dropped everything not mentioned in https://boxmatrix.info/wiki/OpenWRT-Selector .
Anyway I did not plan to use OpenWRT for my routers. I rather considered it as a playground for learning. Currently I do not dare to use it productively, as I see 2 problems: I do not dare to install it on an expensive router due to the risk to brick it. And I do not trust in my network skills, so in the end it might be less safe than a consumer product. But let's see...

Fritz tools are working for other Fritzboxes, but is not confirmed here https://fritz-tools.readthedocs.io/en/latest/

If fritztools are working also on 3370, then installation is quite easy.

OpenWrt can only work within the constraints set by the OEM. The stricter or convoluted the OEM firmware upgrader, the harder it is for OpenWrt to generate a drop-in factory image accepted by the OEM upgrade routines. In most cases the 'normal' upgrade procedures from the webinterface spend a lot more effort on validating the uploaded image than the space constrained emergency recovery modes available from the bootloader. Especially ISP branded devices (and AVM is big in the German market for these) often try much harder to lock down access.

The problems you've raised stem from these issues, it's not possible to generate an image accepted by AVM's normal upgrade routines (not signed/ blessed by AVM), so the only alternative (aside from declaring defeat) is to (ab-)use the lowest level bootloader recovery access instead. Be aware that none of the described problems are really a problem with OpenWrt itself, but rather of you and your ftp clients interacting with ADAM2, AVM's bootloader on these devices.

On other devices, with well-understood and unsigned firmware formats, flashing OpenWrt can be as easy as doing a normal (OEM-) firmware upgrade - others may require serial console access or exploiting a security issue in the OEM firmware. One should check these upgrade procedures against one's own abilities and comfort levels, before selecting a device.

--
On the up-side, ADAM2 us rather resilient and makes these devices almost unbrickable, also allowing reinstalling the OEM firmware at any point.

4 Likes

I can only speak for the Fritzbox 4040.

  1. It works on windows, you just need an ftp client that can do passive transfers.
    (https://ftp.gnu.org/old-gnu/emacs/windows/contrib/ftp-for-win32.zip this one worked for me)

  2. You only need to change the IP address of the PC once during the flash process., no issue here.

  3. I had no timing issue with the 1st box I bought, the 2nd box had another version of the urloader that made things more complicated. Using AVM's recovery tool for another fritz box (4020 in my case) stopped the boot process so that I could step in with the ftp client.

  4. I have flashed the 4040 that often, it is a quiet stable and reproducible process.

Cheers,
Thomas

Regarding #2 Instead of changing IP, just add the necessary IP to the current NIC. Both windows and Linux support that very well. Issue necessary ping in new terminal to find out what IP the router is coming up with.