I have several questions about 52811

Hello Nordic engineer,

I use SDK15.3.0 and Keil

52811 have ROM 192K and RAM 24K

Questions 1:I'd like to know how much RAM and ROM does softdevice(BLE) occupy?

Questions 2:In SDK example, If a certain example doesn't have "p10056e," how many steps do I need to take to go from p10056 to p10056e?

Is there anything else I might have missed?

Questions 3:If I want to achieve functionality similar to that of "ble_app_uart," but it's necessary to have both center and peripheral roles, I looked at "ble_app_multirole_lesc." In the diagram below, can the highlighted section within the red box be removed?

《peer_manager_init()》I don't need to record the previous connection information. Also, it's not necessarily A connecting to B every time; it could be A connecting to C, or B connecting to A.

《buttons_leds_init(&erase_bonds)》The reason is the same as the peer's.

《hrs_init()》《hrs_c_init()》I don't need Heart Rate Service.

《qwr_init()》Because this feature is not utilized in the "ble_central\ble_app_uart_c" context.

Is my understanding correct?

Thanks

  • Hi Einar,

    Thank you for your reply

    Multiple errors occurred after deleting the red box

    Another question, does Crypto seem to be related to Lesc?

  • Hi,

    Yes, LESC requiers nrf_crypto for the Diffie–Hellman key exchange. So it is expected that you get errors when you delete these parts. You should put them back in. You can keep all these files and includes in the project, the only thing you need to change is the configuration in sdk_config.h, where you remove cc310 by setting NRF_CRYPTO_BACKEND_CC310_ENABLED to 0, and enabling alternate backend support for the requiered operations instead. See Configuring nrf_crypto frontend and backends.

    The main crypto configs you would want to enable are:

    • NRF_CRYPTO_BACKEND_MICRO_ECC_ENABLED
    • NRF_CRYPTO_BACKEND_MICRO_ECC_ECC_SECP256R1_ENABLED
    • NRF_CRYPTO_BACKEND_NRF_HW_RNG_ENABLED
    • NRF_CRYPTO_BACKEND_NRF_HW_RNG_MBEDTLS_CTR_DRBG_ENABLED

    I may have forgotten some configs, but you can take a look at some example sdk_config.h files (don't pick one from a project for nRF52840), and look at the build errors to see what is missing.

  • Hi Einar,

    Thank you for your reply

    I made a new copy of the example, which is also considered 'put them back in', right?

    When modifying 'NRF_CRYPT0_BACKEND_CC310ENABLED' to 0, there was still a compilation error. I should have made more modifications, but I am not sure about the direction of the modifications...

    This webpage displays“Unfortunately, the page you've requested no longer exists”...

    The main crypto configs you would want to enable are:

    I would like to ask a question first, why is it 'enable'? Because the chip I need to use is 52811, but due to insufficient capacity, I should need more 'disable'?

  • Hi,

    tony55723 said:
    This webpage displays“Unfortunately, the page you've requested no longer exists”...

    Sorry, I must have copy-pasted the wrong link. The correct is here: https://infocenter.nordicsemi.com/topic/com.nordic.infocenter.sdk5.v15.3.0/lib_crypto_config.html 

    This explains configuration the crypto libraries.

    tony55723 said:
    I would like to ask a question first, why is it 'enable'? Because the chip I need to use is 52811, but due to insufficient capacity, I should need more 'disable'?

    You started off with an example project for nRF52840, which is the "biggest" nRF52 series device, and that included CryptoCell which is a hardware accelerator. So you need to disable CryptoCell in sdk_config.h as it is simply not present on your hardware. However, if you want/need LESC (?), you need crypto libraries for some features as discussed earlier in this thread. If you take a look at the pca10040 example project you will see that it does not use CryptoCell, but rely on other libraries (primarily Oberon). You can do that as well, but you will get a even smaller flash usage if you use micro-ecc. If you disable all crypto related libraries, you will get build errors like those you have here, as that is needed for LESC. That said, if you don't need LESC, you can also remove the crypto libreries.

Related