lorawan_downlink
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
lorawan_downlink [2017/09/04 20:42] – [5. Selecting the Receive Windows] samer | lorawan_downlink [2021/08/28 09:53] (current) – samer | ||
---|---|---|---|
Line 2: | Line 2: | ||
IoT is mostly dominated by the uplink since the typical scenarios consist of sending measurement data from end-devices towards the network. However, in order to take full benefit from the integration of the Internet in the end-devices (this is one basic definition of IoT), downlink can not be neglected. For instance, the network can help in making decisions using the collected data. Then, decisions should to be sent back to the end-devices in order to be implemented: | IoT is mostly dominated by the uplink since the typical scenarios consist of sending measurement data from end-devices towards the network. However, in order to take full benefit from the integration of the Internet in the end-devices (this is one basic definition of IoT), downlink can not be neglected. For instance, the network can help in making decisions using the collected data. Then, decisions should to be sent back to the end-devices in order to be implemented: | ||
- | ===== -. Receive Windows in LoRaWAN ===== | + | ===== - Receive Windows in LoRaWAN ===== |
According to the [[https:// | According to the [[https:// | ||
Line 11: | Line 11: | ||
[{{ : | [{{ : | ||
- | ===== -. LoRaWAN End-to-end Platform ===== | + | ===== - LoRaWAN End-to-end Platform ===== |
In order to study the downlink in LoRaWAN, we use the platform introduced in [[deploying_lorawan|Deploying an End-to-End LoRaWAN Platform]] and [[esib_iot_challenge|ESIB IoT Challenge]]. This platform shown in Figure 2 represents a typical end-to-end communication chain and includes the following elements: | In order to study the downlink in LoRaWAN, we use the platform introduced in [[deploying_lorawan|Deploying an End-to-End LoRaWAN Platform]] and [[esib_iot_challenge|ESIB IoT Challenge]]. This platform shown in Figure 2 represents a typical end-to-end communication chain and includes the following elements: | ||
Line 24: | Line 24: | ||
The backend installed in the platform is based on an open-source LoRaWAN network-server [[https:// | The backend installed in the platform is based on an open-source LoRaWAN network-server [[https:// | ||
- | ===== -. Sending Downlink Messages with MQTT ===== | + | ===== - Sending Downlink Messages with MQTT ===== |
MQTT is a machine-to-machine (M2M)/" | MQTT is a machine-to-machine (M2M)/" | ||
- | ==== -. Using mqtt-spy ==== | + | ==== - Using mqtt-spy ==== |
| | ||
mqtt-spy is an open source utility intended to help you with monitoring activity on MQTT topics. It has been designed to deal with high volumes of messages, as well as occasional publications. mqtt-spy is a JavaFX application, | mqtt-spy is an open source utility intended to help you with monitoring activity on MQTT topics. It has been designed to deal with high volumes of messages, as well as occasional publications. mqtt-spy is a JavaFX application, | ||
Line 47: | Line 47: | ||
The payload sent by the MQTT client must be encoded in Base64. | The payload sent by the MQTT client must be encoded in Base64. | ||
</ | </ | ||
- | ==== -. Using IoT MQTT Dashboard ==== | + | ==== - Using IoT MQTT Dashboard ==== |
[[https:// | [[https:// | ||
Start by configuring a connection (as in the figure on the left) and entering the IP address of the MQTT broker and the corresponding port (1883 by default). Click on the connection and then on the publish button. Now you can add different GUI components to public MQTT messages. In the center figure, we have selected a switch element. Long clicking on the switch takes you to the configuration. In this menu (figure on the right) you should enter the MQTT topic where you want to publish your message (as in '' | Start by configuring a connection (as in the figure on the left) and entering the IP address of the MQTT broker and the corresponding port (1883 by default). Click on the connection and then on the publish button. Now you can add different GUI components to public MQTT messages. In the center figure, we have selected a switch element. Long clicking on the switch takes you to the configuration. In this menu (figure on the right) you should enter the MQTT topic where you want to publish your message (as in '' | ||
Line 57: | Line 57: | ||
- | ===== -. Receiving Downlink Messages ===== | + | ===== - Receiving Downlink Messages ===== |
- | ==== -. Autonomo with LoRaBee ==== | + | ==== - Autonomo with LoRaBee ==== |
In the LoRaWAN platform, we support devices based on an [[http:// | In the LoRaWAN platform, we support devices based on an [[http:// | ||
This sketch {{ :: | This sketch {{ :: | ||
- | |||
- | <code c++> | ||
- | case EV_TXCOMPLETE: | ||
- | Serial.println(F(" | ||
- | if (LMIC.dataLen) { | ||
- | // data received in rx slot after tx | ||
- | Serial.print(F(" | ||
- | Serial.write(LMIC.frame + LMIC.dataBeg, | ||
- | Serial.println(); | ||
- | } | ||
- | </ | ||
- | ==== -. Arduino with Dragino Shield ==== | ||
- | Devices in the LoRaWAN platform can also be implemented on Arduino boards with Dragino shields. The combined module as well as the basic configuration steps are presented in [[simple_lora_prototype|Simple Prototype of LoRa Communications]]. Similarly to the Autonomo device, you can download the following sketch {{ :: | ||
<code c++> | <code c++> | ||
Line 107: | Line 94: | ||
} | } | ||
</ | </ | ||
+ | ==== - Arduino with Dragino Shield ==== | ||
+ | Devices in the LoRaWAN platform can also be implemented on Arduino boards with Dragino shields. The combined module as well as the basic configuration steps are presented in [[simple_lora_prototype|Simple Prototype of LoRa Communications]]. Similarly to the Autonomo device, you can download the following sketch {{ :: | ||
- | ===== -. Selecting the Receive Windows ===== | + | <code c++> |
+ | case EV_TXCOMPLETE: | ||
+ | Serial.println(F(" | ||
+ | if (LMIC.dataLen) { | ||
+ | // data received in rx slot after tx | ||
+ | Serial.print(F(" | ||
+ | Serial.write(LMIC.frame + LMIC.dataBeg, | ||
+ | Serial.println(); | ||
+ | } | ||
+ | </ | ||
+ | ===== - Selecting the Receive Windows ===== | ||
The selection of the receive window is one important parameter in receiving downlink messages. Thus, you should note these two important limitations: | The selection of the receive window is one important parameter in receiving downlink messages. Thus, you should note these two important limitations: | ||
Line 118: | Line 117: | ||
[{{ undefined: | [{{ undefined: | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Without configuring the receive window, with OTAA mode, autonomo is receiving on RX1. | ||
+ | </ |
lorawan_downlink.1504550527.txt.gz · Last modified: 2017/09/04 20:42 by samer