Arduino Software Migration
Rewriting lab content and software to migrate from TI Launchpads to Arduino
The core of EECS 16B is its lab component, in which students build a voice controlled robot car controlled via a microcontroller. While being one of the significant points of frustration with the class, students commonly consider completing the project to be the most central and satisfying component of the class.

Previously, the class’s microcontroller of choice was the TI Launchpad. To be honest, I’m not entirely sure why we used it – probably didn’t have anything to do with the couple million dollars TI donated to the school every year.
Launchpads lacked documentation and were a buggy mess – while we could generally hide many of these issues from students, they were a huge pain for staff to develop labs with. More notably, Launchpads fried at an incredibly common rate, making for an incredibly frustrating debugging experience when discovering that the root cause was poor hardware.

Over Summer 2022, TI contacted us stating that due to supply chain issues, they would be unable to provide us with TI launchpads for the upcoming Fall semester, I saw the perfect opportunity to finally migrate the course to Arduino – better documentation, better reliability, and could actually be potentially used outside of class.
Together with my co-head Lab TA Shrey Aeron, we fully rewrote lab content and software to function with Arduinos. We submitted a proposal to the department regarding the design, development, QA/testing, and release to students for the upcoming semester.
We successfully rolled out the project over the Fall semester. This was so successful that future semesters of EECS 16B will continue to use Arduino as opposed to Launchpads – the Arduinos provided a much better student experience and even lowered costs due to a much lowered frequency of fried boards. The improved hardware additionally allowed us to make several other lab content changes and quality of life improvements to the overall lab experience.
As of Spring 2024, course labs are still being taught in Arduino.