Skip to main content

UW ECE students in the Professional Master’s Program learn how to pack powerful technology into tiny electronic devices

November 8, 2023

Article by Wayne Gillam, photos and video by Ryan Hoover | UW ECE News

A close-up view of a microcontroller from the Arduino Tiny Machine Learning Kit

UW ECE Professional Master’s Program students in the TinyML course are learning how to take cloud-based, machine learning networks and squeeze them into small, resource-constrained devices, such as a microcontroller. Shown above: A microcontroller from the Arduino Tiny Machine Learning Kit, which is used in the course.

Our days are filled with electronic devices that we depend on to perform tasks and stay connected with one another. Whether it’s the computers we use at work, our smartphones, or personal assistants such as Siri or Alexa, these gadgets have become indispensable to modern life. A wide range of “smart home” devices considered to be part of the Internet of Things (IoT), such as thermostats, lighting fixtures, and security systems, are also steadily making their way into people’s daily routines. And as billions of IoT devices are adopted worldwide, the demand for increased performance from low-power, small electronic devices is growing.

Now, UW ECE graduate students taking the TinyML course through the Professional Master’s Program are learning how to pack powerful technology into tiny electronic devices and help to meet this emerging demand. TinyML is a type of machine learning that allows sophisticated machine learning models often used in natural language processing, computer vision, and artificial intelligence to run on smaller, resource-constrained electronic devices, such as a microcontroller. This emerging field of study began to flourish in 2020, and it is considered to be an important technology enabler for ultra-low power machine learning in edge devices.

The TinyML course at UW ECE provides training in cutting-edge machine learning concepts and then asks students to apply those concepts to building small electronic devices in hands-on, team-based projects. The course got its start during the 2023 spring quarter, and it is among only a few such offerings at schools nationwide that bring machine learning, embedded systems and the IoT together at the lower end of device capabilities. The course also covers privacy and security for TinyML devices, emphasizing the importance of engineering with device vulnerabilities in mind.

Headshot of UW ECE Professor Radha Poovendran

The Tiny ML course is taught by UW ECE Professor Radha Poovendran, a former Department chair and an expert on the intersection of machine learning, cyber-physical systems, large-scale network systems and cybersecurity.

The course is taught by UW ECE Professor Radha Poovendran, a former UW ECE chair and an expert on the intersection of machine learning, cyber-physical systems, large-scale network systems and cybersecurity. Poovendran is also the UW lead for the National Science Foundation’s AI Institute for Agent-based Cyber Threat Intelligence and Operation, which is known as the ACTION Institute.

“This course helps students understand how to take cloud-based, machine learning networks and squeeze them into resource-constrained, tiny devices that are left unattended and often operate for long periods of time,” Poovendran said. “This is a hands-on course, and the students learn how to formulate and state a problem, use sensors to collect data, and convert the data into a format that the machine can start processing.”

In addition to being part of the PMP curriculum, the TinyML course is also offered through a PMP Certificate Program in Machine Learning and Deep Learning and the recently launched PMP Certificate Program in Applied Cybersecurity Engineering (ACE), which will welcome its first student cohort in winter quarter.

This video provides an overview of the ACE Certificate Program and the TinyML course (starting at 3:00):

Learn more about the TinyML course from two UW ECE PMP students who took the course during spring quarter 2023:

Adithya Gowda Baragur

Headshot of Adithya Gowda Baragur

Adithya Gowda Baragur is a full-time PMP student focusing on embedded systems and machine learning. Baragur said that the TinyML course helped him to improve his machine learning skills as well as his collaborative abilities working in diverse teams.

Adithya Gowda Baragur is a full-time PMP student who is focusing on embedded systems and machine learning. He has a strong background in software engineering, having previously worked with the research and development team at Hewlett Packard Enterprise, Aruba Networks. He was a graduate research assistant last summer in Poovendran’s Network Security Lab, and he recently started an internship with Nokia. Baragur said that he chose the PMP at UW ECE because of its industry orientation and flexibility with work schedules. He anticipates graduating with his master’s degree at the end of spring quarter 2024.

What interested you in the TinyML course?

I was interested in discovering how to apply machine learning to a small microcontroller — a very tiny device. This is a very niche topic, even in machine learning. In engineering, you want to optimize everything as much as possible. When you deploy machine learning to a tiny device, you must move to a higher level of optimization to do that. I wanted to learn what techniques were used to do this, so I could apply them elsewhere.

What was it like to learn from Professor Poovendran?

He is a fun and very approachable professor. He brings a lot of enthusiasm in his teaching and makes the whole class engaging. His presentations had a lot of animations and images and videos, which helped me to visualize the concepts. Also, each of his classes had a hands-on session, which helped in learning to practically implement these concepts.  And, he has a great sense of humor and tells funny jokes to help you focus in class. All these things combined brought a joy inside me to master this topic. That joy of learning is precisely what drove me to request an opportunity to join his lab and work with him during the summer.

What was it like to work on team-based projects?

I got to meet new people, and we shared our technical skills with each other. In the projects, we divided up the problem into parts that we could each solve. I learned a lot of things related to collaboration and team-building skills. I got to know these people well, and one of them, Nikhil Kashyap, is still a good friend of mine today.

Can you describe one of the projects you did?

Sure, one of the projects I and my group came up with was called “Song Bird: Automatic Identification of Bird Species using Bird Calls.” It’s like the Shazam app for your phone, where you have a button that records what song is playing in the background, and it tells you what song it is. Here, we applied the same idea, creating an app for your phone, but we did it for bird calls. When the user hears a bird call, they can record it through the app, and then the app identifies what the bird is. We had this huge data set, which was available for free through the internet and included people across the world who recorded all kinds of different bird calls. So, we thought: Why not use this data and build an application using TinyML? We targeted hikers and bird lovers as the intended users for the app. The advantages of this app being created through TinyML is that it requires much less memory space and battery power, and no internet connectivity from your phone, which is of utmost importance, especially for people in remote locations, such as hikers in the wilderness.

Overall, what did you learn in the course?

I gained the incredible ability to empower tiny devices with the intelligence to change the world – it’s the future of artificial intelligence at your fingertips! Furthermore, when I worked in Professor Poovendran’s lab, I was able to apply the techniques learned in this course to a research problem focused on the security of a Controller Area Network (CAN bus).

How will you use this knowledge going forward?

In my previous industry experience, I felt lacking in my collaborative abilities when working with diverse teams, and my machine learning skills had room for growth. This course helped me with upskilling in both of these areas. Overall, my journey in the PMP at UW ECE has been an upskilling adventure, where I’ve harnessed the machine learning and analytical skills needed to lead and conquer the ever-evolving industry with unwavering confidence!

Michelle Elizabeth Chuang

Headshot of Michelle Elizabeth Chuang

Michelle Elizabeth Chuang is a part-time PMP student whose interests include robotics, machine learning, data science and embedded systems. She and her TinyML course project team are in the process of turning their project prototype into the basis for a startup company.

Michelle Elizabeth Chuang received her bachelor’s degree from UW ECE in June 2021. She currently works full-time at Microsoft as an Azure Cloud and AI Consultant and is pursuing her master’s degree part-time through the PMP. She has developed a strong data engineering skill set, having specialized in numerous Microsoft products used to build end-to-end data pipelines. She also enjoys sharing about her work through hosting and speaking at sessions for large technical conferences. Chuang is passionate about using creativity and technology to invent new experiences for people. Her interests include robotics, machine learning, data science and embedded systems. Like Baragur, Chuang said that she chose the PMP at UW ECE because of its industry focus and scheduling flexibility. She anticipates graduating with her master’s degree at the end of spring quarter 2025.

What interested you in the TinyML course?

I’ve always been interested in robotics and the integration of hardware and software. I mentioned this to my mentor at my internship during my undergraduate career, and he recommended to me this TinyML book, which turned out to be the book Professor Poovendran used in class. So, I had the book even before the course started, but I got a little overwhelmed with the new concepts. When I saw that the TinyML course was being offered through the PMP, and that it was using the book I already had, I was like, “It’s a sign!” So, that is how I came to take the course, because of the influence of my mentor and my interest.

What was it like to learn from Professor Poovendran?

He was very funny, and he encouraged engagement. One of the things that stood out to me was his energy. He exuded so much passion and positivity throughout his lectures and everything. He told us to not think about this just as a course, but more as a space to learn, innovate and create. That mindset really influenced everyone in the class to worry less about grades and give themselves over to being creative. We were able to ask more genuine, important questions, such as “What problems in the world do I feel passionate about and want to solve?” It was a very liberating mindset that Professor Poovendran shared with the class.

What was it like to work on team-based projects?

I would consider myself to be a technical person with a strong soft-skills inclination. What always sticks out to me the most is working in the team — connecting with the people, learning about everyone’s different backgrounds, both technical and cultural. Each person on our team of four brought their own expertise to the table. Our team’s combined skill sets supported our product’s development very well as we had a nice balance of hardware, software, and machine learning experts. Two of our team members were international students, and we got to know more about each other’s cultures as we grew together as a team. It was cool to see that we could bring together people from different backgrounds and cultures and make an idea reality. People who are in electrical engineering and these types of technical programs tend to be very technical as people. So, having this outlet to learn about and experience close teamwork and communication was valuable.

Can you describe one of the projects you did?

Our project, “FacePace,” tries to solve the problem of inaccurately estimated wait times in theme parks. I grew up going to many theme parks in Southern California, such as Disneyland, Six Flags, and Universal Studios, so our project included a problem statement that came from the heart. Right now, there are some methods that depend heavily on human involvement to estimate wait times, which leaves room for human error and large, inconvenient inaccuracies for the public. To address this problem, we designed a TinyML prototype that runs machine learning algorithms on edge devices to provide a real-time wait time estimate for a queue. This solution aims to be much more efficient and accurate than most systems currently in use today.

We found that there was a lot of support for the project we developed. I talked about the idea with the Executive Vice President and Chief Information Officer at the Walt Disney Company, Diane Jurgens, who is a UW ECE alumna and someone I consider to be my mentor. I also brought the project into an entrepreneurship course I took over the summer from UW ECE Assistant Teaching Professor Sep Makhsous. There, I practiced my pitching and Professor Makhsous provided more guidance for me and my TinyML team, who I remained in touch with after the course was over. Today, my TinyML team and I are working on turning this project into a startup company. It’s very exciting!

Overall, what did you learn in the course?

Close-up view of an electronic device

The TinyML device shown here is composed of three different components. The Arduino Nano 33 BLE Sense Lite (small blue board) and OV7675 Camera Module (small green board) are plugged into the larger Tiny Machine Learning Shield. This device came with the Arduino Tiny Machine Learning Kit that students used for a majority of their coursework.

I wasn’t very well-versed in machine learning before I took this course. As an undergraduate, I was interested in robotics and electrical engineering, and I heard all the AI/ML buzzwords, but this was the first course where I was able to learn about and experience not only machine learning as a concept (how to program, train models, work with the data), but also to take that big concept and put it into hardware as tiny as this.

Finding out that we can put machine learning on tiny microcontrollers really showed me that there’s so many possibilities in terms of solutions that can be minimally invasive to currently existing technology infrastructure, buildings or wherever we might want to put a TinyML device. We wouldn’t have to make a huge hardware warehouse or anything for this microcontroller, and it is easily hidden in theme park environments. This sort of device can be integrated into the surroundings and environment, and that brings to light lots of potential.

How will you use this knowledge going forward?

A lot of things that are exciting in my life have stemmed from this course. We’ll see by 2025 if FacePace has turned into a product in the real world. It would be very exciting if it does, but there is still a lot of progress to be made. We have had a lot of guidance from professors Makhsous and Poovendran along the way, so I’m optimistic.

I came into the TinyML course with expectations of pretty much just learning about the technology, but I got a whole lot more than that. I’ve gotten a team together, we’ve made an actual project (FacePace), and now we’re taking it even further, aiming for the marketplace, which the entrepreneurship class has helped with.

Tying that into the PMP, people can really form their own journey based on their needs. Because there are no specific concentrations in the PMP, people can really pick and choose which classes they want to take. It is student created, based on your needs. Having the availability of the TinyML course and then the entrepreneurship course right after it was an amazing way to keep the momentum of our project going. So, I’m excited to see what the future holds!

More information about the TinyML course and the PMP at UW ECE is available on the UW ECE PMP webpage.