What's new

Custom firmware build for R7800

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

4.9.2 to be exact

Thank your for info.

It would be interesting to check with more new version of GCC...

Just FYI:
GCC 4.9.2
  • As of GCC 4.9.2 a workaround for the ARM Cortex-A53 erratum 835769 has been added and can be enabled by giving the -mfix-cortex-a53-835769 option. Alternatively it can be enabled by default by configuring GCC with the --enable-fix-cortex-a53-835769 option.

https://gcc.gnu.org/gcc-4.9/changes.html

I agree with you that there should not be "over optimization". But there should not be "under optimization" too ;). Reasonable compromise. But one of the key advantages of my build is not only GCC optimization, but replacement of obsolete packages (2010-2012 vs 2016-2017 in my build) what allows to get more stable work of the router, closed security holes, and increased performance, not because of GCC options, when such stuffs as e.g. use of asm optimization which is possible only in fresh version of OpenSSL but not in old 0.9.8. Or the same LZ4 compression for OpenVPN using external accelerated liblz4.

Voxel.
 
Thank your for info.

It would be interesting to check with more new version of GCC...

5.4 isn't much different...

note the a53 errata - it's only triggered in ARMv8 AArch64 - android is at risk, as there are a number of core frameworks at risk there - since my board is running in 32-bit armv7-a, no impact.

FWIW - a53 doesn't really benefit from armv8 in my experience, just uses more memory and the binaries can be larger... but it runs it obviously, but one could also just consider it a better cortex-a7... like your effort, tune the kernel and libc, along with targeted libs, rest of userland is regular old armhf (armv6 + vfp), that way we can jump from chip to chip without too terribly much porting effort.
 
5.4 isn't much different...

note the a53 errata - it's only triggered in ARMv8 AArch64 - android is at risk, as there are a number of core frameworks at risk there - since my board is running in 32-bit armv7-a, no impact.

FWIW - a53 doesn't really benefit from armv8 in my experience, just uses more memory and the binaries can be larger... but it runs it obviously, but one could also just consider it a better cortex-a7... like your effort, tune the kernel and libc, along with targeted libs, rest of userland is regular old armhf (armv6 + vfp), that way we can jump from chip to chip without too terribly much porting effort.

You know, I am stubborn ;). Over optimization with use only pure compilation options is bad, sure. Bad codes are bad codes even with maximal compiler optimization. Coding art is a must. Programmer should optimize his codes w/o relay to "clever compiler". But I'll continue to use my options. Not so important for firmware to provide compatibility and portability for resulting binaries. Practically all specific options are in the single config file. Source codes are still OK for porting to other's platforms. And one from additional advantage of my selected options is that I had in result smaller binaries and thus smaller firmware size. Saving space (~1MB total) vs generic armv7 + vfp.

Voxel.
 
can this router can run plex via optware and stream 4k
 
How far a router can be stress tested. Say

4 Wired devices doing upload and download say 100gb each with queue of Incremental backup
15 wireless devices downloading and uploading via Internet 500Mbps
4 devices are updating the stats and controlling in home devices
of all 2 usb drives attached are backing up the pictures from all these smartphones of 15 devices photos and videos at some intervals.

Will this stress test be handled well with any specific router.
 
can this router can run plex via optware and stream 4k
Theoretically it is possible to run plex. Something like it is described here:

https://www.hqt.ro/plex-media-server-through-debian-arm/

using Entware and Debian. Practically, I am not sure that it is legal. I tried only for test - it is possible, but I removed all my tests. minidlna covers all my needs.

Stress test: just try when you get your new R7800. You will get one of the most powerful routers in the world.

Voxel.
 
Yes I know, I have AC68U, so I am familiar with its OpenVPN client WebGUI page (Eric firmware). Maybe I'll try to implement this (OpenVPN client) but there are significant obstacles: I do not have all source codes of stock FW, especially firewall and WebGUI...

Voxel.


I did reply in the other thread you made about the OpenVPN need for this router.

I bought my R7800 and whilst I do miss the AsusWRT-Merlin firmware that I was using on the R7000 I have found that the Kong's builds of DD-WRT for the R7800 has an OpenVPN client within the interface.

A pity that Netgear do not build this in for their routers, as a client.
 
Last edited:
Hi voxel need your help. In stock firmware i am facing 2 issues.

1.

its been reported by other users that wifi devices connected but the internet stops working until the client reconnects by disconnecting. But the user didnt do that he simply reboots to fix the issue and it will come in just few minutes to hours but the same day.

2.

QOS live bandwidth monitoring by devices page is buggy and it wont show me + symbol nor bandwidth bar even though i am using full 100Mbps .

Initally it happened via Remote access to gui and now i see the issue is replicated if you are connecting via client and disconnected say after 5-10 minutes reconnecting it but the router page is still in the QOS it brokes the functionality . Even though it reauthenticate the qos or live bandwidth is broken and not working
 
root@R7800:/# /bin/sh /etc/init.d/streamboost restart
StreamBoost: Restarting
streamboost: StreamBoost: Executing start all
[ OK ] 01_redis start
[ OK ] 10_policy-reader start
[ OK ] 11_sbsaved start
[ OK ] 12_settings-loader start
[ OK ] 13_prio-reader start
[ OK ] 25_sea start
[ OK ] 30_sbnoded start
[ OK ] 31_nodedetectd start
[ OK ] 32_sbnamed start
[ OK ] 33_sbmacouid start
[ OK ] 34_jigglyp0f start
[ OK ] 35_leash start
streamboost: Action
[ FAIL ] 40_qdiscman start
Setting up qdiscs on interface brwan
RTNETLINK answers: Invalid argument
Starting Firewall...
Done!
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
streamboost: StreamBoost: Executing stop all
[ OK ] 60_ozker stop
[ OK ] 52_p0f stop
streamboost: streamboost update
[ OK ] 50_drflocs stop
[ OK ] 49_cape stop
Downloading https://updates.r7800.netgear.streamboost.yeti.bigfootnetworks.com/banana/packages-2/Packages.gz.
[ OK ] 45_flowman stop
[ OK ] 44_overlord stop
[ OK ] 43_flowmark stop
[ OK ] 40_qdiscman stop
[ OK ] 35_leash stop
[ OK ] 34_jigglyp0f stop
[ OK ] 33_sbmacouid stop
[ OK ] 32_sbnamed stop
[ OK ] 31_nodedetectd stop
[ OK ] 30_sbnoded stop
[ OK ] 25_sea stop
[ OK ] 13_prio-reader stop
[ OK ] 12_settings-loader stop
Updated list of available packages in /var/opkg-lists/streamboost.
streamboost: [ OK ] Everything is up-to-date.
[ OK ] 11_sbsaved stop
[ OK ] 10_policy-reader stop
[ OK ] 01_redis stop
streamboost: flushing conntrack
Starting Firewall...
Done!
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
killall: poll_set_priority: no process killed
root@R7800:/#
root@R7800:/# /bin/sh /etc/init.d/streamboost start
streamboost: StreamBoost: Executing start all
[ OK ] 01_redis start
[ OK ] 10_policy-reader start
[ OK ] 11_sbsaved start
[ OK ] 12_settings-loader start
[ OK ] 13_prio-reader start
[ OK ] 25_sea start
[ OK ] 30_sbnoded start
[ OK ] 31_nodedetectd start
[ OK ] 32_sbnamed start
[ OK ] 33_sbmacouid start
[ OK ] 34_jigglyp0f start
[ OK ] 35_leash start
streamboost: Action
[ FAIL ] 40_qdiscman start
Setting up qdiscs on interface brwan
Setting up qdiscs on interface br0
RTNETLINK answers: Invalid argument
Starting Firewall...
Done!
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
streamboost: StreamBoost: Executing stop all
[ OK ] 60_ozker stop
streamboost: streamboost update
[ OK ] 52_p0f stop
[ OK ] 50_drflocs stop
[ OK ] 49_cape stop
Downloading https://updates.r7800.netgear.streamboost.yeti.bigfootnetworks.com/banana/packages-2/Packages.gz.
[ OK ] 45_flowman stop
[ OK ] 44_overlord stop
[ OK ] 43_flowmark stop
[ OK ] 40_qdiscman stop
[ OK ] 35_leash stop
[ OK ] 34_jigglyp0f stop
[ OK ] 33_sbmacouid stop
Updated list of available packages in /var/opkg-lists/streamboost.
streamboost: [ OK ] Everything is up-to-date.
[ OK ] 32_sbnamed stop
[ OK ] 31_nodedetectd stop
[ OK ] 30_sbnoded stop
[ OK ] 25_sea stop
[ OK ] 13_prio-reader stop
[ OK ] 12_settings-loader stop
[ OK ] 11_sbsaved stop
[ OK ] 10_policy-reader stop
[ OK ] 01_redis stop
streamboost: flushing conntrack
Starting Firewall...
Done!
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: No chain/target/match by that name.
iptables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: Bad rule (does a matching rule exist in that chain?).
ip6tables: No chain/target/match by that name.
ip6tables: No chain/target/match by that name.
killall: poll_set_priority: no process killed
 
I'm new to this firmware update. I can't figura out how to copy my public key from my .ssh folder to the authorized_keys file on the USB. I'm on OS X and I'm know a little command line but unfortunately not enough.

...and how does I make these keys:

dropbear_ecdsa_host_key

dropbear_rsa_host_key

ssh_host_ecdsa_key.pub

ssh_host_rsa_key.pub

Thanks Voxel for doing this possible. I'm leaning a lot of this.
Best regards
Soren
 
I'm new to this firmware update. I can't figura out how to copy my public key from my .ssh folder to the authorized_keys file on the USB. I'm on OS X and I'm know a little command line but unfortunately not enough.

Sorry, I do not use OS X. In general how to copy files should be known to OS X users... Probably other OS X user could help you...

...and how does I make these keys:

dropbear_ecdsa_host_key

dropbear_rsa_host_key

ssh_host_ecdsa_key.pub

ssh_host_rsa_key.pub

Please check official man page, EXAMPLE section:

http://manpages.ubuntu.com/manpages/precise/man8/dropbearkey.8.html

Voxel.
 
Hi again Voxel.
Is it just copying the public key from my home folder and change the name on the file?
Best regards
Soren

Practically yes. Just see how it looks:

https://wiki.mcs.anl.gov/IT/index.php/SSH_Keys:authorized_keys
section Creating the file.

Something like:
Code:
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA0KJDLOiiXj9XdMxiCT9KvaKfuxFQi+CIiklaN5hHsNgYOu7TijqyONEu5fONLoAo/cshLa+KuargyTrtizwcP4TPcTXZhhJrM0GUDJragw7SMVIs/5xJBGAyHKJ1YUMGO7+nJTmsCLx6PFOlQYveuriiVVCCZerGCLH+UtSXK3z+l7hx9NiDg3/ylOLc3f3SLxrJKn0gMTgK7BHJFXo4PguuPjWZLVdUDX+XKiqtT2n4IsYs6N9qVFG3zUgNlEjZM47NK/ytAC0max98pK+QNzsuaQOo/IShJ1TOw5wwScflPArVJ2AyROqAe7cfQg7q12I9olASFd3U5NazfZCTYAvWA1kz9UZEWLJ1Br1XOkPqOleMM8KCp/PXzz8H0kISkMIji0/QuiZOPEBsKlszXjlALcXR8Mg1uiZVWy48i9JheyXyj1ToCj6cPScpgFHp3DAGSlKKbE1EFaVfeeyGAnHESlnDDg3Gq5xSsB9Okqm3V5t8GpFaJbV68BxQ4BK6HJ21A3CinV4LdV3hR/OBUbDG2EcI+ZKRDjlpJuu4YU= stace@pretend-machine
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAywWhrwq4FjHt+UuwZcZePxtjtZOENFpOjufycaYso2nTlzNwnAQEQRfbqsUxKVtOtGxgApIkUvjRIjNBdJE6iOzvBXZhhJrM0GUDJragw7SMVIs/5xJBGAyHKJ1YUMGO7+nJTmsCLx6PFOlQYveuriiVVCCZerGCLH+UtSXK3z+l7hx9NiDg3/ylOLc3f3SLxrJKn0gMTgK7BHJFXo4PguuPjWZLVdUDX+XKiqtT2n4IsYs6N9qVFG3zUgNlEjZM47NK/ytAC0max98pK+QNzsuaQOo/IShJ1TOw5wwScflPArVJ2AyROqAe7cfQg7q12I9olASFd3U5NazfZCTYAvWA1kz9UZEWLJ1Br1XOkPqOleMM8KCp/PXzz8H0kISkMIji0/QuiZOPEBsKlszXjlALcXR8Mg1uiZVWy48i9JheyXyj1ToCj6cPScpgFHp3DAGSlKKbE1EFaVfeeyGAnHESuXC9wkSeFZCEyMJ+RgJxMkBXNZmyycbwsSqAeGJpMEUDlwzu2GD0obBz0HXqg9J1Xallop5AVDKfeszZcc= stace@another-machine

There are two keys in this example. You can use one, two, three etc. I.e. all keys to whom you allow an access.

Voxel.
 
It works. Great.
Now I tried to create
Code:
dropbear_ecdsa_host_key
dropbear_rsa_host_key
ssh_host_ecdsa_key.pub
ssh_host_rsa_key.pub

with this command
Code:
dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key

Generating key, this may take a while...

Failed moving key file to /etc/dropbear/dropbear_rsa_host_key: File exists

Exited: Failed to generate key.
What am I doing wrong?

Cheers
Soren
 
It works. Great.
Now I tried to create
Code:
dropbear_ecdsa_host_key
dropbear_rsa_host_key
ssh_host_ecdsa_key.pub
ssh_host_rsa_key.pub

with this command
Code:
dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key

Generating key, this may take a while...

Failed moving key file to /etc/dropbear/dropbear_rsa_host_key: File exists

Exited: Failed to generate key.
What am I doing wrong?

Cheers
Soren

Just some generic files are already there. So you can continue to use them or generate you own server files in temporary directory (not to /etc/dropbear) and copy them after this manually.

Voxel.
 
Hi: Newbie to SNB here. I have a R7800 and have upgraded my Internet connection to Centurylink 1g/1g service. Am running stock firmware. Can't get above 550/500 when directly connected. Am running Cl's 1100Z as a transparent bridge for now. Have turned off most functions as recommended in other forums with no real change. Several people suggested I try over here to see if my speed issue can be resolved. Am not as technical as many here. Can Voxel's firmware allow full (i.e. 940/940) speed without the bridge? If so, can it be installed by a newbie -- is it the same way as the stock firmware? Also, if I want to change back, is it easy to do? Any insights/help would be appreciated! If there is an online, not particularly technical guidance document for people like me, a link would be appreciated!

Regards,

P.
 
Can Voxel's firmware allow full (i.e. 940/940) speed without the bridge? If so, can it be installed by a newbie -- is it the same way as the stock firmware? Also, if I want to change back, is it easy to do?

In general even stock firmware should provide you the full speed. At least I saw the messages that it works with such speed, close to 1GB. Just make sure that QoS is off - you do not need it with such ISP speed. BTW: I assume wired connection. And maybe you should check your cables...

Regarding my build: you just should try. Nothing special even for newbie. Just download my latest build (1.0.2.46SF) and flash IMG from WebGUI. Revert back to stock: the same procedure (flashing from WebGUI IMG of stock FW).

My builds are here:

https://www.voxel-firmware.com

Voxel.
 
Just make sure that QoS is off - you do not need it with such ISP speed.

On a side note, below 1gb, at what ISP download speeds would you recommend turning on QOS to see how things go?
 

Latest threads

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

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