First of all I’m new in the TTN community and Im surprised how many people are sharing Information here. Wow!
We build a single Channel gateway for development and an Atmega328p based node with the LMIC library.
Now the problem: After successful OTAA I call
LMIC_disableChannel(i); for each channel except channel 0 to force the Node to use our single channel gateway frequency.
When I try to send a confirmed Downlink message, the message is received by the node but no ACK message is received by the Gateway/TTN. At another place with a multichannel gateway everything works as expected.
So my thoughts were that the ACK package in single channel mode isn’t sent because of the duty cycle . If I add
delay(60*1000); in the event handler method right after the downlink message is parsed the ACK packet is sent after a minute without a problem (100% reproducible).
I don’t want to hardcode the minute delay because the duty cycle time depends on the Payload and SF.
So my question: Is there any option to get the next possible TX window time for a channel from the LMIC library? If not maybe someone already wrote a method to calculate the delay between the windows?