CRC doesnt work

Hello Experts,

Recently, I tried to receive the message which is from signal generator, however I ran into some issues. the parameters I used as below:

  • SF: 7
  • BW: 125kHz
  • Preamble length: 8 symbols
  • Coding Rate: 1
  • Interleaver Active: Disable
  • Payload Length: 10 Bytes
  • Payload: 0x01~0x0A
  • Header Active: Disable
  • Payload CRC: Enable or Disable
  • SX1262

test results on my side as below:

TYPE Payload CRC Header Active Test Result
signal generator on disable
SX1262 on disable OK
signal generator off disable
SX1262 on disable OK

based on the test results above, when Payload CRC turns off on signal generator side, but CRC_ERROR_IRQ on SX1262 side is not still generated (I enabled IRQ for CRC ERROR), RX_DONE IRQ has been triggerred instead. it is strange, that is different from the info as below:

Concerning the issue above, could you give me a hand?

thanks a lot in advance.

What is the configuration of the CRC when you configure the packet parameters?

FYI, CRC_ERROR irq (if any) is generated with RX_DONE irq.

   SubgRf.PacketParams.Params.LoRa.CrcMode = ( RadioLoRaCrcModes_t ) config->lora.CrcMode;

where CrcMode = LORA_CRC_ON

what do you mean? what you mean is that they are both generated at the same time? could you also confirm the snapshot if it is also cover the SX1262?

thanks again.

Please check it:

CRC generation/validation using implicit header doesn’t works. We have changed to use variable length/explicit header mode, and generate/validate CRC by software.

We never received an official answer of this topic.

if you need extra help, please don’t hesitate to contact me.

Hello @indusys.argentina Bro,

Many thanks for your replies. I looked into the topic you mentioned, it is a little different from me, as you mentioned, the CRC checking is invaild when disabling CRC checking on Rx side, it can meet the rule above

However, the case on my side is that CRC checking is always enabled on Rx side, but without any CRC_ERROR IRQ is generated. it is very strange for me, it seems that CRC checking has not any meaning.