# Inter-UAV Routing Scheme Testbeds
## 3 FANET Testbeds
### Proposal of an Embedded Routing Scheme Testbed  
There exist a variety of routing testbeds, both hardware and software in nature. However, there has been little to no progress in terms of standardization and compartmentalization of said systems. Furthermore, all hardware-based solutions seem to fall under the two following categories:  
* [noitemsep,topsep=0 pt]
* Meant for evaluation using stationary nodes
* Specifically designed for a type of UAV the developers saw fit  
This subsection is thus dedicated to the proposal of a universal and standardized hardware testbed meant for both stationary and aerial usage. Said testbed shall incorporate:  
* A computing platform on which the desired routing protocol shall be installed
* A dedicated 802.11 WiFi antenna
* A gyroscope/accelerometer which shall enable the platform to function as a standalone flight controller
* A companion microcontroller implementing the flight control logic without burdening the main computing platform with unnecessary tasks  
Considering the amount of existing work and availability of routing protocol installations for Linux-based operating systems, the Raspberry Pi Zero seems to be the best computing platform for aerial usage; it combines a small and lightweight form factor with impressive computing capabilities. As for the dedicated WiFi antenna and the companion microcontroller, the ESP32 proves more than sufficient in both aspects. The embedded WiFi antenna has a mediocre range, which can be significantly extended (up to approximately 1 km, assuming a direct LOS) using the Espressif-patented 802.11 LR (long range) mode. This mode in combination with a MAC-layer peer-to-peer transmission handling protocol (e.g., ESP-NOW) can enable low latency and low overhead communication in an impressive range using a small amount of power in comparison to other commercially available 802.11 antenna modules; in this case, packet routing can be implemented using MAC addresses. The networking sacrifice needed to be made is throughput. Entering the LR mode is a simple function call and does not affect program functionality:  
* [noitemsep,topsep=0 pt]  
support for location-predictive routing protocols. Since the module is centered around and uses the Raspberry Pi as a computing unit, all the respectively supported routing protocols may be used with this design. Each module is a functional node in itself and does not require additional components.  
The hardware has been designed so that each one of said testbed modules can be directly attached to an existing UAV. The main board complies to the PC/104 standard, which is the hardware specification many UAV autopilots aim to conform to as well, as mentioned in [56]. Conformity to this electromechanical standard ensures flawless mechanical interfacing and even safe physical stacking of said modules onto the same UAV. PC/104 is commonly used in specialized high-reliability embedded applications, aiming for a small and rugged form-factor. The PC/104 standard dictates the following:  
* Usage of a (traditionally 104-pin) connector
* Strictly defined PCB dimensions (90 \(\times\) 96 mm) with 13 mm optional extra space for additional connectors
* Four mounting holes in predefined positions