This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RF430F5978EVM: Read Frame BCC

Part Number: RF430F5978EVM
Other Parts Discussed in Thread: RF430F5978

Hi,

I am currently using the RF430f5978 evaluation module and I am testing the MSP access instruction through the MRD2 reader.

The messages sent through the MRD are: 01 11 E8 A0 00 00 32 00 32 40 F3 00 11 22 33 44 99 9A 0A A7

FBCC Start Value: 0x3791
Data: F3 00 11 22 33 44 99 9A
FBCC result: 0x0000

The response I am getting through the MRD is: 01 0C 00 80 7E 00 FF 22 33 44 F1 00 CB 95 F7

FBCC Start Value: 0x3791
Data: 7E 00 FF 22 33 44 F1 00 CB 95
FBCC result: 0x1493

The FBCC calculation value of the MRD2 command is zero, but the FBCC of the LF response is not zero. Is the "Read Frame BCC" in the LF response correctly received?
Is FBCC calculation method of LF response different from MRD2 command?

Thank you,

Jungkil.

  • Hello Junkil,

    I am not sure if I got the point correct.

    As far as I understand you are taking about the last byte of the MRD command (0xA7) and MRD response (0xF7).

    This BCC is a simple XOR over all bytes excluding the start-byte (0x01). See chapter 6.2.2 in the MRD2 Reference Guide:

    http://www.ti.com/lit/pdf/scbu049

    If this is not the point please let me know.

    Best regards,

    Helfried

  • Hello Helfried,

    That's not the point I want.
    What I'm talking about is the "Read Frame BCC" that the LF transponder calculates. (See 24.5.7 Uplink for SLAU378.)

    To verify the CRC calculation, I compared it with the BCC in SLAU378's Table 24-86 Program Encryption Key AES K1 Communication Details and the results were the same.

    In addition, since the response to the command that sent MRD2 was received, the CRC calculation method is considered to be correct.

    However, if the reader calculates the CRC including "Read Frame BCC" to check the validity of the response, it will not be zero.

    I want to check if the value of the Read Frame BCC in the response of the LF transponder is correct. Also I want to know how to do CRC calculation correctly.

    Best regards,

    Jungkil.

  • Hello Jungkil,

    ok new try:-)

    You are sending the following data to the transponder:

    Data: F3 00 11 22 33 44 99 9A

    - F3 -> Write Address

    - 00 -> Write Address Extension

    - 11 22 33 44 -> Data for the MSP Access Cmd

    - 99 9A -> 16 bit CRC -> OK

    You receive the following data from the transponder (see 24.5.7.7 Responses to MSP Access Commands):

    - 7E -> Startbyte ( not relevant for CRC calculation!)

    - 00 -> Key

    - FF 22 33 44 -> Data from transponder

    - F1 -> Write Address

    - 00 -> Write Address extension

    - CB 95 -> 16 bit CRC -> OK

    The CRC of the transponder response is calculated over the data bytes 00 FF 22 33 44 F1 00 and results in CB 95.

     The calculation is described in SLAU378 chapter 24.5.3.4 Write Frame Block Check Character (and also Read Frame)

    Here a sample C code for the calculation:

    The parameters are an array of ‘unsigned char’s, called Buffer and another ‘unsigned char’ called size. Buffer contains the telegram data (Write Address stored in Buffer[0] etc.) and size contains the number of bytes contained in Buffer. The function returns a 16-bit value which is the resulting BCC.

     

    Best regards,

    Helfried

  • Hi Helfried,

    I understand.

    Thanks for you.

    Jungkil.