Software Installation and Tutorials
BME554L (Spring 2026)
Git (Version Control)
Please follow the instructions on this dedicated git page to:
Install
gitConfigure
gitSetup an SSH key
Provide links to
gittutorials to remind you how to usegitversion 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 withgitoperations / visualization)C/C++(not the extension pack, since it includeCMake Toolsthat has some incompatibilities with the Zephyr build tools)CmakeState diagram software (see below)
GitHub CoPilot Chat AI coding assistant (optional, but highly recommended)
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
Sign up for an account on the Nordic Semiconductor DevAcademy
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:
Installing the nRF Connect for VS Code extension pack.
Installing all of the associated
nRF Connecttools for your laptop, including thenRF Connect SDKand associatedtoolchain.
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/blinkyto yournRF52833DK.
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.
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.
Make sure that your USB cable supports data transfer and is not just a charging cable.
We will not have USB cables and adapters available in the lab.
- Order a MCP9808 High Accuracy I2C Temperature Sensor Breakout Board. (Link is to Adafruit, but you can get it from other vendors as well.)
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.