# Cooperative Downlink Listening for Low-Power Long-Range Wide-Area Network
## 3 CDL: Cooperative Downlink Listening
### Network Time Synchronization  
One of the key features of LoRaWAN is the low-power communication characteristic. In order to extend the lifetime of each end device that operates with battery, LoRa employed an uplink-oriented communication method. Therefore, each device transmits sensed data uplink to network server periodically based on its clock. It is well known that real time clock (RTC), used in IoT devices, might drift over time and thus it might cause various timing errors between device and network server. Therefore, one of the important issues in IoT applications is an efficient time synchronization service.  
Due to its inherent downlink limitation, time synchronization of devices with the network server is not specified by LoRa specification. So, individual devices should be synchronized by receiving current time information of the network server. That is, when a device transmits its sensed data to the  
\begin{table}
\begin{tabular}{c c c c c} \hline \hline
**Channel** & **Frequency** & **Power** & **Tx Power** & **Description** \\
**Index** & **(MHz)** & **Index** & **Value (dBm)** & **Description** \\ \hline
1 & 922.1 & 0 & 14 & \\
2 & 922.3 & 0 & 14 & Default channel \\
3 & 922.5 & 0 & 14 & \\ \hline
4 & 921.9 & 4 & 10 & RX2 channel \\ \hline
5 & 922.7 & 0 & 14 & \\
6 & 922.9 & 0 & 14 & \\
7 & 923.1 & 0 & 14 & \\
8 & 923.3 & 0 & 14 & \\ \hline \hline \end{tabular}
\end{table}
Table 1: LoRa frequency usage (in Korea ISM band).  
network server, time information from the network server can be achieved by being received at the following RX slots, as shown in Figure 5. However, this results in significantly increased additional network traffic, and it can also affect the communications of other devices.  
On the other hand, CDL enables devices to be synchronized concurrently with the network server utilizing broadcast RX window triggered by a DL initiator. As shown in Figure 7, in order to make the RX window broadcast, the DL initiator sends a DL request message to the network server periodically (generally, we consider every hour), and network server can use the broadcast RX window for broadcasting time information. Considering average clock drift, time synchronization may be performed at most once a day. The first RX window for downlink following DL request message is used for transmitting an ACK frame to the DL initiator, the network server captures the current time at the end of the first RX window, and then at the beginning of the second RX window, the captured time information is broadcasted. All the nodes in the network wake up at the beginning of the RX2 window and wait for the broadcast message from network server for the RX2 windows duration. On the reception of time synchronization message, nodes reconfigure their RTC to the time information received from the network server. It is important to note that unlike LoRa standard in which individual device should each be synchronized with a network sensor, since all nodes in CDL are capable of being synchronized by receiving time information of network server at the same time, traffic in the network is significantly reduced and thus the time difference between devices may be reduced.