Linux/OpenWrt on the AVM FRITZ!Box 3390
Since we have DSL-based Internet in the office and at home, I'm interested in capable WiFi routers with DSL modem. Finding such a device with OpenWrt support is not exactly easy. Basically, only Lantiq devices are supported, but WAVE300 WiFi is not. Thus, the options are very limited.
Based on the specs, I went for a FRITZ!Box 3390 in the hope it would be similar to the FRITZ!Box 3370 which is already supported by OpenWrt. A few days later, I received a used one for a few Euros.
Hardware Surprise
I disassembled the device to find the hardware details. I was quite surprised to find next to a Lantiq SoC als an Atheros AR9342 SoC with additional 64MB RAM. This was unexpected, because two other Atheros-based WiFi chips are also present (AR9580 and AR9381). How the heck does this system work?
Software Hacking
After some log-reading and adding serial support, I was quite convinced that a stage 1 firmware is loaded via MDIO to the Atheros target and then a stage 2 firmware is loaded using Ethernet. Using freetz, I could compile a firmware that dumps MDIO packets and got an MDIO trace.
Basically, I added MDIO support to the Lantiq switch driver, created a userspace stage 1 and stage 2 uploader and created a second OpenWrt instance for the Atheros target. So far, it works and I immediately went on to a FRITZ!Box 3490.
Support for both targets (i.e. Lantiq and ath79) will be added to OpenWrt via a series of Pull Requests:
- https://github.com/openwrt/openwrt/pull/2662 Lantiq Pull Request
- https://github.com/openwrt/openwrt/pull/2711 ath79 Pull Request
While it's unlikely that the device will be officially supported, you can still install and run my patched version. Follow the HowTo for the FRITZ!Box 3490 and checkout different branches:
- Lantiq: avm_fritz3390_wifi
- ath79: avm_fritz3390_wasp_wifi
On the 3390, you get 5GHz WiFi directly on the Lantiq. For the 2.4GHz WiFi you need the second ath79 target.