Overview - nRF Connect for VS Code
Skip to content

Devicetree context overview

The Overview in the Devicetree Visual Editor lists the devicetree context for the build configuration that you have selected in the Applications View.

Devicetree overview

The devicetree context with its different areas provides a summary of the configuration included in the board and overlay files and an overview of what the common resources are and which components use them. Each context area is linked with a specific node or property in the devicetree. Clicking one of these will go to the primary definition of the linked node or property.

Each context corresponds to a single compiled devicetree file that goes into a build. See the Devicetree and Kconfig support guide page for more information.

Context Context

This field mentions the context file, which is the devicetree file with the highest priority for the build configuration, usually an .overlay file. The contents of the context file will always take precedence over contents of other devicetree file within the given build configuration.

For information about how to add a context file, see How to create devicetree files.

Board Board

This is a list of information related to your connected board. It includes the name, architecture, supported features, and supported toolchains.

GPIO GPIO

This is a list of all known GPIO controllers, which are determined by the gpio-controller property. Each GPIO controller presents a list of the allocated pins and their owners, taken from gpios properties, -pins properties, and pinctrl properties.

The pin icon to the left of each GPIO pin indicates whether a pin is connected. A filled-in icon indicates a connected pin, and an empty icon indicates an unconnected pin.

GPIO pin icons

Flash Flash

This is a list of all flash controllers, or nodes, based on the soc-nv-flash type binding. If the flash controllers contain a fixed-partitions node, each partition is listed with their size and address. Any unallocated space in the flash area is also listed.

Interrupts Interrupts

This is a list of all interrupt controllers determined by the interrupt-controller property. It lists the allocated interrupts on the controller and their users, as well as any other available information, such as their priority and index.

Buses Buses

This is a list of all known buses on the device determined by the bus entry in the node's type binding. It lists important properties of the bus, such as clock speed and flow control, as well each node on the bus and their address if the bus has an address space. If the bus is an SPI bus, the chip select configuration of each node is also listed if it is known.

ADCs ADCs

This is a list of all ADC controllers on the device, or nodes, based on the adc-controller type binding. Each ADC controller contains a list of all allocated channels based on references made to the ADC instances using the io-channels property.

Overview interaction options

Clicking any of the context areas opens the context devicetree file at the related code location in the Editor. Here, you can take several actions.

Compiled output preview

Click the Open Compiled Output button to view the compiled devicetree output file. A new screen opens with the compiled output in one file. Click on any context item in the View and the compiled output will jump to that section in the code.

Open Compiled Output

Tip

Pressing Alt when clicking opens the compiled output side by side with the devicetree file.

Access to the Devicetree Visual Editor

You can access the Visual Editor using the Show Visual Editor button, highlighted in the following image.

Show Visual Editor in the file Tab actions menu

Tip

You can use the workbench.editorAssociations parameter in the Visual Studio Code Settings to set the Devicetree Visual Editor to show by default instead of the Text Editor when you open .dts or .overlay files. You can do this for example in the following way:

"workbench.editorAssociations": {
    "*.overlay": "devicetree.editor",
    "*.dts": "devicetree.editor"
   },

Definition source file info

Selecting a line from the compiled devicetree output file lets you see the source of that definition at the end of that line.

Compiled devicetree output file

Option to Copy C Identifier of Node

You can copy references to a node or property from a devicetree file and paste them into your C code directly using the Copy C Identifier of Node option, which is available in the More actions... menu for the entries in the Overview. See How to copy C identifiers for more information.