Need Best Method to receive 1000 node data on gateway


In our application, about 1000 node is powered on same time and remains of 1-2 hour max. How should I manage to get all data from devices.

Please suggest best mechanism to handle and receive all data without missing.

Thank You

That’s a relatively low number of nodes, in the greater scheme of things. As long as your backend is provisioned to support that many nodes joining in a short time span, along with whatever their reporting interval is, you should be fine. Report back if you have issues.

In joining I use ABP. but issue is with data collision, as mostly about 80% will use Data Rate 0. which leads to more air time for data transmission. gateway uses 8 channel with multiple SF.

I am facing packet loss about 40%. which is very bad.

Please suggest what can I do for this packet loss.

Thank You

Add more gateways. Don’t use DR0. Use ADR.

Is CAD mechanism would be useful?

What is missing form your post is how much data you need to send from each node.
If the packet size is under 10 bytes, you may be able to squeeze it in. LoRa WAN’s design parameters make some assumptions such as short packets, infrequent transmissions and a 64 channel gateway. But as most gatways are only 8 channel, available capacity is only 1/8 of the theorectical maximum. You could use 16 channel gateways, but it sounds like you may already have the gateways in this may not be an option.
The next factor to consider is how far from the Gateways the nodes are and hence what data rates they can use. On nodes close in you can use a higher data rate and then back off the data rates on nodes further out. This is what ADR does. Setting ADR on creates extra traffic in negotiating the optimum data ratesIf the nodes are static you will be better running with ADR off and manually setting a suitable data rate in each node.
As has already been posted earlier, you shoudl really look at using ABP rather than OTAA in order to get rid of the extra time needed to negotiate Joins. yes, OTTA does theoretically add a little more secuity, but it comes with a biug hit in performance. Just imagine what would happen if the LNS gets reset and all 1000 nodes need to rejoin when the wake. The network will grind to a halt and you will have no traffic.
You also should look at running iwth a 1 sec RX1 delay rather than the 5 sec being adopted in many areas. That extra 4 sec wait means a lot of lost air time.
You also need to look at how important getting the data form each node is: for example if it is an accumulator or totaliser, missing one day’s data does not matter too much if you get the updated totaliser on the next day. But if each reading is a unique value, then making sure that each one is uplinked is more important. You then need to decide whethre you are using Un-acknowledged transmissions and may decide to send each message 2 or more times in the hope that one gets thrugh; or to instead using Acknowledged packets, whereby if an ACK is not received, the packet is re-transmitted. But these parameters need to be designed into the firmware of your nodes.
To make sure the proposed system wil lwork, you should set up a spreadsheet which models the main parameters: number of nodes, packet size, data rate etc and form that works out the expected air time; you can then spread that over the 8 available uplink channels. But you need to be realistic and make allowwances for collisions : there is still a likelihood that you will get two devices transmissting at the same time on the same channel.
You should also look at incorporating either a fixed or random delay in each unit to try and ensure that they all wake and send at different times during your uplink window.

1 Like

With larger installations, especially when mains powered, nodes should wait some random amount of time before starting to transmit (several different schemes/solutions are possible).

This will however (depending on your nodes) require modification of the firmware on the nodes (end devices).
If not, race conditions and congestion will occur.
1000 nodes all powering up and starting to transmit at the same time is comparable to a DDOS attack.

Also use more than one gateway to increase concurrent handling capacity (and prevent single point of failure).

1 Like