Welcome to the nRF Connect for Visual Studio Code (VS Code). The nRF Connect extension lets you develop, build, and debug applications based on the nRF Connect SDK using the VS Code Integrated Development Environment (IDE). In this article, we introduce the nRF Connect for VS Code and its features, and show you how to get started with it.
nRF Connect for VS Code Interface
VS Code is a fast, cross-platform, and popular IDE. Nordic Semiconductor’s nRF Connect extension turns VS Code into a complete IDE for developing applications for nRF91, nRF53 and nRF52 Series devices on Windows, MacOS or Linux. This includes an interface to the compiler and linker, an RTOS-aware debugger, a seamless interface to the nRF Connect SDK, and a serial terminal.
The provided support for VS Code comes as a bundle(pack) of extensions. The bundle consists of:
Please note that more extensions might be added to the bundle over time.
The bundle helps with setting up new nRF-based applications based on a set of examples from the nRF Connect SDK and Zephyr. You can then configure them using the guiconfig feature available from the Zephyr Project. You can also define your own boards within the Zephyr rule set. The DeviceTree viewer displays the configured hardware and helps you navigate the DeviceTree source.
This bundle is based entirely on Zephyr tools, so you can continue your project from the command line at any point. You can also split the development between people with different OS preferences using your company’s internal revision control system. Even more features are still in development. With additional extensions from Microsoft for C/C++, or others for Git, you can spend your complete development life inside this environment.
We’ve made a series of videos you can access through links within the extension itself showing how to use the extension. These are under continuous development and will change as more features are added to the extension. You can view all videos from this playlist:
As explained in the first video, to install the bundle(extension pack), open the Extensions menu from the VS Code toolbar and type Nordic, select nRF Connect Extension Pack and click on Install as shown in the illustration below:
Open the extension by clicking the icon in the red square shown in the figure below and set up the basic configuration (green). You’re now ready to build an application. Open the walk-through (yellow) for the built-in training and links to the walk-through videos.
The nRF Connect for VS Code extension is undergoing continuous updates. Written documentation is available in the readme file published as part of the extension bundle. You can find it by clicking nRF Connect (as shown in the screen shot below) in the Extensions menu in the VS Code toolbar. During testing, please check the Known Issues chapter if you encounter issues.
Stay tuned as more features and video tutorials are under development and will be available to you soon. If you have any issues related to this bundle, contact us on DevZone.
Very nice to see this development, looking forward to try
This is an awesome tool. Read the full walkthrough tutorial and first impressions here.
This is what I'm looking for. Tested on windows 10 and worked nicely.In MacOS I can create new project and build correctly but it can't detect nrf52832 development board.How to make it work?
Hmm. Do you even see the extension recognizing the nRF52832 DK under the CONNECTED DEVICES tab or not at all?Plugin the board, then there is a refresh button (a circular one) under the CONNECTED DEVICES tab. Hit that and see if it helps. Sometimes it takes a few seconds to get it up and running. Also, make sure to verify the correct HW settings on your dev kit. Note as this is still in development, so some things might be still glitchy.
I did it. Can't recognise the board anywayJ-Link is shown at MacOS USB Device Tree.I can connect to board using J-Link tools and with nRF Connect v3.7.1.
macOS High Sierra v.10.13.6Visual Studio CodeVersion: 1.60.0Commit: e7d7e9a9348e6a8cc8c03f877d39cb72e5dfb1ffDate: 2021-09-01T10:54:53.442ZElectron: 13.1.8Chrome: 91.0.4472.164Node.js: 14.16.0V8: 9.1.269.39-electron.0OS: Darwin x64 17.7.0
Is nrfjprog installed? This is part of nRF Command Line Tools.
Hi Ali Aljaani,In case you missed it, I have done some early version testing and a walkthrough tutorial here.Would love to test and get early access to the next version of the nRF Connect for VSCode, if possible, and possibly write and blog Part 2 of this tutorial.Thanks
Great work! Looking forward for your feedback on the next version of nRF Connect for VS Code when it is ready.
Perfect. Looking forward to it. It's a huge leap for development with Zephyr + nRF devices.