rpp0 / gr-lora

GNU Radio blocks for receiving LoRa modulated radio messages using SDR
GNU General Public License v3.0
537 stars 115 forks source link

Problem when SF12 is set #63

Open nkaramolegos opened 6 years ago

nkaramolegos commented 6 years ago

I believe that the decoding using SF12 is not successful. I am testing the code using RN2483 (waspmote module from libelium) and SX1276 with an arduino. Is there any known problem?

rpp0 commented 6 years ago

SF12 should decode fine, but you can try lowering the correlation threshold in the code and see if that gives a better result.

I'm currently investigating a better synchronization technique that doesn't involve magic threshold values, but it will take some time to figure out.

On Fri, Mar 23, 2018, 18:40 Nikos Karamolegkos notifications@github.com wrote:

I believe that the decoding using SF12 is not successful. I am testing the code using RN2483 (waspmote module from libelium) and SX1276 with an arduino. Is there any known problem?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/rpp0/gr-lora/issues/63, or mute the thread https://github.com/notifications/unsubscribe-auth/AH4HCHpwwqeLkdd-VZjFXeiCEerRJciSks5thUGAgaJpZM4S5M8r .

rpp0 commented 6 years ago

Do you happen to have a .cfile of the signal? I could take a look at what the problem might be if you want.

nkaramolegos commented 6 years ago

Before that, I have one overflow (O) when the packet is received which is not existing when I use the other SFs. I have to check it. When I am using the RTL SDR instead of USRP is ok. Therefore I believe this not problem of the implementation

ThGeoffrey commented 6 years ago

Hi !

I'm interested in your answers, because I'm facing the same problem with others SF (only SF11 looks to approximately decode what I am sending with my SX1272)... I fail in decoding what I send... Strange...

ThGeoffrey commented 6 years ago

My bad ... I realized that I have to put the "BB Gain" to 30 or 40 and the "IF gain" to 40 + the "RF Gain" to 10 to decode everything perfectly for CR8 ! That works, and this is amazing ! Now I have to modify the code to try to decode BW250 messages & try to make the other CRs work...

rpp0 commented 6 years ago

Another thing you can try is increase the sample rate of the receiver. This should increase the decoding accuracy at the cost of a performance loss.

If you see an "O" that means your host can't keep up with the processing, and you need to reduce the sample rate and / or the "decimation" parameter of the LoRa Receiver block.

nkaramolegos commented 6 years ago

@ThGeoffrey Out of curiosity, what is your SDR?

ThGeoffrey commented 6 years ago

@nkaramolegos I work with 2 HackRF One (one for Tx, the other for Rx) !

ThGeoffrey commented 6 years ago

By the way, @rpp0 what kind of alternative do you think in order to replace the "magic thresholds for synchronization" ? PLL ???

rpp0 commented 6 years ago

The real LoRa hardware somehow uses an FFT to estimate the frequency error, but I'm not familiar with the details as this is not described in the datasheet or patent.

ThGeoffrey commented 6 years ago

Okay... I'll try to find some piece of information though ... Thank you for all the work you did, this is just amazing ! ;)