helium / router

router combines a LoRaWAN Network Server with an API for console, and provides a proxy to the Helium blockchain
Apache License 2.0
69 stars 32 forks source link

LoRaWAN Config Request: No CFList on EU868 #433

Closed lthiery closed 3 years ago

lthiery commented 3 years ago

There are some LoRaWAN devices being sold for regions like Europe, where they only know how to function on 3 channels. This is technically LoRaWAN compliant and therefore we need a way for the user to disable CFList (which otherwise expands the device to use 5 additional channels).

macpie commented 3 years ago

Is that the option you are talking about?

Screen Shot 2021-09-24 at 15 37 52

macpie commented 3 years ago

We only support disabling for US915 we would need to add support for EU868

jdgemm commented 3 years ago

internal ref: 10293

mikev commented 3 years ago

Regarding Issue#433. We're in a pickle here.

The US feature was added to fix a bug with end-devices. Certain end-devices only implemented 3 channels. But the LoRaWAN spec says that when a CFList command arrives it should re-configure to 8-channels (3 + 5). This was so the Join would be limited to 3 channels at the start.

Anyway, certain US end-devices had a bug and could never expand beyond 3 channels. So we added this configuration option. However instead of "Disable CFList" with a default of false, we defined "Enable CFList with a default of false. Apparently this choice was made because we felt most US devices were broken and therefore the default should reflect the actual state of the market. Unfortunately if we enable this feature for EU868, we'll also be enabling a default of false (which is not correct). That means any existing EU devices will suddenly and unexpectedly get their normal and spec'd behavior disabled.

Proposed Plan

We'll fix the code to be correct, i.e. 'Enable CFList' will default to true. This feature will be allowed in all regions. We'll then migrate and/or update the DB after the deploy so that all the DB values are correct.

mikev commented 3 years ago

The proposed PR changes the default from false to true. I'll need help to migrate / update the device profile DB. Thx!

jdgemm commented 3 years ago

Thanks for raising this issue, we have come up with a plan and have put added it to our backlog.

buzzware commented 3 years ago

This issue could resolve or relate to my issue somehow https://github.com/helium/router/issues/463