ValueError: invalid join data rate 3 Lopy LORAWAN
-
I have a problem configuring a Lopy with Lora. I update the firmware to both of my Lopys and Fipy with the country set as US to use 915 MHz. I program the Fipy as a gateway and it connected to TTN successfully, then the first Lopy and the same.
But when uploading the same example Node program to the second Lopy it gives me this error. I took care of changing the TTN authentications keys for the second Lopy and I am sure the firmware is set for 915 MHz. I tried with both cases RTS/CTS pins connected and disconnected and didn't work niether. I also tried to change the data rate to the following 0-3(same error), 4(I hanged, had to upload firmware again), 5-6(same error).
-
-
@malachib There is a PR for that to fix the issue (https://github.com/pycom/pycom-micropython-sigfox/pull/183), but that did not make it into the master branch or development branch yet.
-
-
@jclo13 I updated my FiPy device to 1.18 but still get the same error. Did you have to do anything else for it to work?
-
hello @fvbattocchia, the problem solved updating to firmware 1.18, try to downloand the last "Pycom firmware update" tool to update the firmware 1.18, I am using a US915 firmware.
-
@jclo13 said in ValueError: invalid join data rate 3 Lopy LORAWAN:
1.18
Hi, i have te same error with the firdware 1.15.0 but i found that this is the last version of firdware. do you solved this problem thit the firdware 1.18?
-
@jclo13 You can reset the counter in the TTN console to 0. Then the next message from the mote will synchronize the counter to a common value.
-
@Xykon yes, I am using lora.nvram_save() and then lora.nvram_restore().
@robert-hh, I unchecked the box mentioned and it worked, thank you. but you mention for testing, how can I solve the problem if I want to check the counter frame?
Jose
-
@jclo13 Deepsleep wakeup is a reset. So before going to deepsleep, you have to save the LORA state tio nvram and restore it after that from nvram. No need to run join again, because the credentials are still valid. Actually, once a device has being joind and the credentials are established, there is no need to join with again, at least with OTAA.
The problem you see may be caused by replaying packet numbers. You can verify that in the TTN console by unchecking the box "frame counter checks" in the devices settings. For testing this is an acceptable setting.
-
@jclo13 Are you running
lora.nvram_save()
before going to deepsleep andlora.nvram_restore()
after waking up?
-
@Burgeh, the firmware 1.18 is already published,
@jmarcelino, I updated the firmware of my lopy4, the problem mentioned before disappeared, but I have another problem, the lopy4 connect successfully whit TTN but it lost connection after the deepsleep, in other words, the lopy4 goes to deep sleep, it wakes up and it think that is connected, it send the data, the gateway receive the data, the TTN Gateway Traffic window shows the packet arrived, but the APPLICATION DATA window doesn´t show anything, if I made the connection procedure again, it shows the data again. Can you help me?, please
thank you
Jose.
-
Any update on how this works with the stable firmware release? (1.17.3.b1?)
-
I tried whit the last Pybytes firmware and it works, but the memory space is less. And it needs internet to function, right?
-
-
@tombee
I'm not sure sorry, maybe next week
-
@jmarcelino When do you anticipate the next f/w release?
-
@jclo13
This is a bug expected to be fixed in the next firmware release. Sorry for the inconvenience.If you are able to compile a custom firmware there is a fix already on master (compile instructions are there too)
-
Hello @seb,
I have the same problem, I change the DR to 4 or 0 and the Lopy4 hangs out. Do you have a solution?
thank you
-
Hello,
I am having similar issue with same example published on https://github.com/pycom/pycom-libraries/blob/master/examples/lorawan-nano-gateway/otaa_node_US915.py
I have modified line 32 at the end like these:
dr=0 (hang)
dr=1 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 1
dr=2 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 2
dr=3 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 3
dr=4 (hang)
dr=5 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 5
dr=6 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 6
dr=7 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 7
dr=8 File "<stdin>", line 32, in <module> ValueError: invalid join data rate 8