Duty Cycle - Time on Air

@iikaw Indeed, and those seem to be supported on every implementation I have seen so far.

I’m collecting everything related to bands, duty-cycles, frequencies, and channel plans on this wiki page: http://thethingsnetwork.org/wiki/LoRaWAN-Frequencies

Feel free to comment and contribute.

Thank you for the collection!
I’m a bit curious about G3 - the German legislation states a bandwidth of 25kHz, but the LoRa specifikation talks about 125kHz.
Regards
Joerg

The ETSI recommendation, and I would guess the German as well, allow you to use the whole G3 band as a single channel (without bw limitation). That’s essentially what we’re doing. We are not subdividing the band.

Ok. Thanks for clarification.
With 10% duty-cycle ? That would give us more thruput than g0 and g1.
J.

Indeed, but with a higher chance of interference.

Also, a lot of other applications seem to use g3 as well due to the power allowance.

1 Like

If i want to work with Lora in India,what are the frequencies i should operate and what are the duty cycle limitations…?

I have a question about the additional join frequencies.

They are set on frequency: 864.1 MHz (and more), which is supposed to be in g2.
However the band regulation parts say g2:
g2 868.7 – 869.2 MHz 0.1% or LBT+AFA, 25 mW
LoRaWAN specification also mentiones these 864 MHz frequencies with 0.1 % dc limitation.
Should I disable these frequencies in LMiC?

How is this band regulated? And do gateways listen on these frequencies?

The 864.x join frequencies are not used, and have been removed in the LoRaWAN 1.0.1 update. You can remove them from LMiC (both Matthijs and myself already did in our versions).

The 0.1% DC for joins is also based on the 1.0 specification, it is more restrictive the the band DC. This also has been relaxed in 1.0.1, you can use a 1% DC for joins in the first hour of joining. After that you need to back-off to 0.01% again.

1 Like

As LoraWAN specification clarifies channel hopping in order to stand with Time on Air restrictions, how is handled need of sending ACKs uplink packets by gateway? Time on Air of Gateway will be multiplicated by number of nodes?
It refers not only to ACKs, but to whole downlink…

It would, if all nodes would always use confirmed uplinks. But nodes should not do that; you can’t send all messages as ‘confirmed uplink’:

All devices have to comply with these regulations, so that includes gateways. As a result, downlink capacity of the network is even smaller than uplink capacity. This means that you should use unconfirmed messages unless you really need confirmed messages and send as little downlink data messages as possible.

Hi @Thomas

The wiki link does not seem to work anymore?

Is it the plan that the wiki-page comes back up?

Is there any way to get the actual time on air after a package has been sent from the RN2483? Or is it only possible to calculate it?

I’m a bit on doubt about how the duty cycle limitation is enforced (on the RN2483). When trying to transmit too often I get the “no_free_ch”. Is this the “legal limit” you can use (I know that this is not in compliance with the fair usage policy of TTN, this is just for testing) in the EU or do I still need to pay attention as to how often I transmit?

According to the calculator the time on air should be 61 ms, which should prohibit me from sending for the next 6 seconds. However the “no_free_ch” doesn’t occur before I’ve transmitted 8 times (rapidly after each other). I’ve read in another thread, that it is because I can send on 8 channels and it is only when I’m sending on the first one again, that the duty cycle is violated. However all of the transmission is in the same sub-band as far as I understand (868-868.6), so what am I missing?

2 Likes

hello mahe
i am facing the same issue here, i wonder if you have found any solutions to this problem and thanks.

Yes i am also wondering about this. I am able to send uplinks without any pause. And after some continuous uplinks i get this no free channel.

I don’t know clearly about dutycycle. ductycycle=1% means:

  1. Sub-band available on 36s/1h. In 36s. All nodes can use it or each node can use this time ?
  2. A node1 sent one frame on x second in sub-band A. Sub-band will off with only node1 on x*99 second ?

You’d wish, but no:

  1. The duty cycle should be taken into account each time you send. It’s not some hourly or daily total, so you cannot send 36 seconds and then be quiet for the remaining hour. Instead, from the specifications:

    The LoRaWAN enforces a per sub-band duty-cycle limitation. Each time a frame is transmitted in a given sub-band, the time of emission and the on-air duration of the frame are recorded for this sub-band. The same sub-band cannot be used again during the next Toff seconds where:

    Toffsubband = (TimeOnAir / DutyCyclesubbband) - TimeOnAir

  2. The duty cycle is meant to lower the chances that two nodes send simultaneously. (Which would cause collisions and data loss if that happens.) However, if each node would use the maximum 1% duty cycle (assuming they would never send simultaneously with some other nodes, and would do perfect channel-hopping using 8 channels), then a gateway could only support 800 nodes! (Okay, a bit more if nodes happen to use different spreading factors, but far less as nodes send randomly.)

    In other words: the maximum duty cycle is the absolute minimum time a node needs to be quiet between two messages. But on average, you should be far below the maximum duty cycle.

  3. The TTN Fair Access Policy nicely summarizes 1. and 2. by limiting air time to 30 seconds per node per day.

    And as we all share the same radio frequencies: even when using different networks, nodes affect each other, so consider the reasoning for TTN’s limit when trying to circumvent it using another network. (See “Why?” in Limitations: data rate, packet size, 30 seconds uplink and 10 messages downlink per day Fair Access Policy.)


It is per node. Nodes do not know what other nodes did.


I don’t understand. Seems like this is answered above.

2 Likes

PDF

Thanks for your answer. I have more questions.
Assuming:

  • Sub-band (868 – 868.6) have 3 channel A,B,C and DC=1%
  • I have 50 nodes. Node1 just transmitted a 0.5 s long frame on one default channel
    1. (Sub-band) will unavailable for 49.5s with only node1 or all of 50 nodes ?
    2. 0.5s and 49.5s is calculated by node1 or Gateway?.
    I think that: Node1 know payload of data, SF,… => it will know 0.5s and it will not transmit until 49.5s next. Did i correct ?
    And can node1 know auto transmitting on another channel in other sub-band ?
  1. Sub-band will be unavailable just for node1

2.I am not sure how this works.
For sure it is not calculated by the gateway. The node has to do this. As far is I understand some nodes will automaticly obay the duty cycle (build in by the company who made it). Other nodes wil require you to do that, if you write your own software for the node, a library may do this for you.

You’re right, but from @htdvisser’s new Duty Cycle Wiki page:

As a per-channel duty cycle limit is easier to implement, you can also divide the sub-band duty cycle over the number of channels in that sub-band. So for example, in a sub-band with 8 channels and a duty cycle of 1%, each channel has a duty cycle of 1/8% (that’s 0.125%).

This method is also implemented by the RN2483 module, and as a result, instead of seeing the no_free_ch when you send too quickly after the first message you can send multiple messages before all 8 channels are “blocked” and the duty cycle is enforced.

The figure below shows enforcement on those same two bands, but enforced per channel

(Read the whole page to understand that image; Channel 1 is in one band and Channel 2 and 3 share another band.)

2 Likes