3

I'm trying to setup an ad-hoc (mesh) network on Raspberry Pi 4s running Ubuntu Server 20.04 LTS - through USB dongles. The network does not need to connect to the internet (this is just to form an intranet). From a fresh install, I just add sudo apt-get install xubuntu-desktop and start my setup.

  1. Install rtl88x2bu drivers for the dongles from this repo (as per README, also seen here and here).
sudo apt-get install dkms bc git
git clone https://github.com/cilynx/rtl88x2bu
cd rtl88x2bu
VER=$(sed -n 's/\PACKAGE_VERSION="\(.*\)"/\1/p' dkms.conf)
sudo rsync -rvhP ./ /usr/src/rtl88x2bu-${VER}
sudo dkms add -m rtl88x2bu -v ${VER}
sudo dkms build -m rtl88x2bu -v ${VER}
sudo dkms install -m rtl88x2bu -v ${VER}
sudo modprobe 88x2bu
  1. Plug in dongle and setup the wlan1 interface as per the WifiDocs.
Set ip=192.168.1.1, netmask=255.255.255.0, blank gateway.

Note: I tried with and without ignoring ipv6 as per this answer.

Note: the netmask is indicated as 24 if I close and reopen the nm-connection-editor.

My config:

conn_config_wifi

conn_config_ipv4

conn_config_ipv6

  1. (I tried with and without this step) I bring down the other interfaces (eth0 and wlan0) with sudo ip link set [interface] down - as the WifiDocs mention

If you have more than one interface with link-local addresses there can be some routing confusion

I also tried doing all these steps by making a NetworkManager yaml, but I get the same results.

I can see the network being broadcast, but running a ping command fails - no error message, it just hangs until I ctrl+c and then indicates 100% packet loss.

I'd be happy with any solution that gets two Pis talking to each other via ad-hoc through the dongles, but especially a NetworkManager GUI (as seen) or a netplan because I've looked at them. However, any solution works.

If it turns out the dongles (which use rtl88x2bu drivers) are incompatible with this project, a confirmation that the setup was done correctly would be great so I can track down an rt2x00 dongle as per the wiki.

Logs:

logs_lsusb_ping

logs_dmesg

Update

I found this repo which has a list of 802.11s dongles for mesh networks. I'm not sure what the significance of 802.11s is, but since they put together a list I'm going to try setting some of those dongles up to see if it's a dongle issue or a config issue.

  • For a hotspot IPv4 should be set to shared – Jeremy31 May 04 '20 at 11:50
  • @Jeremy31 If I understand correctly, this would make my device into a hotspot, not a node in a mesh network. Setting IPv4 to shared does indeed make it a hotspot - but that's not the same thing (right?) – Antoine Zambelli May 04 '20 at 19:04
  • That might be correct, I remember an older version of Ubuntu using ad-hoc mode for hotspot and android phones would ignore it – Jeremy31 May 04 '20 at 21:06

1 Answers1

0

I managed to get different dongles working on Rasbian Buster, namely some rt2800-chipset dongles from this repo. This seems to confirm a chipset issue with the rtl88x2bu dongles.

I can successfully configure the network with the rt2800 dongles using any of the methods found in the my old linked attempts.

In Raspbian they are plug and play, no need to install drivers - but this question was officially for Ubuntu 20.04 LTS so I'll update once I get time to test it out on that.

  • Raspbian showed the same symptoms when using an rtl88x2bu dongle (and several other 5GHz chipsets) - hence the conclusion that it's a chipset issue. – Antoine Zambelli May 12 '20 at 15:59