Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

V3 packet dropping issue #18

Open
jatinpalchuri opened this issue May 12, 2021 · 3 comments
Open

V3 packet dropping issue #18

jatinpalchuri opened this issue May 12, 2021 · 3 comments
Assignees

Comments

@jatinpalchuri
Copy link
Contributor

Problem

While using the code from the library and adding a device on TTN V3 every other packet is not being read by the TTN console and after receiving a packet exactly after 5 or 6 seconds there is a second packet with all values zero.
For example with a duty cycle of 30 seconds below is the image with one packet
image
After 5 or 6 seconds there is another packet received with all the values as zero
image
Then the next packet is received after one minute (twice the duty cycle)
image

Power profile

In the power profile shown below for the MCU there is a transmission at every other duty cycle ,even when when the packets are not being transmitted there is a peak in current.
image

progress

@jatinpalchuri
Copy link
Contributor Author

When I tried with a basic example and looking at the serial monitor I found out that for every other packet that is not being transmitted the TXRXPEND flag being set.
image

@jatinpalchuri
Copy link
Contributor Author

The following is a comparison between V2 and V3 where I am waiting for OPTXRXPEND flag to be pulled low and then sending a packet.

In V2 the packets are being sent every 2 to 3 seconds which looks like the RX1+RX2 for V2

But for V3 the pending flag requires some random time as low as 6 seconds(Rx1+Rx2) to ~100 seconds.

For V2 the following is the serial monitor output

image

For V3 the following is the serial monitor output in the image you can clearly see the random time intervals between two consequent packet upload.

image
image

@jatinpalchuri
Copy link
Contributor Author

jatinpalchuri commented May 24, 2021

Even with a simple example of sending packets continuously we can see from the previous examples that OPTXRXPEND flag is being set in V3.So instead of adding new values to stack the code below waits for this flag to be cleared indicating no pending transactions and then schedules a new packet.

  • Find the updated code in this branch maxbotix-serial-v3 .
  • Before using the code change the lmic library in Arduino to the updated one from here

Results

  • We have been running this code for 2 days and the data looks stable.
    v3 github issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants