Behind the Lectern: Embedded projects with Dr. Graves

How can educators help students not just memorize a lesson, but truly learn it?

I think a few factors help – I’ve given my students projects that are challenging, hands-on and include topics relevant to them, such as the Internet of Things (IoT). If students are challenged and put their own work into a project, they come out feeling more confident in the subject. My students are also required to give a presentation on their topic – if they can explain a concept to someone else, then they know it well themselves.

What is an example of a hands-on project that has been successful with your students?

In the embedded systems course I taught at North Carolina State as a visiting professor, I tasked students with creating an internet-based pedometer using TI’s MSP432™ microcontroller (MCU) LaunchPad development kit and an Educational BoosterPack MKII.

For the project students had to:

  • Use C programming
  • Incorporate some type of optimization (speed, memory, power)
  • Use TI-RTOS (Real-Time Operating System) components such as Software and Hardware Interrupts (SWI & HWI)
  • Include documentation  (block diagrams, well organized code, unified modeling language for the software)
  • Present their project via a video recording

The project took half a semester to complete; however this kind of project could easily be implemented in different types of classes at different levels. I also utilized a “flipped classroom” style for the RTOS portion of the course. Rather than lecturing, I asked the students to look at videos outside of class so that class time could be used on for the hands-on portion of the project. 

How are projects like this preparing students to go into the industry?

Engineers take requirements given to them by a customer and turn their idea into a design plan and then a prototype that is developed and tested. In the same way, my students had to develop their own prototype that fit within the requirements.

In addition, students were exposed to the most up-to-date development tools (like Code Composer Studio (CCS) Integrated Development Environment (IDE) for the MSP432) and for the most part they had to find information on their own for the TI-RTOS and MSP432. As an embedded systems engineer in the industry, there is a lot that you have to teach yourself. It is extremely useful to know how to go through the documentation for a particular chip and interpret what is needed to program it as you want.

Is there anything you will change next time you teach this course?

Next time, I may convert the design library code into the register code. I like putting IoT into terms students understand, so I may do more with personal fitness trackers or may even look into video games.

Have a question for Corey? Ask in the comments below.

Get the same resources used by Corey’s class:

  • Dr. Graves,

    Congratulation for your iniciative

    I feel like classes like this prepare the students to the real life.

    A suggestion is to create a database with the past projects, so next students can have a better idea of what have was done, and where to start.