-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsoftware-install-tutorials.qmd
More file actions
127 lines (90 loc) · 4.36 KB
/
software-install-tutorials.qmd
File metadata and controls
127 lines (90 loc) · 4.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
title: Software Installation and Tutorials
subtitle: "BME554L (Spring 2026)"
date: 2026-01-05
format:
html: default
pdf: default
---
## Git (Version Control)
Please follow the instructions on this dedicated [git page](resources/git.qmd) 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](https://code.visualstudio.com/) 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](https://code.visualstudio.com/docs/copilot/overview) AI
coding assistant (optional, but highly recommended)
::: callout-tip
You can get "Pro" status for GitHub CoPilot by signing up for a free [GitHub
Education Student](https://github.com/education/students) 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](resources/state_diagram.qmd). 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](https://academy.nordicsemi.com/courses/nrf-connect-sdk-fundamentals/)
- Please complete the following tutorial to get your environment setup for using
the Nordic nRF Connect SDK: [Lesson 1 - nRF Connect SDK
Introduction](https://academy.nordicsemi.com/lessons/lesson-1-nrf-connect-sdk-introduction/)
This will run you through the process of:
- Installing the [nRF Connect for VS Code](https://nrfconnect.github.io/vscode-nrf-connect/index.html) extension
pack.
- Installing all of the associated `nRF Connect` tools for your laptop,
including the `nRF Connect SDK` and associated `toolchain`.
::: callout-tip
Be sure to use the `nRF Connect SDK v3.2.4` for this class. The code snippets
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`.
::: callout-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.
:::
::: callout-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](https://www.nordicsemi.com/Products/Development-hardware/nrf52833-dk).
- If you want to 3D print an enclosure for your nRF52833DK, you can find a design here:
[3D Printable Enclosure for nRF52833 DK](https://github.com/mlp6/nRF-DK-enclosure).
- Make sure you have the appropriate USB cable to flash the device from your
laptop. This may require an adaptor for some laptops.
::: callout-important
Make sure that your USB cable supports data transfer and is not just a charging
cable.
:::
::: callout-warning
We will not have USB cables and adapters available in the lab.
:::
- Order a [MCP9808 High Accuracy I2C Temperature Sensor Breakout
Board](https://www.adafruit.com/product/1782). (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](resources/technical_report.qmd)
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.