Struggling to get S=2 CODED PHY working

Hi,

I am working on a system that runs a proprietary protocol, i.e. non-BLE, which works fine when it uses either uncoded links or S=8 (LR125Kbit) coded links, but I want to use S=2 (LR500Kbit) and cannot seem to get any packets past the CRC check in the receiver. A  few questions:

1.Does the Radio peripheral automatically set the CI and TERM bits in the packet prior to coding ? I can't see any way of setting these. I only seem to be able to set the length fields in PCNF0.

2.If I select LR500Kbit mode in the transmitter, does the receiver need to be configured in LR125Kbit mode in order to receiver FEC Block 1, which is coded with S=8 ?

3.When my Rx detects a PHYEND event, which it seems to do every time (at which point I check the CRC), the PDU register contains the value 4, which would mean CISTAT = 2, which does not seem valid. Shouldn't this be 1, i.e. set to indicate that coding is LR500Kbit ?

I would post my code but as I say, LR125Kbit mode works fine, and all I've done is change the mode. Is there anything else I need to change ?

Thanks

Pete

Parents Reply Children
  • Sorry for late reply, we have tested that LR125K should be working ok. Yes there were some issues high packet error rates, but those are covered in Errata 172 and Errata 191 workaround. If you have taken these into considerations, then it should be ok. Can you show some of your code snippets where you are configuring the radio and the sniffer trace of any transmitted data at all from the radio in 125k mode?

  • Thanks for the reply. Unfortunately it doesn't really answer any of my questions. I don't have a problem with LR125K mode. It was LR500K mode that I could not get working. Also, I don't think Errata 172 and 191 apply as I'm using the nRF52811 and I don't see them listed for that device.

    After some testing I managed to get LR500K mode working but only by changing from using a static packet length to using a dynamic length, as hinted at in the link in my second message, but I could do with confirmation that this is the only way to get LR500K working. 

    Thanks

    Pete

  • Thanks for clarifying that.

    Pete W said:
    in my second message, but I could do with confirmation that this is the only way to get LR500K working. 

    It looks from that discussion that you linked that static length in packets have caused more CRC errors, but I could not find anything regarding that in the internal database. So I have to assume that we have not made any further investigation on that.

Related