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

nRF52810 Central and UART

Hi, I would like to develop a BLE central node that sends over UART when a button is pressed. I understand the memory is limited on nRF52810, but I think it'll fit. The example app (ble_app_uart_pca10040) uses VFP register arguments. Would it be complex to modify this example to not need FPU support? Basically looking for a pca10040e version.

I noticed there's a thread where the Nordic team agreed to update Gazelle libraries for non-FPU devices (https://devzone.nordicsemi.com/f/nordic-q-a/44042/using-nrf52810-with-gzll_nrf52_arm-lib/172741#172741). I'm not sure if it ever finished. I'm hoping my request isn't too complicated I can figure it out with some guidance.

For completeness:

developing in SES using nRF52 DK with a nRF52832 (but actually developing for nRF52810). SDK 16.0.0 and S132 v7.0.1.

  • Got it thanks. 

    It compiles but won't download anymore. I'm getting the "cannot download multiple load files because they overlap" error. I'm guessing my ram start/stop/sizing is incorrect.

    I did some searching on the internet and figuring out the start/stop/ram sizes seems to be pretty difficult. The RAM needed depends on the config, so I get that it's not clear until you actually run it. I followed the ble_stack_init where it fetches the ramstart address and got 0x2a28 (using S132 on 52832 project)

    For the same project using S132 v.7.01, but hoping to emulate a 52810, my settings are:

    linker_section_placement_macros="

    FLASH_PH_START=0x0;

    FLASH_PH_SIZE=0x30000; (192kb)

    RAM_PH_START=0x20000000;

    RAM_PH_SIZE=0x6000; (24kb)

    FLASH_START=0x26000; 

    FLASH_SIZE=0x4000;

    RAM_START=0x20002a28;

    RAM_SIZE=0x35d8"

    linker_section_placements_segments="

    FLASH RX 0x0 0x30000;

    RAM RWX 0x20000000 0x6000"

    Does it look right?

    In the base ble_app_uart_c_pca10040_s132 project, the memory usage is telling me that it's using 32KB (31.9KB free of 64KB), which is a bad sign, since the 52810 only has 24kb. I'm hoping this isn't optimized and that I can squeeze it in. For the default project, can you tell me if that project will fit in 24kb of RAM? I basically need it as-is.

  • Hi,

    You have some flash you can free to the app if you increase 'FLASH_SIZE', but apart from that, it looks ok. Can you upload your project/hex files so I can try it here? Wrong RAM setting will not lead to programming errors, but cause problems when you try to run the code.

    Also, please remember that s132 v7 is not qualified for the 52810. So this combination should only be used for evaluation.

Related