Course Overview

Welcome!

Welcome to ECE 445! If you've looked at the course Calendar, you've probably already noticed that this class is quite different from most other classes in the department. The class only meets as a whole for the first few weeks of the semester. During these lectures you will meet the Course Staff, learn about specific assignments, requirements, and resources for the course, and have a chance to meet other students to share ideas and form teams. These are some of the most important weeks for the class since the decisions you make during this time will determine what you'll get out of this class and, in many ways, how much you'll enjoy it.

Outside of lecture, you are expected to be working on your own to develop ideas and form teams. You are also expected to actively participate on the web board to exchange ideas, receive feedback from course staff, and eventually get your project idea approved. Once your team has a project approved, you will be assigned a TA, with whom you will have weekly meetings. Think of your TA as a project manager. Keep in mind that they are not there to do the work for you. Rather, they are there to keep you on track, point you towards resources (both within and outside of the department), and evaluate the result of your efforts.

Expectations and Requirements

We have high expectations for students participating in ECE 445. You are soon to be alumni of one of the top ECE departments of the world. Our alumni hold themselves to high technical and professional standards of conduct.

In general, projects are expected to solve an interesting problem within the constraints of the course. You will discuss the motivation for your project and its societal impact. What are the potential benefits and possible negative consequences of your project? What engineering standards are applicable?

Your projects are expected to be safe and ethical, and to satisfy applicable ethical codes developed by professional societies such as IEEE or ACM. Previous projects have covered a wide range of topics in areas of personal convenience, entertainment, medical research and treatment, personal transportation, music, robotics, and industrial processes, to name a few.

Projects are expected to have a level of design complexity commensurate with the rigor of the ECE Illinois curriculum. Requirements for specific assignments due throughout the semester can be found by looking through the Grading Scheme for the course. Please read through this documentation well before each assignment is due. Specific due dates can be found on the course Calendar.

Below are a few words of wisdom to keep in mind throughout the semester to increase your enjoyment and success in the course:

Voice-Activated Geographic Reference Globe

Mahathi Jayaraman, Varsha Mullangi, Rijul Roy

Voice-Activated Geographic Reference Globe

Featured Project

Team Members:

Mahathi Jayaraman (mj45)

Rijul Roy (rijulr2)

Varsha Mullangi (varsham3)

Problem

Many kids these days, especially American kids, don’t know their geography that well. In addition, many kids are spending a lot of time on screens and online, which is taking them out of the real world. We want to create a solution where kids can learn geography in a manner that does not need them to be connected to the internet or on a screen. This solution should be able to be used in classrooms for kids to learn from, as well as be able to rotate to accommodate the shorter height of kids.

Solution

Our proposed solution is to build a globe that is screen-free and interactive. Rather than manually rotating a globe and having to search for where a certain country is, kids can now simply push a button to activate a microphone and say a country name out loud. The globe will rotate automatically to a designated front marker of the globe and light up the specified countries with LEDs. This will help kids feel more engaged with learning.

Solution Components

Subsystem 1: Speech Recognition with a Push to Talk Mechanism

This subsystem will implement the speech recognition mechanism of the globe. A simple push button and microphone will be used, connected to the GPIO pins of the ESP32-S3 MCU. While the button is pressed, the microphone will collect audio from the user, capturing the specified country the user wants to find. The MCU uses this audio to run an offline, on-device speech recognition software (ESP-SR) to determine which country the user wants to find, which will be used to handle the motor control logic and LEDs.

Components:

ESP32-S3 MCU and ESP-SR Package

I2S Digital Microphone (INMP441)

Subsystem 2: Software-Driven Motor Control

This subsystem controls how the globe physically rotates to face the input country. A low speed DC gear motor will be driven by the ESP32-S3 through a motor driver, allowing the MCU to control both the direction and speed of rotation on the axis. A separate motor will be used to tilt the globe up and down, with the globe sitting in a ring with a ball bearing track. Based on the target country’s stored position and the current angle of the globe, the software will calculate the direction of rotation and the number of turns needed for the globe to rotate to align the country with the front marker. Feedback from a magnetic angle sensor will be used to track the globe’s position and stop rotation at the correct point. This makes the rotation more reliable and prevents the globe from rotating too far past the target.

Components:

22 RPM 24 Volt DC Globe Inline Gearmotor [500635]

Subsystem 3: LED Outline/Markers

This subsystem is responsible for the physical identification of countries using LEDs. We will use a LED grid placed behind the globe, ensuring that that LEDS line the borders and corners of countries. If its a smaller country, making it harder to border, we will use the center point of the country, lighting up only one LED to indicate the location of that country. Since we will be using addressable LEDs, we will be able to assign LEDS to countries, so that when a country is chosen, the logic can quickly determine which LEDS to turn on. We will also use one LED near the button that captures audio, helping the user know when audio is being recorded.

Components:

LED strips (WS2812B)

Subsystem 4: Front Marker Reference

This subsystem is responsible for rotating the globe to face a designed front marker. This marker will be a point on a ring around the globe. This will designate where the user of this globe will be positioned, so that when the globe rotates to allow the country to face this marker, the country will also be facing the user. The globe will also rotate on multiple axes to face this, which can help accommodate the shorter height of kids by making the globe rotate down to make areas near the north pole (such as Iceland or the North Pole) visible to kids who may not be tall enough to see the top of the globe. Every time a country is detected through the microphone, that country will automatically rotate to this marker. The slip ring will be used to ensure that the internal components do not get caught in each other as the globe rotates, and the limit switches will make sure the globe does not rotate too much in any direction.

Components:

ESP32-S3 MCU (controller)

Adafruit AS5600 Magnetic Angle Sensor - rotation position sensor

Slip Ring (because it is a rotating system)

Optional Limit Switches to prevent overrotation

The Motor System (subsystem 2)

Criteria for Success:

The system can use the microphone to accurately identify spoken words, and check if the word is in the database of country names.

When a country name is spoken, the system can light up the country on the globe.

When a country name is spoken, the globe can rotate to display the lit country in front of the user.

When the word “reset” is provided as an input, the globe moves back to its default position and all LEDs are turned off.

The globe will correctly detect the spoken country name and rotate automatically so the specified country is facing the front marker

Project Videos