This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Serial number in nRF24le1

Is it possible to protect part of the memory of nRF24le1, in such a way, that it can be used for a serial number?

For my application, it would be beneficial to be able to update the firmware, without changing the original serial number.

To put it in other words: "I need 32 bytes, that can not be changed by the customer"....

I know, that there is a check box with "block readback of mainmemory" in nRFgo Studio under "advanced settings". And that could be part of the solution, but that does not prevent the serial number from being overwritten, when the firmware is updated.

  • The nAN-18 and nAN-22 are fine, but they are based on nRF24LU, not nRF24Le1. The example uses USB. nRF24Le1, does not have USB.

    My conclusion on nRF24Le1 is: "Fine chip, but weak documentation".

    Writing "I am not sure ..., but I guess it should be straight forward to implement." It sounds like you are not a software engineer.

  • @Gustav: You are correct, I'm not a software engineer but an application engineer. Do both software, and hardware, but more focusing on helping people.

    I wrote "I'm not sure if memory protection is implemented in the example" because last time I looked into the code was almost 3 years ago. nRF24LE1 is a pretty old chip. (And no, memory protection was not implemented in the code)

    I mentioned "it should be straight forward to implement" because the instruction on how the memory protection work is defined clearly in "Protected pages and data pages" section in the Spec.

    nAN-18 should be used with nRF24LE1, that what written in the title of the document: "nRF24LE1 firmware update over-the-air"

    How this set-up works is the bootloader on nRF24LE1 connects to a nRF24LU1 who acts as the master. The nRF24LU1 receive the new image for nRF24LE1 via USB from the PC. Then the nRF24LU1 send that image via RF to the nRF24LE1 and the bootloader on nRF24LE1 updates that new firmware and starts running with the new firmware.

    If you don't plan to use the nRF24LU1 as the master, you can use nRF24LE1, the code won't be too much different, you just have to figure out a way to receive the image, maybe from external flash, or from UART.

  • @Gustav: I have to correct myself. After checking around with my colleague, seems that it's not possible to write to the infopage from the MCU. It's clearly mentioned in the Product Spec for the nRF24LU1P, but not the nRF24LE1 so it made me confused.

    The only part in the spec that implied the MCU can't write to infopage is: "The MCU can perform erase page and write operations to the unprotected part and the data part of the flash main block" => not the infopage.

Related