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

Bare metal application for nRF53

Hi,

could some one inform me how to create a bare metal project for nRF5340 (Network Core/Application Code)?
The specification gives everything to create an own stack on the chip.

It was simple to create a bare meal App for nRF52, but for nRF53 there is any driver lib given.

The examples given in a Tutorials (nRF Connect SDK Tutorial - Part 0-1-2 | NCS v1.4.0) are extremely restricted.

There is no sufficient tutorial with the description how to create a project from scratch with or without OS (Zephyr). Better without OS...

Simple Projects created directly in SES are not working at all.

Best regards

D.Krush

  • Hi, 

    First I think there is no option to go "bare-metal" or without RTOS. nRF53 supports only zephyr based projects from Nordic as far as I know. 
    I would suggest moving to NCS1.5.0 and going through samples in NCS and zephyr and try them out on nRF53.
    Also instead of using SES, I would recommend going with the CLI interface and using the zephyr tool west for building and flashing since it is more convenient with this dual code chip.

    Best of luck!

    Vojislav.

  • Hi,

    We don't recommend creating your own stack. It will be a lot of work for one person to do everything from scratch (specially if you are going to use Bluetooth and want the network core and application core to communicate with each other...) and that's why we have created the nRF Connect SDK to support the nRF53 chip.

    I understand that using the Zephyr layers can seem a bit abstract. One solution is to use the nrfx APIs instead, which are closer to bare-metal. Here is an example which demonstrate how to use the nrfx-api here. That would be the closest you can get to what you are aiming for I think.

    If you want to write to the registers in the nRF53 directly you can take a look at this project by a github user here. It's written for nRF52 but you can use the nRF53 PS to check for the registers' name for nRF53 and perhaps collaborate on that project.

    Anyways, there are many arguments for and against using the Zephyr API vs the nrfx-API, some of them are highlighted in this devzone answer from one of my colleagues.

    Best regards,

    Marjeris

  • Is the recommendation against using SES for the nrf53 still true?  

    And is there any plan to resolve this?

  • Hi Marjeris,
     We are goind to use the Radio without a Stack (I mean Bluetooth or other stacks). The Idea is to use the nRF53 as a the IO-Link Wireless Master. I have already written the Master Stack for nRF52 (Using provided API with IAR as IDE), the main reason to migrate to nRF53 is much better sensitivity.
    Actually the main problem, is that it is not possible to create a new working project in SES. (or other IDE)

  • There are some initial work from this library https://github.com/IOsonata/IOsonata

    It is still a work in progress but can get all the startup code and linker script for GCC with full C++ support.  UART, SPI, I2C drivers are implemented on both Application and Network core.  Only default secure for the now.  Eclipse native project that can be open directly in Eclipse.

       

Related