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

Extract Class A End Devices into their own class #54

Closed
peggyopal opened this issue Nov 22, 2019 · 3 comments
Closed

Extract Class A End Devices into their own class #54

peggyopal opened this issue Nov 22, 2019 · 3 comments

Comments

@peggyopal
Copy link
Contributor

The title says it all!

This way it would make it really easy to create new classes for Class B and C devices to extend from a base EndDeviceLorawanMac class.

@peggyopal peggyopal changed the title Extract Class A End Devices into their own function Extract Class A End Devices into their own class Nov 22, 2019
@DvdMgr
Copy link
Member

DvdMgr commented Dec 4, 2019

I merged the PR relative to this issue, I feel like we can close this unless you'd like to have further discussion!

@peggyopal
Copy link
Contributor Author

I have to agree with you!

Also, I'm sorry about the error that happened. I thought I combed through the logs enough, apparently I did not! Would you mind sharing how you found it? :)

@DvdMgr
Copy link
Member

DvdMgr commented Dec 5, 2019

I ran network-server-example and saw that the second device, which should require an ACK, tried to send the message 8 times. The Network Server correctly received the message, and the Gateway was sending replies, however I saw from the log that the Close(First/Second)ReceiveWindow calls happened right after Open(First/Second)ReceiveWindow, and thus did not allow the PHY to lock on the incoming packet. I added logging to show the value of m_receiveWindowDurationInSymbols, which is used to compute the delay at which to close the window, and saw that it was zero, thus explaining the non-existent delay between opening and closing of the receive windows. It was enough to initialize the variable to get it to work correctly!

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

2 participants