Is OpenWRT easy to use and update?

Preface: I have 0 experience with OpenWRT/DDWRT and flashing ROM’s via serial.

I’m thinking of installing OpenWRT on my Meraki MR33 AP (access point), which is BNIB (brand new in box), which I got for free from some Cisco Webinars. If I don’t install OpenWRT (or similar) on the MR33, after 3 years of use, the MR33 becomes an expensive, useless paperweight, because to use an MR33, you are required to “purchase” a license, every year, until it goes into the dumpster (after the 3-year “trial” ends).

Questions:

  1. How exactly does OpenWRT work? Is it pretty much a complete replacement for a stock AP/router firmware?
  2. Will it be fine to use on an AP, or is OpenWRT primarily targetted towards routers?
  3. Am I limited to only a single version of OpenWRT (the version used for this instruction guide, which is version OpenWRT-18.06.01), or can it be upgraded to a newer version (from the OpenWRT website), once OpenWRT is installed onto the MR33? Am I limited to only OpenWRT versions pre-compiled specifically for the MR33?
  4. How does performance of a stock firmware and OpenWRT compare for other AP’s/Wireless routers?

Thank you :slight_smile:

I have it on my hardware. It really is vendor specific. I use it on my Asus routers and since its community driven you can expect updates far longer than asus gives, but still a maximum shelf life of around 5 years.

Wireless radio performance has always been lackluster in comparison to vendor supplied binaries, but given the feature set its always worth the hit.

So I’m assuming that OEM’s like Qualcomm and Broadcomm don’t provide the OpenWRT team with official firmwares/drivers for their IC’s, to get the optimal performance out of the IC?

I’m also assuming that for me to upgrade the MR33 with OpenWRT, I’ll need to wait for someone to create a pre-compiled version of OpenWRT specifically for the MR33?

I mean I’ve compiled OpenWRT from source before. If the source code is available its not hard, just time consuming. But yes. Finding pre-compiled binaries would be optimal.

Ill be frank to the OP. ALL open source firmware is vendor specific but more OEM vendor not the maker like ASUS

@TheAlmightyBaconLord here is how I break it down

DD-WRT if you are unsure of the hardware or cannot find anything else.
Open-WRT - Qualcomm Atheros Hardware
Tomato/Advanced Tomato - Broadcom Hardware

Oh librecmc if you can but the others will do. The reason wireless performance takes a hit is not really due to not being on stock its due to using the wrong alternate firmware with sometimes not always updated drivers.

There are alot of tweaks you can do with the wifi radio on these firmwares so you can restore good performance

2 Likes

How exactly does OpenWRT work?

OpenWRT is a Linux distro first and foremost. Source code is available, and you can build it yourself if you want.

Official builds are device-specific, and will generally use whatever format firmware file the default device accepts.

Flashing from default to OpenWRT is generally prety easy. First time might require a special firmware image, but subsequent installs and updates can be done using SSH, TFTP, or the standard web interface.

Is it pretty much a complete replacement for a stock AP/router firmware?

It’s a generic router and access point system. It might not have every feature supported by your device. On the flip side, it sometimes supports many more features than your default, too.

The default web interface is Luci. All of the important, basic settings are editable through Luci, and add-ons are available for Luci integration into non-basic feature like advanced QoS, file servers, or adblocking.

OpenWRT uses the opkg package manager to install, update, and remove packages. If you’re familiar with Debian’s apt-get or Alpine Linux’s pkgadd, it should be familiar. Updates can be performed through Luci, or via SSH.

Will it be fine to use on an AP, or is OpenWRT primarily targetted towards routers?

Using OpenWRT as an access point is a common use-case. Should be fully supported.

Am I limited to only a single version of OpenWRT

Generally, there’s only one supported, active release at a time. Some older devices get dropped, which is why you might see references to older versions. That’s not a good sign.

Once a device is supported, it generally stays supported for a while. As long as there’s someone in the developer community maintaining it, you should see updates across major versions, as well as minor releases.

From personal experience, I’ve taken devices across several major releases without major problems. Occasionally, a major update might require a device wipe. Luci provides a way to export settings, so this generally isn’t a huge problem, and isn’t always needed anyway.

Am I limited to only OpenWRT versions pre-compiled specifically for the MR33?

Not strictly, but the device-specific nature means that all of your devices are recognized and supported. You might be able to flash another version of OpenWRT, but it’s generally not recommended.

If you want something custom that isn’t included in the default build, it’s generally a better idea to start with the default build for your device, and selectively add the features that you want.

For the vast majority of users, this will never be needed. The default firmware is generally very capable. Between minor releases, opkg updates, and the ability to extend the device using extensions, most people don’t need more than the default.

But you do have options if you just feel like tinkering or want to learn more about your device or OpenWRT.

How does performance of a stock firmware and OpenWRT compare for other AP’s/Wireless routers?

Generally better, but not always.

So I’m assuming that OEM’s like Qualcomm and Broadcomm don’t provide the OpenWRT team with official firmwares/drivers for their IC’s

Broadcom is notoriously bad for not proving source for their devices.

Atheros chipsets are probably the best supported - most of them have mainline Linux kernel support. Fortunately, the MR33 seems to be Atheros based, so you should be good on that front.

1 Like

OpenWRT consists of 4 things:

  • a Linux kernel with wifi and switch drivers
  • userspace utilities - daemons and scripts and webserver used to configure
  • build system with some helper utilities that builds the kernel and these userspace utilities for the CPU/hardware/manufacturer and sticks them together into flashable images
  • release process that once in a while branches master/head and revs the version number, and otherwise it produces latest (like dailies/nightlies) of all images from head/master

There’s a lot of makefile glue and helpers for this and that and helpers that build gcc required for crosscompiling everything.

A lot of devices share the same kernel and drivers and only differ in dts files (think of dts/dtb as either a replacement for x86 acpi tables or as equivalent to command line arguments to drivers).

Usually (99.99%) the bootloader on all the devices is untouched by openwrt.

There’s a couple of irc channels, devs and people with some experience tend to hang out there. Some devs are employed by Qualcomm/Belkin/mediatek/tp-link some are there on their own time

1 Like

You can always consider Gargoyle. I have been using it for years on one of the old TPLINK router as a wifi hub for the printer.

I thought gargoyle development was dead… (It’s certainly less active than openwrt)

It seems that they are still alive. The latest version 1.11.0 is from 02/21/2019 and based on OpenWrt 18.06