Software Installation and Tutorials

BME554L (Spring 2026)

Published

January 5, 2026

Git (Version Control)

Please follow the instructions on this dedicated git page to:

  • Install git

  • Configure git

  • Setup an SSH key

  • Provide links to git tutorials to remind you how to use git version control

Visual Studio Code (IDE)

We will be using Visual Studio Code as the IDE for all projects in this class. In addition to installing the base program, please install the following Extensions:

  • nRF Connect for VS Code (Extension Pack)

  • GitLens (help with git operations / visualization)

  • C/C++ (not the extension pack, since it include CMake Tools that has some incompatibilities with the Zephyr build tools)

  • Cmake

  • State diagram software (see below)

  • GitHub CoPilot Chat AI coding assistant (optional, but highly recommended)

Tip

You can get “Pro” status for GitHub CoPilot by signing up for a free GitHub Education Student account. You will need a document to verify your student status that includes your dates of enrollment, which your DukeCard does not contain. Instead, you can get an Enrollment Verification document through DukeHub (Academics Tab) and convert the downloaded PDF to a JPG or PNG file to upload to GitHub.

State Diagram Software

We will be generating state diagrams all semester, which can be done with a variety of different software packages, described here. Please be sure to have one of the described software packages ready for you to prepare state diagrams this semester.

Zephyr SDK / nRF Connect / Nordic Dev Academy

This will run you through the process of:

  • Installing the nRF Connect for VS Code extension pack.

  • Installing all of the associated nRF Connect tools for your laptop, including the nRF Connect SDK and associated toolchain.

Tip

Be sure to use the nRF Connect SDK v3.2.1 for this class. The starter code provided throughout the semester will be based on this version of the SDK.

  • Once you have the hardware you need to order described below, flash the zephyr/samples/basic/blinky to your nRF52833DK.
Tip

Make sure you can successfully do this, as it will test your USB cable connection, USB serial port device permissions and your build/flash environment.

Important

You will be doing all of the lessons in this Nordic Dev Academy fundamentals course and earning the online certification by the end of the semester will count towards your final grade.

Hardware to Buy

  • Order a nRF52833DK.

  • If you want to 3D print an enclosure for your nRF52833DK, you can find a design here: 3D Printable Enclosure for nRF52833 DK.

  • Make sure you have the appropriate USB cable to flash the device from your laptop. This may require an adaptor for some laptops.

Important

Make sure that your USB cable supports data transfer and is not just a charging cable.

Warning

We will not have USB cables and adapters available in the lab.

Technical Reports: Jupyter Notebooks

Lab exercises will require data analysis to be performed in Jupyter notebooks. Please review the Technical Report Preparation page to make sure that you have all of the necessary tools to edit Jupyter notebooks and access to the necessary Python packages.

What to Submit

Complete the online Gradescope “quiz” indicating completion of each of the main tasks above.