Software Installation and Tutorials

BME554L (Fall 2025)

Published

August 25, 2025

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
  • Microsoft IntelliCode (assistance with C syntax)
  • State diagram software (see below)
  • GitHub CoPilot 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

Please complete the following tutorial to get your environment setup for using the Nordic nRF Connect SDK: Lesson 1 - nRF Connect SDK Introduction This will run you through the process of:

  • Signing up for an account on the Nordic Semiconductor DevAcademy
  • 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.
    • Be sure to use the nRF Connect SDK v2.9.0 for this class. v3.x may work, but may not.
  • 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.

Nordic Hardware to Buy

  • Order a nRF52833DK.
  • 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.