<p>You can do this with a configuration known as a 'repeater'; there are a number of examples of people using this to convert their favourite controller's RC system to that of a specific aircraft, but you could do the same with a single mode:</p>

<ul>
<li><a href="https://www.youtube.com/watch?v=VlTUQQIELak" rel="nofollow noreferrer">FrSky to Dragonlink Repeater</a></li>
<li><a href="https://www.youtube.com/watch?v=L-L3l2n6tEk" rel="nofollow noreferrer">2.4ghz to EZUHF repeater</a></li>
</ul>

<p>I'm not aware of an open-source implementation or Arduino examples but the above links show you may be able to use off-the-shelf parts; this is likely to depend on how open your radio hardware is.</p>

<p>Range-wise, the aircraft and controller need to be in range of the repeater but not of each other - so you could theoretically add half as much again but in practice you want a healthy overlap. You could add more than one node but the aircraft still has to stay in range of the last one, as the drone (and each node) can only pair with one other transciever. In theory this same setup should be possible for video too - chain a receiver into a transmitter. It is worth remembering that some VTXs can get very hot if you don't have airflow from the drone, so you may need to add a fan.</p>

<p>With regards power-consumption, the transmitter will be limited (legally, at least) to tens of milliwatts and the microcontrollers won't take too much - it should be possible to power such a system from a smallish solar panel, but you will need to compare the panel output to a measured system draw; then add a margin for safety and a small battery to smooth out demand.</p>

CC BY-SA 4.0
2020-05-24T22:00:48.100Z
Maybe I'm wrong, but I get the impression, that the methods from videos above can only extend the range by one node/repeater. Would they work also in such scenario: Operator -> Node1 -> Node2 -> Drone? If there are several intermediate nodes (Node3, Node4) - which will be preferred?
user1876484
CC BY-SA 4.0
2020-05-24T22:07:07.460Z
Ah yes, you are correct - the drone would only be able to pair with the final node in the chain. I was thinking about RC linking for the nodes, but then of something more like WiFi for the aircraft (for some uknown reason! It's late here...) I'll edit my answer to correct this.
Kralc
CC BY-SA 4.0
2020-05-24T21:23:03.960Z
2020-05-24T22:13:32.037Z
2020-05-24T22:13:32.037Z
Kralc
<p>You can use layered approach. First, find a solution (for example using WiFi D2D) to build a mesh overlay layer using Wi-Fi links. This mesh-overlay will ensure that you have data communication from the base station to the drone over multiple relays.</p>

<p>Then, you can use ground control software and route the MAVLink packets over the above described mesh network. To do that, you will need to run software on a compute note in the drone, which will decapsulate MAVLink from IP traffic - for example mavlink-router - and forward them to the serial port. This serial port must be connected to the telemetry port on your flight controller.</p>

<p>The final step - in the ground control software just enter the IP address of your drone, and let the mesh-overlay take care of the data routing and connection maintenance.</p>

CC BY-SA 4.0
2020-05-26T08:57:27.930Z
1. Have you seen somebody trying to implement something like that? 2. Is WiFi D2D able to run on Arduino Nano? The nodes must be as cheap as possible so you don't care too much if some of them are stolen/get lost/damaged.
user1876484
CC BY-SA 4.0
2020-05-26T09:18:59.167Z
I did my PhD on optimisation techniques for mesh-overlays over WiFi - so I have seen this done in multiple of ways. I'm not sure about Arduino Nano, but there are plenty of raspberry-pi clones with built-in WiFi adaptors supporting WiFi D2D (orange-pi, banana-pi). Some of them cost ~$10
jpou
CC BY-SA 4.0
2020-05-26T09:24:05.880Z
1. Could you, please, post links on those works? 2. Do you think the raspberry-pi clones can do this job while being powered by small solar panels (they consume more power than Arduino Nano)?
user1876484
CC BY-SA 4.0
2020-06-16T11:59:01.950Z
3. This way I can get control over the drone. How do I get the video stream?
user1876484
CC BY-SA 4.0
2020-06-16T12:12:20.217Z
Exactly the same way. Your drone and ground station are not aware of underlying mesh network. If you can stream directly from drone to ground station - you will stream over the overlay as well.
jpou
CC BY-SA 4.0
2020-06-16T12:51:50.573Z
4. What do you think about [B.A.T.M.A.N.](https://en.wikipedia.org/wiki/B.A.T.M.A.N.) as mesh network? It routes on layer 2. Does this mean there will be no need for mavlink-router?
user1876484
CC BY-SA 4.0
2020-06-16T13:46:17.737Z
5. And what do you think about using Bluetooth Low Energy (e.g. on  Raspberry Pi Zero W) for this? Will this improve range/power consumption?
user1876484
CC BY-SA 4.0
2020-05-26T08:48:53.543Z
2020-05-26T08:48:53.543Z
jpou
<p>I have stumbled upon this question regarding <a href="https://drones.stackexchange.com/questions/902/what-technology-offers-the-longest-range-for-rc-controls">technology providing longest range for rc controls</a> and would like to ask a related one. Theoretically it should be possible to build a wireless mesh network that can route the signal from the drone to the operator and back thus extending the operational range of the drone while relying on the same frequency(/power per unit).</p>

<ol>
<li>is there an open-source project that implements such a mesh network in conjunction with an open-source flight control?</li>
<li>is it theoretically possible to build the nodes of such a mesh network using Arduino and power them with not too big solar panels?</li>
<li>would it be possible to transmit real time video through such a solar-powered mesh network?</li>
<li>how would such a network, of let's say 5 nodes, extend the operational range of currently available drones?</li>
</ol>

CC BY-SA 4.0
2020-05-24T21:18:07.227Z
all of them are related and depend on each other... some of them have a simple answer just yes or no...
user1876484
CC BY-SA 4.0
2020-05-26T10:14:26.877Z
I think conventional thinking is that most mesh network systems are a bit on the laggy and slow side. Government regulations may also be an issue.
ikrase
CC BY-SA 4.0
2020-05-26T10:18:32.463Z
Each node should comply with regulations on power/etc..
user1876484
<flight-controller><video-signal><range>
DIY wireless mesh network to extend drone's operational range
user1876484
# DIY wireless mesh network to extend drone's operational range

(Asked by: username_0 on 2020-05-24)

I have stumbled upon this question regarding [technology providing longest range for rc controls](https://drones.stackexchange.com/questions/902/what-technology-offers-the-longest-range-for-rc-controls) and would like to ask a related one. Theoretically it should be possible to build a wireless mesh network that can route the signal from the drone to the operator and back thus extending the operational range of the drone while relying on the same frequency(/power per unit).

1. is there an open-source project that implements such a mesh network in conjunction with an open-source flight control?
2. is it theoretically possible to build the nodes of such a mesh network using Arduino and power them with not too big solar panels?
3. would it be possible to transmit real time video through such a solar-powered mesh network?
4. how would such a network, of let's say 5 nodes, extend the operational range of currently available drones?

**Tags:** flight-controller, video-signal, range

> **Comments:**
> **username_0**: all of them are related and depend on each other... some of them have a simple answer just yes or no...  
> **username_1**: I think conventional thinking is that most mesh network systems are a bit on the laggy and slow side. Government regulations may also be an issue.  
> **username_0**: Each node should comply with regulations on power/etc..  

---

## 2 answers

### Answer by username_2 on 2020-05-24. Score: 4

You can do this with a configuration known as a 'repeater'; there are a number of examples of people using this to convert their favourite controller's RC system to that of a specific aircraft, but you could do the same with a single mode:

* [FrSky to Dragonlink Repeater](https://www.youtube.com/watch?v=VlTUQQIELak)
* [2.4ghz to EZUHF repeater](https://www.youtube.com/watch?v=L-L3l2n6tEk)

I'm not aware of an open-source implementation or Arduino examples but the above links show you may be able to use off-the-shelf parts; this is likely to depend on how open your radio hardware is.

Range-wise, the aircraft and controller need to be in range of the repeater but not of each other - so you could theoretically add half as much again but in practice you want a healthy overlap. You could add more than one node but the aircraft still has to stay in range of the last one, as the drone (and each node) can only pair with one other transciever. In theory this same setup should be possible for video too - chain a receiver into a transmitter. It is worth remembering that some VTXs can get very hot if you don't have airflow from the drone, so you may need to add a fan.

With regards power-consumption, the transmitter will be limited (legally, at least) to tens of milliwatts and the microcontrollers won't take too much - it should be possible to power such a system from a smallish solar panel, but you will need to compare the panel output to a measured system draw; then add a margin for safety and a small battery to smooth out demand.

> **Comments:**
> **username_0**: Maybe I'm wrong, but I get the impression, that the methods from videos above can only extend the range by one node/repeater. Would they work also in such scenario: Operator -> Node1 -> Node2 -> Drone? If there are several intermediate nodes (Node3, Node4) - which will be preferred?  
> **username_2**: Ah yes, you are correct - the drone would only be able to pair with the final node in the chain. I was thinking about RC linking for the nodes, but then of something more like WiFi for the aircraft (for some uknown reason! It's late here...) I'll edit my answer to correct this.  

---

### Answer by username_3 on 2020-05-26. Score: 2

You can use layered approach. First, find a solution (for example using WiFi D2D) to build a mesh overlay layer using Wi-Fi links. This mesh-overlay will ensure that you have data communication from the base station to the drone over multiple relays.

Then, you can use ground control software and route the MAVLink packets over the above described mesh network. To do that, you will need to run software on a compute note in the drone, which will decapsulate MAVLink from IP traffic - for example mavlink-router - and forward them to the serial port. This serial port must be connected to the telemetry port on your flight controller.

The final step - in the ground control software just enter the IP address of your drone, and let the mesh-overlay take care of the data routing and connection maintenance.

> **Comments:**
> **username_0**: 1. Have you seen somebody trying to implement something like that? 2. Is WiFi D2D able to run on Arduino Nano? The nodes must be as cheap as possible so you don't care too much if some of them are stolen/get lost/damaged.  
> **username_3**: I did my PhD on optimisation techniques for mesh-overlays over WiFi - so I have seen this done in multiple of ways. I'm not sure about Arduino Nano, but there are plenty of raspberry-pi clones with built-in WiFi adaptors supporting WiFi D2D (orange-pi, banana-pi). Some of them cost ~$10  
> **username_0**: 1. Could you, please, post links on those works? 2. Do you think the raspberry-pi clones can do this job while being powered by small solar panels (they consume more power than Arduino Nano)?  
> **username_0**: 3. This way I can get control over the drone. How do I get the video stream?  
> **username_3**: Exactly the same way. Your drone and ground station are not aware of underlying mesh network. If you can stream directly from drone to ground station - you will stream over the overlay as well.  
> **username_0**: 4. What do you think about [B.A.T.M.A.N.](https://en.wikipedia.org/wiki/B.A.T.M.A.N.) as mesh network? It routes on layer 2. Does this mean there will be no need for mavlink-router?  
> **username_0**: 5. And what do you think about using Bluetooth Low Energy (e.g. on  Raspberry Pi Zero W) for this? Will this improve range/power consumption?  

---

