## 4 Communication Technologies for Seamless Connectivity in Smart Farming
### Availability and Challenges of Communication Technologies
#### 4.2.2 LPWAN Technologies  
When it comes to LPWAN technologies, lower power consumption and data rate, wider coverage, more massive connection are provided in comparison with traditional cellular systems [62]. These traditional technologies provide proper connectivity for devices that only transfer a small amount of data, but they are not recommended to use for audio or video data streaming [66]. LPWANs take advantage of highly constrained radio links that the size of packets are very limited. In our preliminary work [40], we have evaluated the suitability of LPWAN technologies for smart farming in remote areas. In this paper, we have presented that analysis elaborately. This subsection discusses three popular LPWAN technologies, namely LoRaWAN, Sigfox and NB-IoT:  
* **LoRaWAN (Long Range Wide Area Network):** LoRaWAN was defined by Alliance in article [67]. The network and media access control protocols are both defined on top of the physical layer of LoRa by LoRaWAN, the required parameters at the physical layer are defined by LoRa [61; 64; 66; 68]. The radio frequency bands (169, 443, 868, and 915 MHz) with 0.25 and 12.5 kbps data rates are used in LoRaWAN [9]. LoRaWAN communication connects the LoRa gateway to a number of sensors. Drones (UAVs) equipped LoRa gateways are able to fly over the agriculture regions and gather data from sensors placed on the bottom of the farm. By doing this, users will be able to access the remote and inaccessible areas. In addition, this provides a larger coverage using a single gateway. Some applications cannot take advantage of the LoRa technology because there are still some restrictions in using such a technology. One of the main drawbacks of IoT applications is that a device with LoRa technology can only transmit at most 36 seconds per hour. This is the main limitation that can affect not only the time among messages but also the payload. Therefore the IoT application equipped with LoRa should be programmed in such a way that can adapt itself with these limitations. Moreover, only the half-duplex communication can be supported by the latest LoRa modules, which means a device with LoRa cannot receive and send data at the same time [69]. Some of the limitations of LoRaWAN are considered as follows: Firstly, LoRaWAN uses the ALOHA Protocol which is not slotted, in its MAC layer. This means Clear Channel Assessment (CCA) is not performed at all, and packets can be transmitted at any arbitrary time. The collision avoidance mechanism, which is employed in order to cost reduction and simplicity provision, is not used in this mechanism. Secondly, if the devices in LoRaWAN are mobile, there is no certain handover method, as these devices are not associated with a specific gateway. Finally, there are three classes in LoRaWAN including, Class All, Beacon, and Continuous which are called A, B, and C, respectively. Class A is intended to enhance the power efficiency of the sensors, which work with a battery. Actuator nodes use Class B that inherits and performs all the functionality of Class A. The periodic receiving windows are also being opened and are allowed to receive the downlink messages by Class B. Devices in Class C are listening without interruption to receive the messages, hence these devices should have a lot of power. * **Narrow-Band IoT (NB-IoT):** NB-IoT is a protocol in mobile communications, especially standardized by the 3 GPP standardization group with a 180 kHz bandwidth. Using this bandwidth, the down-link and up-link data rates are considerably reduced around 20 and 250 kbps, respectively. As a result of this, updating Firmware over the Air (FotA) will be hard to reach using NB-IoT. As NB-IoT does not support the handover, considering NB-IoT for mobile IoT applications will be difficult, as well. In addition, current LTE infrastructures need to be upgraded when it comes to using NB-IoT. Therefore, deploying NB-IoT is a difficult task [64; 68].