Closed kadirozdinc closed 1 year ago
My additions and corrections :
Class C behavior was wrong, right after sending uplink, device opens RX2 continously with fixed SF,BW and Frequency. Therefore device could not hear any downlink on RX1 window. With my changes, device can hear downlink messages including ACK bit. (Refer to : https://lora-developers.semtech.com/documentation/tech-papers-and-guides/lorawan-class-c-devices/ https://lora-alliance.org/resource_hub/rp002-1-0-0-lorawan-regional-parameters/ )
For class selection, I add a definition in Config file. When you define it, mode will be Class C otherwise Class A.
I changed message receiving structure. I made it with callback function to provide a bit of abstraction.
I add "isConfirmed" feature to be able to send ACK info in case we get confirmed downlink from NS.
I create sendACK function In case of getting confirmed downlink.
I correct readAck function by eding a line of code to clear previous ACK bit.
I use Chirpstack NS and test the example code I added, It works great.
I am sorry that I make changes a bit of carelessly since I dont have sufficent time, I couldn't do all the thing I want to do.
If I have more time, I will go on developing...
Hello!
Thanks for all the work!
As the changes are some, i will take some days to test and read all
Thanks again!
My additions and corrections :
Class C behavior was wrong, right after sending uplink, device opens RX2 continously with fixed SF,BW and Frequency. Therefore device could not hear any downlink on RX1 window. With my changes, device can hear downlink messages including ACK bit. (Refer to : https://lora-developers.semtech.com/documentation/tech-papers-and-guides/lorawan-class-c-devices/ https://lora-alliance.org/resource_hub/rp002-1-0-0-lorawan-regional-parameters/ )
For class selection, I add a definition in Config file. When you define it, mode will be Class C otherwise Class A.
I changed message receiving structure. I made it with callback function to provide a bit of abstraction.
I add "isConfirmed" feature to be able to send ACK info in case we get confirmed downlink from NS.
I create sendACK function In case of getting confirmed downlink.
I correct readAck function by eding a line of code to clear previous ACK bit.
I use Chirpstack NS and test the example code I added, It works great.
I am sorry that I make changes a bit of carelessly since I dont have sufficent time, I couldn't do all the thing I want to do.
If I have more time, I will go on developing...