Arduino - Send data over 10 kilometers
There is also a video on YouTube for this article: Arduino with CC1101 and 5 watt power amplifier (German)
Wireless data transmission with micro controllers is currently a very popular Topic. The most wireless modules which are available on the market work at 433 MHz or 2.4 GHz. In the last few years the micro controllers are often relay to the Bluetooth and Wi-Fi technology. This is a report from an experiment, where we try to transmit data between two Arduino boards at a distance of more than 10 kilometers. At the end of the instruction you will find a short report about our range test.
Frequency, Transmission power & Antennas
Depending on the application, there are different options and combinations of frequency, power and antennas. In the near area, the frequency plays a minor role. Mostly the 2.4 GHz Band is used for this applications today. With conventional modules, you can expect a range of less than 150 meters. If the modules have an antenna connection, the omnidirectional antennas can be replaced by directional antennas. However, the directional antennas must be set up so that they can see each other. Directional antennas can reach ranges of several kilometers at the 2.4 GHz Band, but the antennas must be aligned very precisely. The transmission power have a maximum of 100 milliwatts. At 433 MHz, in contrast to 2.4 GHz, there are significantly more reflections and better ranges, for example, when you send from the outside to the inside. If an antenna with round radiator is placed on a high building, then with a 70 cm frequency in a city, you can also supply the surrounding side streets well. Therefore, that is the reason why terrestrial radio and TV transmitters are located above buildings or mountains. Usually only one transmitter is needed and the frequency is below 800 MHz. It is different by mobile phone networks because they are using frequencies above 800 MHz. That is the reason why the distance between mobile stations are often only few hundred of meters. Our transmitter operates at 433 MHz and has a transmission power of 5 watts.
Basically, the structure of the transmitter is the same as in the receiver, but the transmitter has a power amplifier, which amplifies the signals when sending. First, we have an Arduino nano Board that generates test data packets and controls the transceiver. The transceiver is a CC1101 radio module controlled via the SPI interface. The module works with all micro controllers and has an output power of 100 milliwatts. It can be used without a license. Between the module and the antenna, we have connected a power amplifier, which can increase the transmission power up to 8 watts. Attention: The use of amplifiers is only allowed to licensed radio amateurs for experimental test purposes! After the amplifier we connect an antenna which have round-radiant character and is resonant for the 70 cm ham band. For the test, the Arduino board transmit data packets every second to the receiver.
The receiver is also a CC1101 module which is connected to an Arduino nano. It forwards the received data packets directly to the serial interface. For a better signal quality, we use a larger antenna instead of the original antenna. The amplifier is not necessary for the receiver. For the test on receiver site, we use a smartphone with Android which is connected to the Arduino nano via a USB-OTG cable. We use a serial monitor app that receives the data packets from the Arduino board at a baud rate of 9600.
To use the transmitter outside for a long time, the housing must be weatherproofed. For this purpose, we use a distribution box made with hardened plastic. The Box contains the amplifier, a step-up voltage regulator with 7.2 volts for the amplifier, an Arduino board and the CC1101 wireless module. The power supply comes from a power bank with two USB ports. For the permanent operation a small photovoltaic system could be used.
The amplifier in detail
The amplifier is available in many online shops from china. It works with a frequency from 380 MHz to 450 MHz. The output power can be controlled by the input voltage of the amplifier. At 5 volts the output power is 2.5 watts. The maximum voltage is 10 volts, which produces 8 watts. We control the voltage with a step-up converter to 7.2 volts, which give us an output power of 5 watts. With 7.2 Volts we can use the amplifier in a continuous operation. The input signal is about 10 milliwatts, which is sufficient for the gain.
We install the transmitter on a hill which is 300 meters higher than the locations for the receiver tests. It is not always the best idea to install the transmitter on very high mountains, because an omnidirectional antenna does not have a good vertical radiation. It is not always the best solution to use omnidirectional antennas in a high altitude.
The test was carried out with a magnetic base antenna on the roof of a car. In the immediate vicinity (less than 2 kilometers) the signal was received almost uninterrupted. In contrast, it was more difficult in the city area with approx. 6 kilometers distance between receiver and transmitter. The signal was received again and again, but the signal quality was relatively poor. When we left the city with the vehicle, we were able to receive the signal at a distance of more than 11 kilometers. The longest range we could test was 16 kilometers. Due to the conditions of the test area we could not test any further distances. With appropriate antennas, however, ranges of more than 50 kilometers are certainly possible.