What's new

State of the project - 2016 in review

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

2016 started on a pretty rough road for me, which means for the first few months development was pretty much frozen.

Lots of comments on this thread - but the statement above perhaps rings true for many of us - been there myself...

Hoping all is well on that front - and I think the SNB community appreciates your continued presence and contributions.

My sincere wishes for good health and great opportunities in 2017...

All the best - sfx
 
Thanks for your work. I use Merlin WRT on my AC87U.

Are the security fixes of the official build 4180 already included in 380.64?
 
Asus owes you a commission. Recently my trusty N66U suffered damage due to power fluctuations and was only able to hold settings for a day or two before it eventually went into an endless reboot. I got an AC3100 to replace it (was looking for an AC88U but my local Fry's carries literally every Asus router except that one). I'll be flashing Merlin FW soon after I give the unit a few days of burn-in.

Merlin is the only reason I have another Asus router. I would be running either a mesh, or one of the Netgear WRT routers, but I just couldn't give up the flexibility, ease of use, and security-conscious update philosophy that Merlin provides.
 
Thanks for your work. I use Merlin WRT on my AC87U.

Are the security fixes of the official build 4180 already included in 380.64?

Only the new browser-side XSS protection. The rest wasn't merged in because it was breaking various pages on the webui.
 
Hi RMerlin,

I run your flavour of AsusWRT on every router I have in active use, 3 at the moment :)
Recently I've been reporting a wifi bug on the RT-AC87U to Asus, after some weeks they gave me a beta firmware with the version 9.0.6.4_380_4005.
I was kinda hoping Asus would have released it this Christmas, instead they didn't publish the fix yet, only 3.0.0.4_380_4180 as you know.
But the fix is in the first part of the version number (I'm not exactly sure to which that number refers to though, wifi driver version?).
I do notice better wifi performance/stability and very quick wifi settings changes on that firmware, so that's something to look out for next year as well I guess :)

I used to be quite active in the improved Oleg firmware scene, when I was still a computer engineer student.
Nowadays I'm a busy working man and although I've better programming skills, I can't be bother to fiddle around with routers that much anymore.
So I want to thank you for your work, since it makes most of the things I'd like to do with my router super easy and stress-free :)
Besides that, I've a NAS nowadays for all other tasks, home-build nevertheless because I need some fiddling around still ;)

Maybe, for future development it would be nice to have static code analysis to fix potential bugs and security issues throughout the code.
This one is free for open source projects: https://scan.coverity.com/
Maybe worth looking at :)

In conclusion:
Happy holidays and new year :D
 
Thanks for your awesome work. This update is very interesting to have a hint of the future. Thanks for taking time to do that. Is there some place you are tracking what features you are working on or considering? For instance, I am very interested in seeing dnscrypt and unbound incorporated in to the gui. Do you have a place where the community can suggest things like this or vote on new feature suggestions or would you even consider that valuable?
 
Thanks Merlin. Been using your FW on my RT-N66R for 3 years and just loaded it on my new TM-AC1900 turned AC68U. Donated.
 
Thanks for your awesome work. This update is very interesting to have a hint of the future. Thanks for taking time to do that. Is there some place you are tracking what features you are working on or considering?

Not in particular. Closest you can have is to watch the code as it gets committed to Github - I tend to push my code as I work, rather than just on releases.

Do you have a place where the community can suggest things like this or vote on new feature suggestions or would you even consider that valuable?

I tend to have a very strict set of guidelines when it comes to what I want to add or change in the firmware. The most important element is the need to remain close enough to Asus's code to remain able to stay in sync with them. That means any architectural changes to the code is out of the question. Same with anything that requires changing a lot of the existing code (versus just adding it beside it).

And I tend to have a very specific view of what I want to see in a router's firmware, and what I definitely do NOT want.

So any vote-based, or even funding-backed feature request isn't going to have any effect on my actual decision when it comes to what goes in, sorry.

DNSCrypt specifically is something I currently don't intend to add.
 
thank you so much for all the time and love you've put into this - and for being the nicest bloke ever here on the forums. my very best wishes to you for 2017 & years to come!

sincerely
manu

Another year is almost over, time for a review of this project's state!

The past year:
2016 started on a pretty rough road for me, which means for the first few months development was pretty much frozen. Things started picking speed again after that, but at a slower pace, for various reasons. One of them has been Asus increasingly moving code into closed-source components, and these components are both router-model and GPL version specific, creating a few headaches for this project. I had to accept the fact that supporting the whole lineup of routers with every new release would no longer be guaranteed, and at times I had to implement a few hacks to allow some models to still work.

2016 brought new FCC rules requiring that, by July, every marketed router came with software that locked down any ability for end users to bypass power emission regulations. While different manufacturers took different stances, Asus chose to try to enforce those rules, while remaining open to third party developers. So for Asuswrt-Merlin users, the impact was none - Asuswrt-Merlin was quickly compliant with the new firmware format. (for the developer however it meant other problems - more closed source blobs to deal with... But that's another story.)

Also, this summer, Asus slowed work on the current codebase (AKA 380) and increased the amount of work done on the next major firmware release (AKA 382). Development has been taking much longer than originally expected, as they are putting a lot of work into this new version, in part due to the recent FTC settlement regarding past security issues, and requiring (among other things) that Asus submit themselves to security audit for the next 20 (!) years. For end-users, the end result should be a positive one however, with more emphasis being put on security.

This means fewer new firmware release from Asus during the last few months of 2016. The consequence this is that it allowed me to spend more time fixing various bugs and quirks throughout the firmware, and polishing a few things off. It also allowed me to work on features I had planned for the past few years but never found the time to work on until now. That led to the implementation of various graphical charts, the QoS statistics display, and the implementation of the online version checker (this one required both firmware-side and server-side work, including the rental of a small VPS, and configuration of a CDN to handle the traffic load.) None of these are major, but they were all small projects of their own.


2016 is almost over:
As 2016 closes, development has been recently focused on the move to OpenVPN 2.4 (which has a few functional changes over 2.3) and the update to Busybox 1.25.1 (everything looking good so far there), with a target release date of somewhere in January or February.

I said about a year ago that new/original development would slow down, to avoid diverging too much further away from Asus's code. The features listed above weren't a problem, because they involved separate code, rather than changing too much of the existing code. Therefore their impact on my ability to merge future GPL releases was quite minimal, which was why I went ahead with them. That would not be the case for some frequently requested features, like VLAN support (would be a nightmare to implement this without clashing with the existing IPTV code and without having the low-level Broadcom documentation), or changing multiple webui pages to allow editing of existing table entries.


2016 in summary:
  • 7 firmware releases (not counting betas)
  • Shifting to early alpha/beta availability, allowing a longer test phase throughout development
  • Addition of graphic charts and new version notification
  • A lot of fixes all over the code
  • A certain amount of polishing on the webui: hiding password fields, displaying more info on the Wireless client list, etc...
  • No new router models added (unless counting the RT-AC68U C1 and the RT-AC66U_B1, which are just revisions already supported at the GPL level)

The community:
I often wonder how many of you guys out there were running this firmware. It's hard to get any accurate numbers. Mediafire no longer provides advanced download statistics beside the vaguely accurate download counts shown, and downloads are also now spread across multiple download sites. But between the download counts on Sourceforge and Mediafire, and the amount of traffic on the version update checker server, I know this number amounts in tens of thousands of users. I find that simply mind boggling, as I originally expected this project to maybe attract a few thousand users at most.

The popularity of this project keeps surprising me, as I only see this firmware as an enhanced version of Asus's original firmware, rather than a complete alternative with a different interface and lots of additional features, like you'd get out of OpenWRT or DD-WRT. Sure, there are a few nice features added that are nice for home users, like DNSFilter or IPTraffic. I always thought that the biggest improvement over the stock firmware is the ability to do a lot of customization through the use of user scripts and customized config files. Which are things mostly targeting more advanced users - and those advanced users are usually not the majority out there when looking at who owns one of the supported routers.

The success of a commercial product can be evaluated by how much income it generates. I guess that for an open-source project, success can be measured by the number of persons using the project. So, thank you everyone for making this project a success (I guess we can call it that, since it's beating any of my expectations?). I also want to extend special thanks to anyone who has donated anything through Paypal, or has contributed code, patches or bug reports. And thank you to everyone in the community who has been taking care of providing most of the end-user support, mostly freeing me of at least one burden. Everyone of you are part of the success of this project!

Another thing that also surprises me is those forks available out there (I recently discovered there are a few more than I originally thought!) Some of them are good ( @john9527 here is doing an awesome job keeping his own fork going), others not so (non GPL compliance, dubious legal positions). I'd rather not waste any energy on that latter category. But to those working on (legitimate) forks, add-ons, commercial products (!), or directly supporting Asuswrt-Merlin (like Astril with their VPN add-on), I'd also like to thank you for your role in this community.

While there, I must also thank @thiggins for providing this community a home. This community wouldn't be what it is without SmallNetBuilder/SNBForums offering us a place to stay.


What's in store for 2017:
So, with 2016 almost behind us, what's in store for 2017?

Early in 2017 380.65 (possibly late January or somewhere in February) should land, bringing OpenVPN 2.4 (which is due to hit its final release by the end of December) and Busybox 1.25. I haven't evaluated yet the possibility of merging the 4180 GPL code in it, as I know of at least one major issue with it (various pages like the Network Tools page are broken). It will depend on how trivial it will be to track down and fix that particular issues, for starter. That's something that still need to be evaluated.

After that is where it gets more uncertain.

The fact that there hasn't been yet any new GPL release using the new 382 codebase means that, by the time it will be released, I will get a 800+ MB zipfile with source code, containing 6+ months of code changes done throughout the entire firmware by a whole team of programmers. For a one-man project like Asuswrt-Merlin that will have to deal with that, that's bad. If I'm lucky, I'm facing a few weeks of work to merge everything, and a few weeks of extensive beta test to ensure nothing got broken. But there's also a possibility that there might be so many changes happening at once that it might perhaps be impossible to update this firmware project to use the new 382 code, short of rewriting a lot of it. Remember that I don't get a list of separate patches and a changelog. What I get is this 800+ MB zip with the (mostly uncommented) source code, and I have to compare it with the previous code to know what changed, and then devise a way to merge those changes with my own (already diverged) codebase.

That means until I can see the 382 GPL code, I have no idea what's next for this project. I will have to consider my options once I know for sure. At this point, I'd rather not speculate too much without having all the information. But I do have multiple possible scenarios in mind.

But for now, I think Asuswrt-Merlin is in a pretty good place. It's still not perfect, there are a few known issues still there, some more complex than a project handled by a single developer could address on his own. But in general I'd say 380.64 is a very solid release when compared to the previous releases, thanks to the past few months being spent on fixing a lot of those minor issues. So if there were to be a large gap of time between the 380.64 release and the next stable release (380.65 might be considered a bit more experimental due to the low-level changes currently planned), I'd be perfectly comfortable with having 380.64 have a longer lifecycle than past releases (which generally had about 4-6 weeks of life until the next release.)

Ok, this was far more long-winded than I initially intended, so sorry about that :) Have a great Holidays everyone!
 
I just have to say thanks for the GREAT work on these firmware releases. Looking forward to testing new releases in 2017! Happy new year!
 
I know when I was looking to replace my pfsense-based firewall (running on an old pentium computer, using tons of power), my research led me to conclude I had to have an Asus router because only there could I get the Merlin firmware. Thanks for all your hard work and dedication to this project.

Happy New Year to you, sir!
 
The flexibility of Asus routers to run custom firmware and hardware specs led me to Asus units. My research brought me to your particular development and the general community support sealed the deal. I've always been a supporter of gnu/open source software and back in my actual full time development/IT days I contributed as much as I realistically could. You certainly represent the open development (sorta open) ideals well and put in considerable time when I'm sure you have 2309482390 other things you could be doing.

Even though I'm having some issues right now I like the software and will continue to use it. Thanks man!
 
It would be interesting to get an estimate on the pervasiveness of the Merlin code. I know for me, I have passed it along to most of the people I know who run Asus hardware and all have been running it judiciously. It's nice to have code that just works, sometimes developers are far to quick in releasing code that isn't fully tested.
 
I just wanted to add another thanks to Merlin for all you do for the community! I have used your firmware since a week after I got my 68U last year and havent looked back!
 
You ever consider doing something with Netgear's pathetic GUI? They do seem to have some good hardware.
 
Check out the work by XVortex on Netgear R7000. It is based on Asuswrt-Merlin v380.64

Seems to me to be theft honestly... of both Asus IP and RMerlin's contributions to it...

And he begs for money...

Screen Shot 2017-01-09 at 7.18.54 PM.png
 
I asked him once to publish his source code, and he never replied.

Last time someone asked him a few weeks ago, he flat out posted that he didn't care about the GPL.

So my advice is to stay away from this firmware, until he complies.
 

Similar threads

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top