Name string definitions when creating board definitions

Hi, I have recently created a board definition for our nRF5340-based hardware using the "Create a new board" feature from the nRF Connect for VS Code plugin. I'm using SDK v2.9.0. I called the board "tbd" (to be defined) for the time being.

I noticed that using the nRF5340DK as board creates sub-sections with "application MCU" and "network MCU" in the build section of the VS Code plugin (see build_1). But in my case (build), both cores are just called "tbd", like the board name, without further information:

Where in my board definition do I have to configure these name strings?

Further, I noticed that in the board definition files, there are multiple name strings that were set to default values by the VS Code plugin. May I change the following string definitions as I like and is there some background where they are used?

  • board.yml: I have read somewhere that there would be a key called full_name. But it was not present when the plugin created the board definition files. May I just add this line with the full name of my board?
  • <myboard>_nrf5340_cpuapp.yml, <myboard>_nrf5340_cpuapp_ns.yml, <myboard>_nrf5340_cpunet.yml: May I change the name: strings as I like? Where are they used? Is there a special syntax required? If I remember correctly, the DK board definition from the SDK used "-" instead of whitespaces...
  • <myboard>_nrf5340_cpuapp.dts, <myboard>_nrf5340_cpuapp_ns.dts, <myboard>_nrf5340_cpunet.dts There is a model = "..." line that defines a text string. May I change this string, too? Why is it called "model" here and where is it used?

I have also created a file called Kconfig in my board definition folder which was NOT created by the VS Code plugin. It seems that I created it when I was playing around with the string definitions (trying to get the VS Code plugin to display the core names correctly), using the DK board definition as a reference. Is this file needed for a complete board definition? If so, why was it missing when I created the board template? Or should I remove it again?

if BOARD_TBD_NRF5340_CPUAPP || BOARD_TBD_NRF5340_CPUAPP_NS

config DOMAIN_CPUNET_BOARD
	string
	default "tbd/nrf5340/cpunet"
	help
	  The board which will be used for CPUNET domain when creating a multi
	  image application where one or more images should be located on
	  another board. For example hci_ipc on the nRF5340_cpunet for
	  Bluetooth applications.

endif #  BOARD_TBD_NRF5340_CPUAPP || BOARD_TBD_NRF5340_CPUAPP_NS

config DOMAIN_CPUAPP_BOARD
	string
	default "tbd/nrf5340/cpuapp"
	depends on BOARD_TBD_NRF5340_CPUNET
	help
	  The board which will be used for CPUAPP domain when creating a multi
	  image application where one or more images should be located on
	  another board.

Unfortunately none of the stings above changed the "tbd" display as shown in the nRF Connect for VS Code screenshot above. Where must I configure these strings?

Best regards,
MIchael

Parents
  • Hi Michael,

    The extension picks up the names from the nrf5340dk_nrf5340_cpuapp.yml and the nrf5340dk_nrf5340_cpnet.yml file in the nrf5340dk board directory. You can create equivalent yaml files for your board. The board wizard is good for quickly define a new board, but some manual configuration should still be expected for more complex boards and CPUs. 

    Best regards,

    Vidar

  • Wait a moment... must it be called .yml or .yaml?!

    I cross-checked it with the SDK folder: In the DK's board definition. it is .yaml but the code generated by the VS Code plugin is .yml! Could this be the reason why it is not evaluated? Strangely, my project still built without errors,

    Further, can you please give a "okay" that I can randomly set the name strings (include the model) mentioned above? And whether I need the Kconfig file with the domain definitions?

    Best regards,
    Michael

Reply
  • Wait a moment... must it be called .yml or .yaml?!

    I cross-checked it with the SDK folder: In the DK's board definition. it is .yaml but the code generated by the VS Code plugin is .yml! Could this be the reason why it is not evaluated? Strangely, my project still built without errors,

    Further, can you please give a "okay" that I can randomly set the name strings (include the model) mentioned above? And whether I need the Kconfig file with the domain definitions?

    Best regards,
    Michael

Children
No Data
Related