New firmware release 1.6.7.b1 (LoRaWAN Nano Gateway with TTN example!!)
-
In the nanogateway.py file, where is the function const()?. Because const(2), const(1), etc. is not recognized.
Thanks in advance.
-
@bihut const() is a kind of Micropython directive, not a function. It's kind of similar to #define in C.
-
File "main.py", line 12, in <module> File "nanogateway.py", line 94, in start File "nanogateway.py", line 161, in _push_data ValueError: odd-length stringMy gateway id is 'gateway-rob', should I change that?
-
@RobTuDelft
Your gateway ID has to be a EUI64 (hexadecimal) e.g. 240ac4fffe008d44 which for now you can base on your WiFi hardware address.That's what TTN accepts too. Have you registered your gateway there as the packet forwarder type? They've changed this now to "I'm using the legacy packet forwarder" checkbox, make sure it's ticked.
-
@jmarcelino Great, thanks. Machine unique ID/MAC (
machine.unique_id()) can be used directly, without any changes or what is the convention here? Noticed the checkbox indeed.Now I have another quesiton pertaining LoRa transmission. When I send the payload ("hi") as
lora_sock.send(bytes([0x68, 0x69]))or aslora_sock.send('hi')the payload ends up ascc26for example on the other end; which if I translate to ascii again is not "hi". Any clue what is happening here? -
@RobTuDelft
Though the process doesn't actually guarantee unique numbers there is a convention to add FFFE in the middle to expand the 48-bit MAC to the EUI64 expected by the Things Network.

I'm not sure what you mean in the LoRa problem. Is this with mode=LoRa.LORA or mode=LoRa.LORAWAN? And what is the "the other end": another LoPy, a LoRaWAN network server or something else?
-
@jmarcelino Thanks for clarifying.
As for the second issue, this is now resolved (had to do with encryption on the LoRaWAN). -
I have successfully used the nanogateway example code to push some temperature sensor data (MCP9808) to TTN and am happy about that. Now I'm wondering are there ways using this example to configure LoRa to increase the range? I see the LORA_GW_DR = "SF7BW125" property in the config, but am unsure how or if this can be used to tweak Lora.
Thanks. -
@jomifo yes, if you change the spreading factor to 12 ("SF12BW125") the range will be much better. Do this both on the nano-gateway and in the node. You also need to tweak the Join command like this:
lora.join(activation, auth, * ,timeout=None, dr=None)Specify the
drand make it 0 (which is the same as SF12BW125).Cheers,
Daniel -
@daniel Excellent! Seems no need to directly alter the join command since the 'dr' parameter also uses a config parameter, 'LORA_NODE_DR'. I'm looking at the latest example on Github.
-
I'm coming from this tutorial: https://docs.pycom.io/chapter/tutorials/lopy/lorawan-nano-gateway.html
You should update it probably to mention the "I'm using the legacy packet forwarder" for TTN network, and update the code to make it easy to extract the GATEWAY_ID.
Or maybe update the code to allow any GATEWAY_ID for TTN? I'm not sure how it really works... -
@fredg
Thank you very much for your suggestion, TTN changed their language and gateway registration process recently - we'll update our documentation to reflect this. -
@fredg
I've updated the Nano-gateway documentation to show how to generate a Gateway ID and also to reflect the changes in the TTN interface: https://docs.pycom.io/chapter/tutorials/lopy/lorawan-nano-gateway.htmlThanks again for your suggestion!
-
@daniel, I live in India. While registering the gateway, which frequency plan I should choose? Can I choose Europe or do I have to choose Asia?
Thanks.
-
@devang-sharma
India has a unique Frequency plan:https://kotahi.net/network/frequencies/
I recommend setting your config.py for the nano gateway and nodes to
LORA_FREQUENCY = 865062500and make sure your nodes use this 865062500 frequency as well:
# set the 3 default channels to the same frequency lora.add_channel(0, frequency=config.LORA_FREQUENCY, dr_min=0, dr_max=5) lora.add_channel(1, frequency=config.LORA_FREQUENCY, dr_min=0, dr_max=5) lora.add_channel(2, frequency=config.LORA_FREQUENCY, dr_min=0, dr_max=5) -
@jmarcelino, thanks. I've sent them an e-mail in order to get a free network connection. I hope they'll reply soon.
-
@jmarcelino, KotahiNet does not provide free connectivity in India. Also, they provide private LoRaWAN network only to the larger companies.
Is it possible to connect one LoPy(acting as a node) to connect with another LoPy(acting as a Gateway) without such LoRaWAN network?
If yes, can you guide me how to achieve it?
My question might not seem a good one, but I'm really new to LoRa.Thanks.
-
@devang-sharma said in New firmware release 1.6.7.b1 (LoRaWAN Nano Gateway with TTN example!!):
look at examples
in doc
https://docs.pycom.io/chapter/tutorials/lopy/lopy-lopy.html
and sources on git
https://github.com/pycom/pycom-libraries/tree/master/examples -
@livius Thanks. I was looking into docs and I found the examples. Though they needed modifications, it worked perfectly.
-
I have a setup with a node and a nano gateway with the latest default script from Github. The data is received in the TTN backend, so that part is working.
I want to update the date and time on the nodes over Lora (no wifi) I discovered that no rx data is received on the node. Could you give me a hint how to configure the gateway to send back the current time to the node?
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login