Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Tutorial

Date + Presenter

Topics

Purpose

Homework

Links

Firmware 101:

Welcome to Midnight Sun Firmware!

Saturday May

15th, 2021Ryan

7th

(1:45-4:45pm)

  • Introduction to Firmware

  • Systems Overview

  • How we are working remotely?

High-level and general introduction for new and interested members.

Firmware 102:

Firmware 101 Continued!

Embedded programs and libraries

Saturday May

22nd, 2021

Mitchell

  • Project Overview

  • Controller Boards

  • Project Structure: Writing code, data structures, etc.

  • Testing and Validation

  • Collaboration: GitHub

14th

(1:45-4:45pm)

  • Datasheets

  • GPIO

  • Interrupts

  • ADCs

To familiarize new members with the tools

we use as well as the GPIO and Software required for development.
  • Follow the “Software 101” Tutorial [LINK]

  • (Optional) In preparation for next tutorial or for your own interest, you can watch the following videos:

    • GPIO

    • Interrupts

    • ADCs

and libraries we use

Make sure to watch Part 1 and Part 2

Firmware 103:

Introduction to

Hardware Libraries

FreeRTOS

Saturday May

29th, 2021

Avery

  • Datasheets

  • GPIO

  • Interrupts

  • ADCs

    21th

    (1:45-4:45pm)

    • Tasks

    • Queues

    To familiarize members with the integration between Firmware and Software, required hardware libraries, and embedded ports basics.

  • Datasheets & Hardware Schematics Worksheet

  • Tutorial Project 1: Buttons and ADCs

  • (Optional) In preparation for next tutorial or for your own interest, you can watch the following videos:

    • CAN

  • Firmware 104:

    Inter-board Communication

    Saturday June 5th, 2021

    Mitchell

    • CAN

    • Code Generation

    • I2C & SPI

    Understanding communication protocols.

    • Tutorial Project 2: CAN

    • Read written tutorial for Code Generation

    • Validation Task Assignments

    Firmware 105:

    Architecture

    Saturday June 12th, 2021

    Ryan

    • FSMs

    • Event Queues

    • Architecture

    Understanding the architecture of a firmware project.

    (Optional) Review tutorial videos.

    Additional tutorials on particular projects

    These are open to all firmware members, not just new members!

    Tutorial

    Date

    Presenter

    Links

    MU: our firmware system eMUlator + integration test platform

    Saturday May 29th, 2021, 3:00pm

    Mitchell

    Design doc: https://uwmidsun.atlassian.net/wiki/spaces/ELEC/pages/1285554309/Multi%2BProject%2Bx86%2BEmulation%2BMPXE?atlOrigin=eyJpIjoiYWVlOWE2MTNjOWQ1NGUzYzhjMThiNjJlZTQ2NTBiZjAiLCJwIjoiYyJ9

    (Note: original name was MPXE)

    Bootloader: flashing code remotely over CAN

    Saturday June 5th, 2021, 3:00pm

    Ryan

    https://uwmidsun.atlassian.net/l/c/bBb1ZJNH

    Telemetry: getting data off the car and into the cloud

    Saturday June 12th, 2021, 3:00pm

    Avery

    https://uwmidsun.atlassian.net/l/c/XU9rk3fJ

    Babydriver: validating hardware from Python

    Saturday July 17th, 2021, 2:00pm

    Ryan

    https://uwmidsun.atlassian.net/l/c/SLM1VM12

    Concurrency, peripherals, and Project Design

    Saturday May 28th

    (1:45-4:45pm)

    • Concurrency Features

    • SPI and I2C

    • Project design concepts

    More advanced FreeRTOS concepts, and how they apply to our projects