Course Guides


  1. Basic electricity
  2. Binary and hexadecimal number representations
  3. Unix command line


  1. Powering the Pi
  2. Working with SD cards
  3. Installing the development tools on a Mac
  4. Installing a Ubuntu virtual machine on Windows
  5. Using the console cable and bootloader
  6. Installing a reset button
  7. Setting up the course directory structure


  1. binutils
  2. Bare metal programming using gcc
  3. Using Make for ARM cross-development
  4. Using gdb in simulation mode
  5. Automated checker


  1. UART-WiFi-Bridge to wirelessly connect two Raspberry Pis (requires two ESP32 Arduino devices)
  2. WiFi web page
  3. SD Card Library for reading and writing files