All Posts

L5: Coursework Feedback

In this lab, you will resolve a series of pull requests in your coursework repository.

Read more ...


A1: reTerminal Control Center

In this assignment, you will make a prototype of the applications you deploy on your reTerminal for your project.

Read more ...


Using devices

todo

Read more ...


A2: Azure IoT Hub

Read more ...


Milestone 5: Final Presentation

In this milestone, you will give an in-person demonstration of the functionality of your entire project. This milestone will also be an assessment of the quality of the code and documentation of your project.

Read more ...


Milestone 4: IoT Integration

In this milestone, you will build on the initial prototype by connecting your devices and your apps to an IoT Central Hub hosted on Azure.

Read more ...


Milestone 3: Prototype

In this milestone, you will adapt your course assignment work to create a collective prototype of your reterminal devices and your Typescript application.

Read more ...


Milestone 2: Infrastructure

In this milestone, you will set up your github monorepo with appropriate CI/CD and documentation infrastructure.

Read more ...


Milestone 1: Setup

In the first milestone of the project, your team will assemble, and set up the initial project infrastructure for tracking and delegating work.

Read more ...


GPIOs: Inputs and Outputs

Note: most of these notes were adapted directly from the Raspberry Pi docs: GPIO-Pinout [1]

Read more ...


Electronics Basics

This course is at the boundary of code and physical objects. While we access the GPIOs of our reTerminals using filesystems and code, ultimately the digital signals are being delivered with electricity along conductive physical components.

Read more ...


L4: External GPIO devices using the Grove Base Hat

These instructions are now up to date (as of Feb 23).

Read more ...


Signals: Digital and Analog

Modern computer science depends on electricity to physicially store and transfer information. In this program, you have learned about the binary representation of information, which depends upon the electrical transistor to store the “values” 0 and 1.

Read more ...


reTerminal built-in devices

This section is based on the official documentation for the reTerminal: Hardware and Interfaces Usage

Read more ...


Python scripting

This section explores intermediate Python topics to improve our technique at specific linux/IoT scripting tasks.

Read more ...


Python package management

This lecture looks at the ways to acquire use and install external python packages.

Read more ...


L3: Programming the ReTerminal

The reTerminal comes with a variety of built-in devices (the touchscreen, LEDs, a buzzer, and more). In this lab we are going to practise interfacing with those devices using bash and python.

Read more ...


ReTerminal Kit

In this course, you are provided with a reTerminal kit containing hardware for experimenting with electrical devices on a portable Linux system.

Read more ...


L2: Reterminal setup

This lab documents the general steps needed to perform an initial set up, or reset, of the reTerminal device that we will be using throughout the class.

Read more ...


Linux basics

These notes are adapted from https://learn.microsoft.com/en-us/windows/wsl/about and https://learn.microsoft.com/en-us/virtualization/windowscontainers/about/containers-vs-vm

Read more ...


L1 Part 2: Bash Better

For each deliverable, click the hyperlink to navigate to the complete instruction set.

Read more ...


Bash scripting

These notes will cover the basic programming concepts you need to know to get the most out of writing scripts in Bash.

Read more ...


L1: Developer Environment Setup

Set up and use lab software

Read more ...


GitHub basics

These notes cover the basics for using GitHub in this class.

Read more ...


Developer environment setup

This lecture covers setting up a developer environment such that, no matter what hardware you have available at home, you are comfortable completing coding assignments for this class on your personal computer and on classroom computers.

Read more ...


Bash essentials

First things first: the terminal can feel awkward to use. What can we do about this?

Read more ...