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

nRF52832 Programming with Product Example Compiled with GCC

While I am trying to Program the nRF52832 with Product Example Compiled with GCC, Smart Remote 3 is not booting up.

Parents
  • Hello Nordic Support Team,

    I am trying to program the nRFready Smart Remote 3 for nRF52832 by compiling and "nRFready Smart Remote 3 nRF52 v1.2.1alpha" of "smart_remote_3_nrf52"  Projects of "nRF52832\armgcc".

    Here are the steps I followed to to generate the Hex file:

    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3\examples\ble_peripheral\smart_remote_3_nrf52\Projects\Firmware_nRF52832\armgcc> make
    mkdir _build
    cd _build && mkdir PCA20023-SR3_nRF52832_Product_Example
    Compiling file: drv_acc_bma222e.c
    Compiling file: drv_acc_lis3dh.c
    .
    Compiling file: nrf_crypto_mem.c
    Compiling file: nrf_crypto_rng.c
    Linking target: _build/PCA20023-SR3_nRF52832_Product_Example.out
    text data bss dec hex filename
    228368 2340 22780 253488 3de30 _build/PCA20023-SR3_nRF52832_Product_Example.out
    Preparing: _build/PCA20023-SR3_nRF52832_Product_Example.hex
    Preparing: _build/PCA20023-SR3_nRF52832_Product_Example.bin
    DONE PCA20023-SR3_nRF52832_Product_Example
    
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3\examples\ble_peripheral\smart_remote_3_nrf52\Projects\Firmware_nRF52832\armgcc> cd ../../../../../../
    

    Then cd to SDK directory and used "mergehex" to merge the boot, app and softdevice hex files as below:

    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3>
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3> mergehex -m .\examples\ble_peripheral\smart_remote_3_nrf52\Projects\Firmware_nRF52832\armgcc\_build\PCA20023-SR3_nRF52832_Product_Example.hex .\components\softdevice\s132\hex\s132_nrf52_5.1.0_softdevice.hex .\examples\ble_peripheral\smart_remote_3_nrf52\Projects\Bootloader_nRF52832\armgcc\_build\PCA20023-SR3_nRF52832_Product_Example_Bootloader.hex -o PCA20023-SR3_nRF52832_Product_Example.hex
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3> nrfjprog -f nrf52 --program .\PCA20023-SR3_nRF52832_Product_Example.hex --sectorerase
    .
    Erasing page at address 0x7F000.
    WARNING: A UICR write operation has been requested but UICR has not been
    WARNING: erased. Please verify that the result is correct.
    Applying system reset.
    Checking that the area to write is not protected.
    Programming device.
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3> nrfjprog -f nrf52 --reset
    Applying system reset.
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3>
    

    When I use the Pre-compiled FW it is working as expected:

    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3> nrfjprog -f nrf52 --program '..\Precompiled Firmware\PCA20023-SR3_nRF52832_Product_Example.hex' --sectorerase
    .
    Erasing page at address 0x7F000.
    WARNING: A UICR write operation has been requested but UICR has not been
    WARNING: erased. Please verify that the result is correct.
    Applying system reset.
    Checking that the area to write is not protected.
    Programming device.
    C:\Nordic Semiconductor\nRFready Smart Remote 3 nRF52 v1.2.1alpha\nRF5x SDK-SR3>
    

    I did the comparison of "Smart_Remote_3_nRF52_gcc_nrf52.ld" with "Flash memory layout" it is matching.

    Please let us know am I missing any step here.

    regards, Pratap

  • Hi!

    It looks like you're missing the bootloader settings .hex file, which you need to generate before merging all hex files (including that one). Try

    nrfutil settings generate -f nrf52 --application PCA20023-SR3_nRF52832_Product_Example.hex --application-version 0 --bootloader-version 0 --bl-settings-version 1 settings.hex

    Best regards,

    Heidi

Reply Children
No Data
Related