LMK05318: Checksum verification on TICS Pro

Part Number: LMK05318
Other Parts Discussed in Thread: USB2ANY,

I had this questions from a customer: 

"When using TICS Pro and a USB2ANY pod, is there some means of seeing a checksum or readback verification of what is on the LMK that will indicate we put the right SW on it?"

Please let me know if something like this exists. 

Thanks

 

  • Hi Christopher,

    You can compare read back R155 NVMSCRC, the NVM Stored CRC with your intended CRC from the HexRegisterValues.

    For example 0x7B is the stored CRC in this case:



    This is also possible in the application for a quick versioning sanity check.
    Although the LMK checks the stored CRC with computed CRC upon device initialization but that is for validating correctness, not versioning.

    Regards,
    Octo

  • Hi Christopher, 

    Apologies for the delayed response here. As Octo mentioned you can use the NVMSCRC and NVMLCRC values to determine if the EEPROM programming was successful. Since the NVMCNT is included in the CRC calculations, you should see the CRC value update on each programming cycle of the EEPROM. 

    For version control I recommend writing to EEREV or the spare bytes as shown on the "EEPROM" page in the TICS Pro GUI: 

    You could then read back specific these EEPROM bytes using the procedure described in section 8.5.8 of the device datasheet. Let me know if this helps 

  • Thank you Connor, but than I have a followup question about EEREV.

    According to LMK05318B register manual SNAU254A R11 EEREV is read only.
    How do we change EEREV value?

    I understand that it can be written through SRAM but what would then be the sequence?


  • Hi Octo, 

    EEREV is stored in EEPROM address 11, but like you mentioned it can't be directly written using the regcommit sequence since register R11 is read only. The easiest way to write this through SRAM is using the TICS Pro GUI, if you check the box to modify those restricted fields then you can see some additional writes get appended near the end of the programming sequence: 

    This procedure follows the steps outlined in the "Write SRAM Using Direct Writes" section of the datasheet. For example to write a value of 5 to EEREV (EEPROM address 11) in my example, the sequence would be: 

    R159 0x009F00 #Write MSB of EE address 11 to MEMADR byte 1

    R160 0x00A00B #Write LSB of EE address 11 to MEMADR byte 0 

    R162 0x00A205 #Write data value of 5 to RAMDAT

    After programming EEPROM with the SRAM contents, on the next power cycle you can read back R11 and it should have the updated value stored in EEREV.