Jump to content

SBC recommendations for a wireless router


gstoyanov

Recommended Posts

Hey guys, I am thinking to build a wireless router from a single board computer, so my requirement is that the chosen board to support Linux to have at least one Gigabit port and also to have a PCIe port to connect an external WiFi card and antennas and eventually attach one or more SSDs. So far I looked on the Internet and I am wondering which is a better board for this project Rockpro64, Banana PI BPI-R2 or the EspressoBin. The advantages of the EspressoBin are:

 

  1. it has built-in networking switch with one dedicated WAN and two LAN interfaces all 1Gbps
  2. dedicated SATA interface
  3. miniPCIe slot for wireless cards
  4. stable Armbian support

 

On the other had the RockPRO64 has:

 

  1. hexa-core CPU consisting dual-core A72@2GHz  and quad-core A53@1.5GHz vs. dual-core A53@1.2GHz
  2. dedicated GPU and HDMI and DP supporting 4K@60fps or 4K@30fps HDR 
  3. 4Gb of RAM vs. 2Gb for the Espressobin not to mention that Espressobin is using DDR3 while Rockpro64 - LPDDR4

 

Banana Pi BPI-R2 is somewhat in the middle between the RockPro64 and the Espressobin. It has switchboard with 4xGbps LAN ports, dedicated GPU, mPCIe, SATA port, HDMI port. Maybe even Banana Pi W2 might do the job, since it is also having the mPCIe x2 but this one is not even supported by Armbian. Banana Pi BPI-R2 is CSC...

 

Can I use the PCIe 4 slot on the RockPro64 to connect a WiFi card? And is this board even suitable to be a wireless router? My main worry is that the Linux support for this board isn't so great as far as I can see and people are complaining about bugs and other issues. On the other hand I am really tempted to get it because it is very powerful and I can re-use it as a HTPC/WiFi router and NAS at the same time. 

Edited by gstoyanov
added some new SBC options
Link to comment
Share on other sites

11 hours ago, gstoyanov said:

The advantages of the EspressoBin are:

 

  1. it has built-in networking switch with one dedicated WAN and two LAN interfaces all 1Gbps
  2. dedicated SATA interface
  3. miniPCIe slot for wireless cards
  4. stable Armbian support

 

please read this thread and understand the limitations of the espressobin... and its current stability

Link to comment
Share on other sites

20 hours ago, gstoyanov said:

but this one is not even supported by Armbian.


With a reason. "Supported" is when certain/good software maturity is achieved - if you are not a kernel hacker and developing low level support is your goal/wish, stay away from those boards due to extremely bad software support. Choose only among "supported" - even there problems are present, but they are usually minor/acceptable. If you can wait, pay attention on WIP. Most of them usually become "supported", but some are also dropped ... if we find out a huge investment is needed. We have no full-time developers and virtually no budget for R&D.

Link to comment
Share on other sites

So far I didn't get any recommendations about a SBC suitable to run as an access point though. I read that the Banana BPI-R2 is not having any stable Linux version so I guess it would be out of the question for this project, since as Igor mentioned I am not kernel hacker or low level developer. 

Link to comment
Share on other sites

4 hours ago, gstoyanov said:

I read that the Banana BPI-R2

define stable.. :D

 

 

 

but sure, I wouldn't go with the R2 as my main router.. things are just not 100% clear yet.. and network is still a bit.. mhmm.. :D flunky might describe it best. There's no development cause nobody is really interested in pushing stuff here..

 

5 hours ago, gstoyanov said:

since as Igor mentioned I am not kernel hacker or low level developer. 

me neither.. you can learn things by pure pain.. pain and time.. :D

On 6/22/2019 at 1:28 PM, gstoyanov said:

I can re-use it as a HTPC/WiFi router and NAS at the same time. 

 

I would separate NAS from router jobs..

 

If the price is not your main driving force, you might look into solidrun devices. https://www.solid-run.com/product-category/sbcs-fanless-pcs/

Link to comment
Share on other sites

I think you need to decide if you are doing this to save money or doing this to build something and gain learning experience.  If money is your goal, you will almost certainly be better off buying an off the shelf access point.  If you want to build something, just realize it will cost more and likely not perform nearly as well.  Here are a few suggestions though in no particular order:

 

1.  Espressobin v7  - $69 - new versions does have ddr4.  This might be your best option as you can also get this $20 wireless card that fits in it:  https://www.globalscaletechnologies.com/p-81-marvell-88w8997-2x2-wi-fi-80211acbt-50-minipci-card-20.aspx 

 

2.   Clearfog Base - $120  https://www.solid-run.com/product/SRM6828S00D01GE008B01CH/

 

3.  Clearfog 8k - $220 - https://www.solid-run.com/product/SRM8040S64D00GE008V11GH/

 

Anything from Solidrun as mentioned in the comment above.  Also, do you really only need 1 eth port?  If so I would say that expands your options quite a bit.  But then you are really talking less about a router and more like an access point.

Link to comment
Share on other sites

espressoBIN is a decent choice - good performance at a decent price, and a community here on Armbian that can support it

 

The ClearFogs are a step up, even though their on an older ARMv7A Armada - the 8K is newer and is ARMv8, but not sure where the BSP support is there.

 

There's been a trio of QC-Atheros IPQ-40xx devices recently announced, and they have integrated 802.11ac dual band radios - but most of them are somewhat tight - e.g. to get best performance out of them, one has to use the QSDK, which is built on an older version of OpenWRT - there is support for some IPQ40xx in OpenWRT 18.06 and Master, but I'm not sure it's stable enough yet for daily-driver use on the WiFi (ath10k drivers are under heavy development, and there's issues with the Switch outside of typical setup - see DSA on this chip over on OpenWRT forums...)

 

I was starting to develop a fairly open board based on AR9331/AR9531 - not ARM based, as these are MIPS cores, but the SOC is very well documented, and strong OpenWRT support, but that got set aside when work stepped up and my free time was reduced quite a bit.

Link to comment
Share on other sites

After investing some time to read about the options and that I should also be able to put the WiFi chip into monitor mode, I am starting to lean over the option just to buy some off the shelf WiFi router with good OpenWRT support and enough flash memory in order to be future-proof. I wanted to use this as an opportunity to learn more about hostapd and dnsmasq but I guess I don't want to sacrifice the Internet speed and throughput just for that. Thanks everyone for your hints and suggestions. 

Link to comment
Share on other sites

5 hours ago, gstoyanov said:

use this as an opportunity to learn more about hostapd and dnsmasq

 

5 hours ago, gstoyanov said:

I should also be able to put the WiFi chip into monitor mode


Then you certainly want WiFi chip with proper/good (within Armbian by default) software support:
ath9k (mPCI & USB) Opensource driver, ath10k (best performance, but not OSS, mainly mPCI), 8812au (USB) monitor mode and frame injection

Link to comment
Share on other sites

I bought two EspressoBIN boards, hoping to use them as a router.

But I'm quite disappointed with them.

The worst thing about them is that they have 3 "GbE ports", which all share ONE GbE connection to the CPU.

These 3 interfaces are all on a Topaz switch (eg. they're on the same port, and the board starts up in bridged mode until uboot changes the configuration.

That's a problem if your board starts up and crashes before uboot is executed, then your network is open for attacks.

 

What you want in a router is TWO separate GbE ports. You don't need a whole bunch of network ports. One way to achieve this with a board that already has one or more GbE connections is to use a USB3 GbE adapter (such as the Ugreen adapter already tested with Armbian).

 

If you have the money, go for the MacchiatoBIN or the Clearfog products from Solid-Run. They're high quality products and quite capable!

(I'm still saving up for the MacchiatoBIN myself). There are more interesting Marvell-based boards from Solid-Run; so you may not need to pull out the big wallet in order to get a real good router, which can also handle other tasks.

 

Recently I purchased a TP-Link Archer C7 v5. On this wireless router, you can easily write OpenWRT onto it. It has a USB-host interface (forgot if it's USB2 or USB3), which is mainly thought of for connecting a printer, so the router also can act as a print-server. As far as I understand, one can also connect a harddisk via USB, but that's something I'd rather avoid. This is my personal opinion and experience: USB is too fragile for storage use.

 

On the other hand, if you don't mind using an intel-processor, you could always go for a Mining Expert board and decorate it with a Pentium or Core-i3 in order to keep the power usage fairly down. Then you could freely choose between OpenWRT, Linux or pfSense... The Mining Expert board is around $45 I think.

Link to comment
Share on other sites

16 hours ago, Jens Bauer said:

On the other hand, if you don't mind using an intel-processor, you could always go for a Mining Expert board and decorate it with a Pentium or Core-i3 in order to keep the power usage fairly down. Then you could freely choose between OpenWRT, Linux or pfSense... The Mining Expert board is around $45 I think.

 

The Mining Board isn't really a good choice - it's fairly specific to the Crypto-Coin stuff...

 

Anyways - if one wants to build a router - that's actually kind of easy, it's the wireless card drivers that are the real challenge, and there, one can convert a consumer router/AP to AP only, or find a dedicated AP.

Link to comment
Share on other sites

22 hours ago, sfx2000 said:

The Mining Board isn't really a good choice - it's fairly specific to the Crypto-Coin stuff...

Uhm, I might be wrong, but I was under the impression that you can configure the x1 PCIe slots as normal PCIe slots and then use a bunch of cheap dual or quad GbE or SATA cards on each of those ports. Is this not possible ?

The Mining Expert board is supposed to be 'low power' (not that it's easy to get a PC to use very little power like under 5W), so the board itself shouldn't impact the electricity bill too much.

 

(Yeh, we need a board based upon the BCM5871X, I think - a board using the CPU's full potential).

Link to comment
Share on other sites

On 7/10/2019 at 6:15 PM, Jens Bauer said:

Yeh, we need a board based upon the BCM5871X, I think - a board using the CPU's full potential

 

One of the better SoC's for comms processing that is affordable is the Armada 8xxx series - I know of several folks that have converted Machiatto-Bin boards for ARM development workstations.

Link to comment
Share on other sites

4 hours ago, sfx2000 said:

One of the better SoC's for comms processing that is affordable is the Armada 8xxx series

Sadly it's not affordable for me. I'll still have to wait at least 3 months until I can purchase one.

-But as you might have read elsewhere, I do plan on getting a couple of MacchiatoBIN boards.

Even if the CPU is 3 years old, it's still very capable, compared to those we get on other SBCs today.

But for me, the hardware is just as important; high speed networking, lots of quick RAM, native SATA ports and PCIe 3.0 is something I very much need. The board is a robust high-quality board and I'd expect it to last longer than any of my current boards. I will need to get/create some electrical protection, as lightning is very frequent where I am located, in addition to the high > 260V spikes on the AC-net.

(A CubieBoard2+PSU and a switch have already been fried recently, unfortunately I still have my server on the same fuse as the water heater and fridge and it'll have to stay there for a few more months).

Link to comment
Share on other sites

On 7/13/2019 at 1:26 AM, Jens Bauer said:

Sadly it's not affordable for me. I'll still have to wait at least 3 months until I can purchase one.

-But as you might have read elsewhere, I do plan on getting a couple of MacchiatoBIN boards.

Even if the CPU is 3 years old, it's still very capable, compared to those we get on other SBCs today.

But for me, the hardware is just as important; high speed networking, lots of quick RAM, native SATA ports and PCIe 3.0 is something I very much need. The board is a robust high-quality board and I'd expect it to last longer than any of my current boards. I will need to get/create some electrical protection, as lightning is very frequent where I am located, in addition to the high > 260V spikes on the AC-net.

(A CubieBoard2+PSU and a switch have already been fried recently, unfortunately I still have my server on the same fuse as the water heater and fridge and it'll have to stay there for a few more months).

 

EspressoBIN is ok - has it's limitations, but living within them, it's good - good enough that pfSense/NetGate built a FreeBSD routing distro on it as a commercial product.

 

EspressoBIN is interesting for many, as not only Armbian, but it's supported in other distro's, and OpenWRT has full support.

 

If you don't mind OpenWRT - the GL-Inet B1300 is a great little box - It's based on the Qualcomm Atheros IPQ4028, which is a routing chipset with working dual-band WiFi - the factory firmware is built off Qualcomm's QSDK fork of OpenWRT (Chaos Calmer), and there's full support in OpenWRT 18.06 and master...

 

QSDK has all the QCA accelerators for routing offload, and the closed source Wave2 Wifi drivers, so it's very well sorted.

 

Factory firmware also includes OpenVPN Client/Server, along with Wireguard Client/Server, and gives direct access to OpenWRT's LUCI interface - their UI is a skin of LUCI, and for many might be good enough. I should mention that it also has Cloudflare DNS-over-TLS support built in - and all the OPKG's that OpenWRT has in their distro.

 

For $90USD, it's a lot of bang for the buck, and a very hackable little device.

 

root@192.168.0.1's password: 


BusyBox v1.25.1 (2019-01-10 15:04:51 CST) built-in shell (ash)

     MM           NM                    MMMMMMM          M       M
   $MMMMM        MMMMM                MMMMMMMMMMM      MMM     MMM
  MMMMMMMM     MM MMMMM.              MMMMM:MMMMMM:   MMMM   MMMMM
MMMM= MMMMMM  MMM   MMMM       MMMMM   MMMM  MMMMMM   MMMM  MMMMM'
MMMM=  MMMMM MMMM    MM       MMMMM    MMMM    MMMM   MMMMNMMMMM
MMMM=   MMMM  MMMMM          MMMMM     MMMM    MMMM   MMMMMMMM
MMMM=   MMMM   MMMMMM       MMMMM      MMMM    MMMM   MMMMMMMMM
MMMM=   MMMM     MMMMM,    NMMMMMMMM   MMMM    MMMM   MMMMMMMMMMM
MMMM=   MMMM      MMMMMM   MMMMMMMM    MMMM    MMMM   MMMM  MMMMMM
MMMM=   MMMM   MM    MMMM    MMMM      MMMM    MMMM   MMMM    MMMM
MMMM$ ,MMMMM  MMMMM  MMMM    MMM       MMMM   MMMMM   MMMM    MMMM
  MMMMMMM:      MMMMMMM     M         MMMMMMMMMMMM  MMMMMMM MMMMMMM
    MMMMMM       MMMMN     M           MMMMMMMMM      MMMM    MMMM
     MMMM          M                    MMMMMMM        M       M
       M
 ---------------------------------------------------------------
   For those about to rock... (Chaos Calmer, r48067)
 ---------------------------------------------------------------
root@GL-B1300:~# cat /proc/cpuinfo
processor	: 0
model name	: ARMv7 Processor rev 5 (v7l)
BogoMIPS	: 26.81
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xc07
CPU revision	: 5

processor	: 1
model name	: ARMv7 Processor rev 5 (v7l)
BogoMIPS	: 26.81
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xc07
CPU revision	: 5

processor	: 2
model name	: ARMv7 Processor rev 5 (v7l)
BogoMIPS	: 26.81
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xc07
CPU revision	: 5

processor	: 3
model name	: ARMv7 Processor rev 5 (v7l)
BogoMIPS	: 26.81
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xc07
CPU revision	: 5

Hardware	: Qualcomm (Flattened Device Tree)
Revision	: 0000
Serial		: 0000000000000000

 

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines