Cellular comms. are all complex, proprietary, closed standards by big telecoms companies. There are some projects trying to solve this: OpenRAN, OpenAirInterface, O-RAN Alliance.
This project tries to build an open solution following O-RAN standards for RAN software. It is targeting telecom. companies for their Radio Access Network (RAN). Their infrastructure is divided into the Core Network (like a simple internet network) and the Radio Access Network (base stations, antennas and all that stuff). Phones and tablets are User Equipment (UE), nothing to do with srsRAN.
Also look under the "Specifications" drop down menu at the top of the page. Every release is listed.
These standards being freely available is why SRS were able to write srsRAN. There is nothing stopping others from doing so either, apart from the amount of information that has to be understood and digested.
Edit: Apart from complexity the other potential barrier is patents, but that's not a technical barrier.
The 3GPP spec is “available”, but the implementation in practice is closed. Stuff like the scheduler is what actually brings value to the company delivering a good service. Being closed, the interoperability of network components from different vendors is just impossible. That’s the point of O-RAN Alliance.
Apart from complexity and patents, the other other barrier is licensing.
Those technologies aren't terribly useful to use in your house like WiFi is, and even if they were, you need more government paperwork to do it. That means less hobbyist interest.
The LTE protocol is asymmetric between towers (eNodeB) and phones (UE).
You could build srsRAN and run a local eNodeB instance to form a local LTE network. Given that it has a radio that operates in the LTE bands, in theory you might be able to build srsRAN for a phone and run the necessary base station software (eNodeB and EPC) on a phone to form an "ad hoc" network. It wouldn't be truly ad hoc in that the network would still have a base station, just that it would be running on phone hardware. srsRAN wouldn't be running as an application, but would be replacing the firmware in the phone's LTE modem.
Edit:
Here is a paper by someone who has built an ad hoc LTE network.
It does exactly the above: using srsRAN (which used to be called srsLTE) to run local base station software (eNodeB+EPC) to get around the asymmetry in the LTE protocol.
It's complexity is not completely unnecessary. Scale is a huge bitch.
Networking between phones, without a common base station, is hard. Harder than WI-FI, because identity is managed centrally and the frecs in use require a license to name some "simple" problems. Cellular comms are not designed to handle this kind of scenario.
There has been some work to add inter device connectivity lately, to support many interesting use cases. You can find more looking for "sidelink" or "PC5", but you will not find many phones that implement it.
It seems to be mostly focused in vehicular use cases in V2V and V2X scenarios
Last time I looked is because the chipset makers haven't implemented LTE Direct. There were a handful of phones with LTE Direct that were oriented towards first responders.
5G also has a peer mode, and I'm trying to figure out if it can be implemented in userspace or has to be done in firmware.
My idea is that peer mode would be useful for replacing walkie-talkie or mesh messaging like Meshtastic since everyone has a phone. The range is supposed to be around a mile.
AFAIK cellular comms aren’t designed to be ad hoc. They require base stations (whose placement is very studied) to build coverage “cells” (cellular). The network is responsible of delivering a QoS, it’s not a best-effort like WiFi.
However, if I’m not mistaken 5G has V2V comms (Vehicle to Vehicle) specifically designed for self-driving cars, drones and IoT and that is the most “ad hoc” it can get
> Why can't I create an ad hoc 4/5g network between phones?
Because billing.
All the complexity in cellular can be traced back to making the system secure the whole way back to SIM cards because there is actual money at stake if the system gets cracked.
The complexity is actually down to mobility. You can turn your phone on anywhere and it'll work. You can have a call/data session while travelling hundreds of miles and it'll work (usually).
What you suggest could be accomplished with mesh networking. GP is correct in saying the reasons are orthogonal to functional reasons. Phone systems have always been centralised like this. Billing is one aspect, but lawful surveillance is another.
With respect, if you think that mesh networking would have worked considering the scale and capacity needed, and relevant type of devices then I am afraid this is a case of not knowing what you don't know...
They are not entirely orthogonal. You need a central base station with scheduling, high dynamic range and power control to maximize performance in an OFDM system. In addition, most cells used to use frequency division multiplexing meaning that the base station and phones send and receive on different frequencies. So lack of point to point capabilities can at least in part be explained by the design goal of optimizing for throughput and user density.
There's limited bandwidth available in the space. 5G is "fast" compared to 4G because 4G effectively saturates terrestrial bandwidth available. Public, unauthenticated network would be too easily DDoSable.
This is the tower side (RAN) not the phone side (UE). It's not clear who the audience is. I assume it's equipment vendors since running a real carrier on USRPs seems janky.
srsRAN is both. It includes the source for user equipment in its "srsue" directory.
Use cases are partly captured by the list of customers across the bottom of the srsRAN home page (https://www.srsran.com/). It's great for any company/research group smaller than a multinational base station manufacturer, at which size the big players don't want to talk to you.
- Testing of various kinds. You can get deep inside an OSS base station, inspect and debug things, but likely may not even look at the proprietary innards of a commercial BS.
- Emergency connectivity when the backbone is broken, or did not exist. Most people would bring mobile phones anyway.
- Study / teaching, like MINIX OS or trainer aircraft which you can take apart and inspect.
- Maybe very small local cells to improve connectivity in difficult landscapes (mountains, skyscrapers, underground).
> Maybe very small local cells to improve connectivity in difficult landscapes (mountains, skyscrapers, underground)
Something like this would've been useful in a couple remote networks that I worked on. Internet was easy to get with some ubiquiti wifi routers and antennae. Getting cell reception was a pain in the ass that involved setting up a repeater in the one spot of the valley where reception was kinda okay. I haven't looked into the project too much, but I imagine I could set it up to connect to a telcom tower and handle the wireless backhaul similarly to how I did the wifi.
Edit: An open implementation like this could lead to cheaper cells for large, concrete/metal buildings that typically have terrible reception.
This project tries to build an open solution following O-RAN standards for RAN software. It is targeting telecom. companies for their Radio Access Network (RAN). Their infrastructure is divided into the Core Network (like a simple internet network) and the Radio Access Network (base stations, antennas and all that stuff). Phones and tablets are User Equipment (UE), nothing to do with srsRAN.