Cisco/Linksys E4200 overclocked to 532 MHz

Difference between DD-WRT BrainSlayer, Eko, Fractal, and Kong Builds 31

Cisco/Linksys E4200 overclocked to 532 MHz

It’s a question asked in the DD-WRT forums all the time. It’s a question often asked in the comments of my DD-WRT posts. And it’s a question to which no “official” answer from the primary maintainers of DD-WRT exists… and therefore it will probably keep getting asked. However, based on my experiences (and some conversations with some of the builders themselves), I’ll take my best stab at explaining the differences between the various popular builds of DD-WRT, particularly those released by BrainSlayer, Eko, Fractal, and Kong — and finish with an explanation of why you really should ignore the Router Database on the DD-WRT website. I welcome updated and corrected information in the comments, and I’ll incorporate it into the post.

First, let’s start with BrainSlayer. His real name is Sebastian Gottschall, and he’s the founder and primary maintainer of the DD-WRT project. As such, BrainSlayer gets the final say regarding what bits are included in the “official” stable release versions. However, the last stable release, known as Version 24 Service Pack 1 (or more commonly seen as v24 SP1) came out way back in July 2008. Since then, the WiFi technology landscape has changed massively, there’s been flurry of development activity in the third-party open source router firmware space, and literally hundreds of new router models have come on the market. That means that BrainSlayer’s goal of creating and packaging “one firmware to rule support them all” is a major challenge.

BrainSlayer actively contributes to the DD-WRT source code, and tracks all source code development with the Trac SVN system (you can view the timeline of that development here). Every new code changeset that gets committed to the system is automatically assigned a changeset number (for an example, click here to see what changeset 22212 looks like). Because it’s an open source project, anyone is welcome to download any version of the DD-WRT source code from the SVN and compile their own binary firmware file.

Which brings us to the difference between “source code” and “build.” Most open source projects have a central repository where the source code is managed, and developers make changes to that source code based on feature requests and bug reports from users. Source code is generally hardware “agnostic” — meaning it’s not targeted specifically to one particular hardware platform. Take the open source browser Firefox as a well-known example. Even though the Windows, Mac, and Linux versions of Firefox all share the same central source code, you can’t run the Windows version of Firefox on Mac or Linux, or the Mac version on Windows or Linux, or the Linux version on Windows or Mac. That’s because source code needs to be compiled (or built) for a specific hardware platform before it can be used on that platform. DD-WRT is no different. Even though they may share the same source code, a DD-WRT firmware file that was compiled specifically for a Linksys router won’t run on a Netgear or Belkin router (and in fact, might break it).

When BrainSlayer himself builds a set of binaries (based on one of the changesets in the source code), that’s called a BrainSlayer build. BrainSlayer builds do not happen often, and are only available on the DD-WRT website. Final “stable” builds (like the one from July 2008) are always BrainSlayer builds. “Official” development releases (listed on the front page of the DD-WRT website) are also BrainSlayer builds. BrainSlayer’s development builds tend to focus on supporting only the most recent router hardware. As such, most of the BrainSlayer “development” releases are generally not compatible with router hardware that may be only 1-2 years old. And the “stable” releases are so old (again, 2008!) that you’re missing out on a massive amount of features by running them… which is why other contributors’ builds are popular among open source firmware users.

If you examine the SVN timeline, you’ll see that BrainSlayer isn’t the only person committing changesets to the project. On the DD-WRT About Page, he lists a number of other contributors to the project, including Ales Majdic — better known in DD-WRT circles as Eko. Eko is less active these days, but used to be a major contributor of bug fixes and new features to the DD-WRT source code. He is perhaps best known for being one of the first developers to create separate builds (called “rolling” a build) that incorporated older drivers for some of the older hardware (referred to as “VINT” for “vintage”). In those builds, Eko removed some newer packages from the source that wouldn’t compile properly for older router hardware (especially Broadcom). Even though Eko no longer actively creates test builds, his older builds can generally be found on the DD-WRT website and still work on older hardware.

Another popular builder is Kong. Kong’s older “kongmod” builds focused on making tweaks to the source code to allow compatibility with certain types of hardware, with an emphasis on getting as many features and drivers working on various router hardware, even if that means patching some of the drivers with versions that are even newer than the ones used in the official source. But that’s no longer the case. BrainSlayer has since granted write permission to the DD-WRT source code repository, so Kong no longer creates patches outside of the source — and no longer creates “kongmod” builds. His patches and tweaks are now contributed directly to the DD-WRT source code project, and his current builds are (in his words) “plain DD-WRT without any extras.” Kong recently told me:

Thus you won’t have any benefits anymore by flashing my builds, except that I’m able to provide sometimes more recent builds, as I concentrate on a subset of supported routers. In addition to that I do some basic testing with the units I own and I usually don’t upload builds that have issues with basic functionality. Since Brainslayer cannot test each build on every router he supports you will see issues for his builds like fw not beeing flashable because it is a few bytes to big, or broken wireless etc. That’s the reason why my builds are popular among users that have the unit I develop for.

Kong’s builds (both the older “kongmod” and newer “plain dd-wrt” versions) can be found here. Kong also gave me a humorous description of how some of the well known DD-WRT contributors and builders could be considered:

Brainslayer is Master Yoda. I’m now Obi Wan. Fractal is a Padawan. Eko is a retired Jedi Master. There are a few more Jedi Masters e.g. Sash, Chris, Markus 🙂

Sash, Chris, and Markus are known contributors to the DD-WRT source code, but don’t actively create test builds. And Fractal? Let’s discuss him next.

Fractal is a relatively newer contributor to the DD-WRT project, and will also contribute to the main DD-WRT repository. Like Kong’s newer builds, Fractal’s builds are also based on the central DD-WRT source code, but with a primary focus on rolling builds for Broadcom-based hardware, especially the newer Cisco/Linksys routers. Fractal is known for rolling a large number of “trailed” builds specifically those types of units, which allows them to be flashed directly from the stock firmware. Fractal has told me:

 I do / have been concentrating on Broadcom builds especially with the new hardware, aka E series routers, and now the AC devices. I roll trailed builds when I know something major has been fixed and I do contribute to the SVN trac, however I have not the Jedi master — I leave that to Brainslayer and Kong….

Fractal’s builds can be found here.

So, which build is right for you? In the past, that depended primarily on your hardware and your goals. For older Broadcom stuff, you’d run Eko. For bleeding edge features, you’d run a kongmod. For newer Broadcom stuff, you’d probably lean toward Fractal.

But now, with the DD-WRT source tree unified, and all the major builders and developers feeding into (and from) the same source code repository, it now matters a lot less which test build you run (especially if you have current WiFi hardware). If you insist on an older “official” build, even if that means you’re missing out on features, then go for a BrainSlayer “stable” build. The best advice I can give you when choosing the right build for you is the start with the DD-WRT wiki entry for your specific router model. It will (usually) contain up-to-date information regarding where you should at least start, and then watch the forums to see which builds are stable.

Where you shouldn’t go, however, is the “official” DD-WRT router database. It’s ridiculously outdated (which is a problem known to the DD-WRT developers), and probably won’t be improved until the next official stable release comes out (again, the last one was 2008). Users of routers with Broadcom internals are strongly encouraged to read what is referred to as the Peacock Thread before proceeding with any DD-WRT install. That tread includes the following:

DON’T USE THE ROUTER DATABASE! The router database has recommended some less stable builds, including SP1 and 13064 (10/10/09) build. I suggest using the builds that are recommended here or in Redhawk’s announcement above, rather than the ones in the router database. SP1 is full of bugs, and while 13064 is not nearly as bad, some are reporting connection issues fairly regularly. Sometimes the router database also has had the wrong build type. The router database is being worked on improve the recommendations but it still contains errors and bad builds. Do not skip over reading the install wiki for your router just because you got the files from the router database. You need to KNOW what to do with those files. The wiki usually has the right builds for particular routers. READ THE WIKI!

If you use a Linksys E4200 v1 router, I maintain a separate blog post that always includes my recommended build for that router (since that’s the one I use in a number of different locations). As long as I use that router and DD-WRT, that post will stay updated with the build I think works best.

To sum up, the bottom line is that all the builds, whether BrainSlayer, Eko, Fractal, or Kong, share the same central code from the official DD-WRT source. Those builders will pick a changeset number and create a build (whose build number matches the changeset on which it’s based), and then compile the source for the specific hardware models in which they focus.

Development versions of open source firmware (which all of these builds are) are different than what are considered “stable” or “release” versions. And one of the differences is that it requires a bit of work to inform oneself as to what will work best for you. If you’re not willing to put in that work, you’re better off just keeping the stock firmware that came with your router. But if you’re willing to read the DD-WRT wiki, browser through and participate in the forums, and seek out blog posts like this one, you’ll be rewarded with the ability to squeeze the maximum performance out of your router hardware.

I welcome your comments and feedback below. I also welcome corrections, especially from any of the individuals mentioned in this post (I always prefer to get official information direct from the source). Please be aware that I don’t offer DD-WRT support, and I can’t answer questions such as “I have XYZ router – what build should I be running?) Your best source of specific information about DD-WRT is always the DD-WRT forums. 🙂

  • Matt

    Thanks for this … always wondered 🙂

  • Geoff

    Hi Steve,

    This is well written and researched article about DD-WRT builds. I have a couple of non bleeding edge Netgear routers (WNR-3500L) and I have found the Kong builds suit my purposes best for two reasons: they work with Optware and they include a really useful set of features together for a home router (VPN plus USB and external drive support).

    Optware is great because you can simply download additional packages without having to compile them. The tcpdump program is probably one of the most useful for debugging problems and generally keeping on top of issues on your network.

    The generic DD-WRT builds cannot run Optware because support for soft floating point is not enabled in the kernel. Soft floating point support in the kernel is required by Optware unless you re-compile whatever Optware packages you want to install (which basically defeats the benefit of Optware). Kong enables soft floating point in the kernel to allow his builds to run unmodified Optware packages.

  • mark

    Thank you very much – I just found this page, and intend to pass the link along.

    However, it doesn’t answer the question I need answered: I have an Asus RT-N16, 32k NVRAM, 32M flash. I really want to use it as a printserver for a USB printer, and older builds don’t seem to let me (and ipkg was broken on the builds that I tried from the router d/b….) Anyway, I’ve d/l, from the kong directory, a 22200 build, but have no idea whether to use the kingkong build for that memory, or the usb-ftp.. There’s no readme, nothing. Do you have any idea of the difference, or how I can find out what the difference is?

    Thanks in advance.

  • Cameron

    Thanks for the well thought out article! Always wondered about the different users who make all this possible and what their niches are.

  • NeilPeart

    Somewhat off-topic, Steve: I’m ready to install DD-WRT on my E4200 v1 and I see you recommend version 23040 in a different article – is that still your recommendation? Is there anything particular you look for when selected a DD-WRT version?

    • Hey, NeilPeart. Yes — I always keep that article up to date with my recommended build, so whatever is currently recommended there now is what I suggest you run. As for what I look for when recommending a build, it’s primarily stability. I always test the newer builds when they come out, but if they have major bugs that affect usability or stability, I hold off on recommending that build, and then wait to test the next one.

  • NeilPeart

    Thanks for the prompt response, Sir. Your site is a wealth of information for fellow car/home theater/computer/geeks. Merry Christmas.

    • Thanks – and Happy New Year to your and yours! 🙂

  • Eddie

    Excellent article!! Reading the wikis and the forums ended up going in circles, and you’ve explained much. I have a question re ownership of release- you hint at the answer with….

    “BrainSlayer, Eko, Fractal, or Kong, share the same central code from the official DD-WRT source. Those builders will pick a changeset number and create a build.”

    When those guys pick a number, is it unique? I.e. If I see a reference in the forum to r22200, can I assume this is definitely a Kong build, or would there be a version of v22200 from each of the contributors? I’ve tried to find the answer to this by searching but I can’t get anything solid. If it’s unique, knowing this suddenly makes the forum a lot more meaningful!

    • Great question, Eddie. As far as I can tell, there’s no “official” agreement among them to prevent builds with the same build number from different authors, but… it hasn’t happened yet. So yes — it’s generally safe to assume that the build number is unique to the builder.

    • Sleepyhead

      In SVN the ID is incremental, so every time an author makes a change the number is stepped. They are not picking the number, they get the next one assigned. You can only influence the number by making empty commits so that you get a rounded number.

      The author of the change may also be interested in building an image from the latest code he just changed, so it’s not completely coincidential that the latest commit results in a build from the same author. However everybody could make an image based on any version of the sourcecode.

      • Eddie

        @Sleepyhead, that’s great information which reinforces the point. Additionally though, most of the end users are not coders, and will have little knowledge about SVN or its etiquette. I know coders have little love of documenting, so it’s easy to see how this can be missed for end users. Even now, a question forms in my mind, “How do we know all the devs are definitely using the same SVN project?”. Those who don’t know the etiqutte are left to guess.

        So for other newbies like me who find this excellent article, we can conclude: Every DD-WRT release is definitely unique to the dev.

  • Will

    Thanks a lot, this article cleared my confusion.

  • Jerry Dos

    Great read, thanks for clearing up so much.

    That said, wish there’d been a little more about versions, and the router database. Like, who is “maintaining” the router database, how can it be so ‘unpredictable’ and still be allowed to exist?

    Even the dd-wrt hardware-specific wiki creates confusion; for example, TRAC reports latest build (as of today) is 23720, but the hw wiki for a Netgear WNDR3700 is stuck at 23598. Scouring the TRAC website reveals no clue as to which version applies to which make/model router, IOW why don’t all routers simply use the most recent build? (Or is the hw-specific wiki also unreliable?)


  • Pingback: How to Install DD-WRT on ASUS RT-AC66R Router()

  • Pingback: My Cisco Linksys E4200 DD-WRT Settings for Max Speed | Steve Jenkins' Blog()

  • Max Hopper

    Umm, not so fast, Steve. Brainslayer is not ‘all that and a bag of chips’, so to say –

    • Hi, Max. I never claimed that he was all that. 🙂 Merely trying to sort through some of the confusion regarding “named” builds. As to whether or not DD-WRT is a “good” project, or whether Brainslayer was or wasn’t “doing it right,” and how much of DD-WRT is based on Sveasoft code, is a whole other discussion. But for better or worse, DD-WRT is Brainslayer’s project.

  • Hopp

    Hi Steve, fractal’s download page is down. Probably you could update this blog post with new one. Also kong’s builds are not there anymore. Although, there is a note on that ftp server, where to find them. And surprisingly it leads back to dd-wrt ftp :).

  • Pat

    Hi Steve
    Anyway to get the link for Kong build? I am having trouble finding it. Thank you so much.

  • Pingback: HSL – 2014.11.01 – WEEKLY UPDATE | HSL()

  • bob jonus

    now that Kong is done, what is the best hardware/firmware option?

    • Hey, Bob. As of Nov 2014, I’m thinking seriously about going with the Netgear R7000. Kong is still developing for that unit, and it’s got great hardware features to try and keep up with the faster residential bandwidth speeds providers are starting to offer. I’ll be asking Santa to put one in my stocking. 🙂

  • Thank you for sorting it all out. A lot of top security experts are like “Use DD-WRT”, but they look pretty half ass with a 2008 build in 2014-soon-to-be-15 and I could never figure out why some people direct you to “” and others are like – “Oh no, you need:” (they are exactly the same).

  • Thank you for the article. I was finally able to get Optware working with a Kong build. Spent a few hours trying to figure out why BrainSlayer build didn’t work prior to finding this information.

  • Pingback: Difference between DD-WRT BrainSlayer, Eko, Fractal, and Kong Builds | Never Ending Security()

  • Thanx for that insight into DD-WRT.

    greetings from DD/Germany 🙂

  • Pingback: My Cisco Linksys E4200 DD-WRT Settings for Max Speed -

  • “Better” is a relative term. 🙂 I’ve tried OpenWRT, and it does a lot of things well. I still prefer DD-WRT. But it’s easy to try OpenWRT, then Tomato, then DD-WRT, then go back to stock. Use the one that works best for you!