...
There is no application process and you don’t need to have any experience when you join (many of our members don’t). All it takes to be a member is interest in what we’re doing, attending meetings twice a week, and putting in effort into helping us build the best software we can. Welcome to the team!
Member Responsibilities
Gain exposure to firmware and various software skills such as:
writing firmware in C to run on microcontrollers or emulated microcontrollers
writing software in python and C to create tools for validating firmware
writing software in various languages for projects like our telemetry system or driver display
write tests for firmware and other software to validate your work
Attend twice weekly standups (mandatory)
Required Skills
Know the basics of programming
That’s pretty much it, you can learn as you go
Communication
| Firmware Lead: Jarvis Weng About: 3A CE. Been on the team since September 2019. Worked with in C++, Python, JS, Java, Bash Ask me about: C/C++, Python, Java, setting up your dev environment, anything you’re stuck on, or if you just want to chat Hobbies: Anime & Manga |
| Firmware Lead: Mitchell Ostler About: I’m in 2B CE, and I’ve gained experience in embedded development from several different companies in Ontario. Ask me about: General programming/embedded system questions, drivers, libraries, setting up dev environments, the meaning of life Fun Facts: Terribly self taught piano player, big fan of sci-fi and fiction novels |
New Members
Join our Slack for all team communications. Team Communication
Make sure you join the #elec-firmware and #general channels! That is where all our firmware conversations and updates happen
[Optional] Add our google calendar for all meeting times Midnight Sun Calendar
Follow @uwmidsun on instagram/LinkedIn!
Take a look at Intro to Solar Car Electrical Systems if you’re interested, to get an overview of the project we’re working on. Even though you’ll be working on firmware, it’s important to understand the context of the projects you work on. Intro to Solar Car Electrical Systems
Read about the competition we attend here: https://www.americansolarchallenge.org/. It’s in two parts, there’s a track race (laps) and a rally (distance/time).
...
Attend Firmware 101
Every term we hold an introductory training session to tell people what we’re all about. If you’re still not convinced what team you want to be a part of, this is a great place to start. Check Elec-firmware for updates on when this will be taking place, or take a look at previous notes (Firmware 101 Notes ) if you want to get ahead
Background learning
There are several tools/technologies we use to help us run a mean, clean software organization. These are:
Git
Shell Environments (Linux)
C programming
If you don’t have a lot of experience with these, luckily we have Midnight-Sun-specific Shell Environments, Git, and C Programming videos creates by the legendary Arshan Khanifar (a retired firmware lead). Tutorial Videos There is also the page: C Reference for Midnight Sun Firmware Team and lots of resources available online.
...
Get your environment set up with Module 1 of Software 101. Module 1: Setup
Attend Firmware 102-105 (held weekly):
Each session has a live component (training session), as well as supplementary notes and homework. They are all contained in Firmware 102 Notes . Feel free to read/work ahead if you’re feeling ambitious 🤩
...