What's new

Buildable version of R7800 Voxel firmware

  • 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!

xyzzy

Occasional Visitor
I wanted to build Voxel's R7800 firmware myself, so I could include a couple extra utilities to help recover the flash. But it didn't build without quite a bit of work.

So I put everything I did here, on a github fork, https://github.com/xyzzy42/R7800

This should be able to build with just `git clone`, `make`. Other than annoying step of getting a qca nss wifi driver firmware blob that isn't available to download. The repo has a much better README I wrote that explains it in more detail.

It might be a bit much for someone who has never used Linux. But for a Linux user, it should be a piece of cake.

I based it on the v1.0.2.93SF release. AFAIK, that's the newest one as of now.
 
I've adjusted the docs to correctly describe the NSS firmware. I also wrote a program to extract it from a R7800 firmware image and automatically made a "source" tarball for building with.

This is pushed onto the repo described in the OP. It's still on .93SF because Voxel hasn't released .94SF source.

Example of running the extract script:

Code:
[~/R7800 ]$ scripts/r7800-nss-fw.py R7800-V1.0.2.93SF.img
Image header detected, fw for R7800 version V1.0.2.93SF
Firmware file appears ok, root squashfs size is 28764160 bytes

Parallel unsquashfs: Using 24 processors
2 inodes (3 blocks) to write

[==========================================================================================================================|] 3/3 100%

created 2 files
created 3 directories
created 0 symlinks
created 0 devices
created 0 fifos
created 0 sockets

Detect NSS FW version is NSS.AK.1.0.c8-00015
Creating archive NSS.AK.1.0.c8-00015.tar.bz2

NSS.AK.1.0.c8-00015/
NSS.AK.1.0.c8-00015/README
NSS.AK.1.0.c8-00015/R/
NSS.AK.1.0.c8-00015/R/retail_router1.bin
NSS.AK.1.0.c8-00015/R/retail_router0.bin

Success!
 
It turns out it's necessary to get the Atheros wifi firmware to make a working image. This is something that's been stripped from Netgear's firmware source release. But they left behind some references to a file with the firmware and some package names. Voxel also stripped this from his source release too.

I added it back in. Latest branch on my repo has updated the NSS extract program to also extract and create a source tarball of the Atheros wifi firmware. One just needs to run the extractor on any .img file from a firmware update. I also created a new package to hold the wifi firmware that serves the replace the one that's been removed.
 
It's on github, so all changes are visible as commits.

The difference is, it actually builds.
 
I did include ubiformat and ubiupdatevol from mtd-utils. It's not useful unless you want to try to manually recover from a broken ubi partition. Which can be done.
 
I am dreaming of making a clean firmware (based on Voxel's), stripped of the net-cgi and most Netgear stuff and DNI scripts, except what is strictly necessary for acceleration, using modern DHCP servers and clients, etc… and make a clean efficient new web interface for settings…

This is only a dream though.

This would be a really huge work, particularly for old discontinued routers… and considering that just making a real up-to-date top-notch optimized firmware based on the official one without major changes in its structure or usage (what @Voxel is doing) is already labor intensive! (Thank you again @Voxel for your dedication and rigorous hard work!)

However, the day my R7800 will be too old, I will look for a purely open source router but with hardware acceleration (maybe building it myself from a good and appropriate SBC). This does not seem easy to find though… The robust R7800 should last a while.

PS: without fbwifi, absolutely no issues so far ;)
 
I think what you want is called OpenWRT. The problem is without the support of the manufacturer and chip vendors, it doesn't have as good of hardware support. Like the NSS acceleration.
 
I think what you want is called OpenWRT. The problem is without the support of the manufacturer and chip vendors, it doesn't have as good of hardware support. Like the NSS acceleration.
:pLOL

Yes, OpenWRT is all good, but as you already know, no acceleration… Not acceptable for me.
Netgear’s original firmware is outdated and full of problems… Not acceptable for me.
@Voxel ‘s firmware is really the reason why I bought my R7800 (I never used the original firmware).
 
That's great! I've been looking to do the same with the RBR50 firmware. Definitely going to check this out.
 
:pLOL

Yes, OpenWRT is all good, but as you already know, no acceleration… Not acceptable for me.
Netgear’s original firmware is outdated and full of problems… Not acceptable for me.
@Voxel ‘s firmware is really the reason why I bought my R7800 (I never used the original firmware).
So just so im clear Openwrt has no acceleration for clients for downloads? but Voxel does have acceleration for faster downloads or uploads?
 
So just so im clear Openwrt has no acceleration for clients for downloads? but Voxel does have acceleration for faster downloads or uploads?
Exactly.
OpenWrt is not fully accelerated for R7800 while Voxel is ;)
 

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