This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

NCS, nRF52811, and peripheral_hr_coded sample

Greetings,

What are the settings to allow an nRF52811 to use CODED PHY with the NCS peripheral_hr_coded sample?

  • NCS v1.7.0
  • board = ubx_bmd360eval_nrf52811 (effectively a PCA10040 with a nRF52811 in place of the nRF52832)

Failing that, are there any other NCS examples that enable CODED PHY on an nRF52811 (peripheral only)?

Thanks

Bob

Parents
  • Hello Bob,

    What are the settings to allow an nRF52811 to use CODED PHY with the NCS peripheral_hr_coded sample?

    You should be able to configure to use CODED PHY on your nRF52811 just as demonstrated in the peripheral_hr_coded sample. Are you getting any warnings or errors when you attempt this?

    Failing that

    Could you elaborate on how the example fails? What are you using for your central device? In the case of a phone, please make sure that the phone supports coded PHY - not all phones do this.

    Best regards,
    Karl

  • Hi Karl,

    When I select the the board ubx_bmd360eval_nrf52811, the linker indicates there is not enough RAM, overflow by 4417 bytes.

    When I select the board nrf52840_nrf52811, I see the same error, except the RAM overflow is bit smaller at 3137 bytes.

    Best regards,

    Bob

  • Hello again, Bob

    Thank you for your patience with this.
    I just built the example myself for the nRF52840 and it comes out at requiring 34 kB RAM in its unmodified state, while the nRF52811 has only got 24 kB RAM.
    You could try removing any unnecessary parts (BAT and HRS service, logging, etc) to create a minimal example, and then build it up from there, to see if you will fit your entire application onto the nRF52811 SoC.
    Could you detail what else your application will be doing?

    Unfortunately, the hrs_coded_phy example is the only coded phy example currently available in ncs - but you could read through this ticket where my colleague Simon and another user modified the UART example to use coded phy (they also discuss some other, irrelevant issues throughout, but the coded phy part is the main interest).

    brec said:
    When I select the board nrf52840_nrf52811, I see the same error, except the RAM overflow is bit smaller at 3137 bytes.

    This board configuration is meant for when you are using a nrf52840 SoC to emulate a nRF52811 SoC for development - so it assumes a nRF52840 baseline when building.

    Best regards,
    Karl

  • Thanks Karl.

    I was hoping for a little guidance on which parts could be removed without breaking the sample code. Seems HRS would be needed for a heart rate example ;-).

    I'm only trying to demonstrate a Coded PHY connection with an nRF52811, so there's no final target application. I'd use a nRF52840 for the central running the central_hr_coded sample.

    I've been pulled into another project, so I might not be able to get back to this for a bit.

    Best regards,

    Bob

  • Hello again Bob,

    Thank you for your continued patience with this.

    brec said:
    I was hoping for a little guidance on which parts could be removed without breaking the sample code. Seems HRS would be needed for a heart rate example ;-).

    Oh, I understand - my mistake. I only thought you wanted the Coded PHY connection and not necessarily the rest of the example's contents.

    brec said:
    I'm only trying to demonstrate a Coded PHY connection with an nRF52811, so there's no final target application. I'd use a nRF52840 for the central running the central_hr_coded sample.

    Aha, then I understand why you'd like to have as much of the hrs application intact. We might be able to achieve a smaller footprint without Zephyr. I will give it a try next week and see what comes of it.

    brec said:
    I've been pulled into another project, so I might not be able to get back to this for a bit.

    No worries - I'll dig around and see if I cant come up with an example of this, I'll update you if I find something! :)

    Best regards,
    Karl

  • Hello again, Bob

    Thank you for your patience with this!

    I have been unsuccessfully in tracking down an example that achieves this, so I gave this a try myself with the nRF5 SDK v15.2.0 and the SoftDevice S140 v6.1.0 emulated on the nRF52840 DK, modifying the BLE UART example, but I was unfortunately only able to get it to ~29 kB RAM usage - so it is still too large for the nRF52811.

    You might be able to shave off a few kB off the RAM usage if you scrutinize it line by line, but I think it is unlikely that you may get it to 24 kB total with the functionality intact, unfortunately.

    Best regards,
    Karl

Reply
  • Hello again, Bob

    Thank you for your patience with this!

    I have been unsuccessfully in tracking down an example that achieves this, so I gave this a try myself with the nRF5 SDK v15.2.0 and the SoftDevice S140 v6.1.0 emulated on the nRF52840 DK, modifying the BLE UART example, but I was unfortunately only able to get it to ~29 kB RAM usage - so it is still too large for the nRF52811.

    You might be able to shave off a few kB off the RAM usage if you scrutinize it line by line, but I think it is unlikely that you may get it to 24 kB total with the functionality intact, unfortunately.

    Best regards,
    Karl

Children
No Data
Related