Lora-net / LoRaMac-node

Reference implementation and documentation of a LoRa network node.
Other
1.86k stars 1.08k forks source link

Implementation of SX1261-2 Limitation in DS_SX1261-2_V1.1 is not according to description #1278

Open tony-ward opened 2 years ago

tony-ward commented 2 years ago

DS_SX1261-2_V1.1, chapter 15.1 describes a known limitation with modulation quality when using 500kHz LoRa bandwidth. Chapter 15.1.2 describes a workaround that is implemented here: https://github.com/Lora-net/LoRaMac-node/blob/fe8247e2b84101fe701531a5f9ef14f035743af4/src/radio/sx126x/radio.c#L854

This workaround does not match the description of the limitation: description: "The following pseudo-code can be used before each packet transmission, to properly configure the chip:"

whereas RadioSetTxConfig() is not called before each transmission, rather only once at startup.

Either the data sheet is incorrectly worded, or the implementation needs revision.

vtjballeng commented 2 years ago

Indeed, we are also seeing this sensitivity errata continue when this is only set at startup with a ~6dBm variation between 250kHz & 500kHz.

We've validated the solution is to set this for each tx event which brings 500kHz to the expected ~3dBm difference to 250kHz.

From the datasheet: image

mluis1 commented 10 months ago

Sorry for the late comment on this issue.

If I am not mistaken the stack always call RadioSetTxConfig prior to setting the radio in Tx mode. Thus, we think that before every uplink the workaround is applied.

Can you please indicate a situation where this is not the case?