Skip to main content
SBour.9
Associate II
December 16, 2019
Solved

How to get the correct sending duty-cycle in i-cube-LoraWan software?

  • December 16, 2019
  • 4 replies
  • 3278 views

I set the dutycycle to 10 s :

#define APP_TX_DUTYCYCLE 10000

But when i run the program i get this :

0690X00000Bue4OQAR.png

I join the network at first emission. Then i got two emissions at 150 s and 320 s and finally it becomes periodic but with a period of 50 s not 10 s.

It looks like the MCU is waking up every 10 s but it doesn't send data every time.

What is the problem and is there a way to fix it?

This topic has been closed for replies.
Best answer by JLall

There is a regulation (region dependent) on the time the radio can spend emitting called duty cycle:

https://lora.readthedocs.io/en/latest/#duty-cycle-time-on-air-toa

The emission time is dependent on the data rate selected.

The higher the data rate, the smaller the emission time, the more often you can send messages.

The error code indicates you're bumping in this limit.

4 replies

SBour.9
SBour.9Author
Associate II
December 16, 2019

When the function send is called (every wake up / 10 sec) and nothing is send, I get the status LORAMAC_STATUS_DUTYCYCLE_RESTRICTED

JLall
JLallBest answer
Associate
December 20, 2019

There is a regulation (region dependent) on the time the radio can spend emitting called duty cycle:

https://lora.readthedocs.io/en/latest/#duty-cycle-time-on-air-toa

The emission time is dependent on the data rate selected.

The higher the data rate, the smaller the emission time, the more often you can send messages.

The error code indicates you're bumping in this limit.

SBour.9
SBour.9Author
Associate II
January 15, 2020

Thanks for your answer.

If i understand well i can solve it by:

  • reducing my payload length by seeding less informations
  • increasing my duty cycle
  • getting the lowest spreading factor

I found this site to calculate the time on air and the lost duty cycle: https://www.loratools.nl/#/airtime

In the i-cube-lorawan software, do the message have an explicit header and a CRC ? It affects the size of the message and therefor the minimum dutycycle allowed!

JLall
Associate
January 24, 2020

Yes, the messages have the header and CRC.

You're right with the way to solve your issue.

Note that reducing the payload will not help as much as getting the fastest possible data rate.

You can look at the Adaptive Data Rate (ADR) feature of LoRa, it helps in automating the use of the best data rate given the transmission quality.

Note that it happens after a given number of messages is received by the server and it needs a message from the server to instruct the device to adapt its data rate.