Abstract: Our idea is to create an alarm clock with an LCD screen that will display the current time and date using the RTC as well as the current temperature outside. It will also include an additional button for a snooze button for delaying the current alarm set for 15 minutes (for testing and demonstration purposes we will use 15 seconds). The alarm times will be set in termite using UART. Ideally having the whole system fit into a small chassis like a traditional alarm clock with an external button on the top and the LCD display on the face of the device.
Abstract: The goal of this project is designing an automatic milk tea machine based on STM32 board, which can finish the milk tea production automatically with precise quantitively control. In this machine, motors with fine design can finish both mixture process and shaking process mentioned description above. This machine stores various recipes of milk tea and Thai tea inside. Users can simply fill the machine with raw materials and just wait for delicious milk tea. More than achieving the basic function, we also plan to add an LCD display and a Bluetooth module to the machine, which user can control the machine on mobile phone and monitor the production via LCD display. A support Android application is also developed for this purpose.
Abstract: The goal of this project is to recreate the board game battleship on the stm32 board. We got our insight from the GO game in the previous years’ projects for using 8x8 dot LED displays for the ‘board’ of the game and using Wii nunchuks to control the pieces.
Abstract: To build a one-on-one blackjack game that should be displayed on an LCD screen and controlled by terminal and joystick. Main features will include the game itself, betting, and a running balance. Joystick will be used to select play option such as bets, hitting, standing etc. LCD will display the current phase/state of the game. The HC-05 module will be used to interface with a terminal so numerical bets can be inputted.
Abstract: We want to make a Bluetooth light switch where an on/off signal will be sent through Bluetooth to trigger some motors to turn off a light switch. It will also have an infrared sensor so that when a person passes by, the light switch will turn on the light.
Abstract: Our goal is to implement a user interface for an audio visualization display. This interface will be controlled through a Nintendo Wii Nunchuck, used to adjust visual settings such as color and brightness on an 8x8 LED, which will display a sound waveform captured and transmitted from a microphone.
Abstract: Our project centers around building a desktop accessory. We are taking an all-in-one approach as our product will have the ability to be used as both a personal fan and an informative LCD Display. The fan is configured with a motor, allowing the user to control the direction of the rotating fan via commands from Termite. Along with the fan and motor, we will be using a temperature sensor, RTC, and an LCD Display to display useful information that the user might wish to be aware of.
Abstract: The fastest way to tire out a dog is through mental exercise, as dogs are not build for thinking. In an attempt to tire out Anshuman’s pug Hash, our project will challenge Hash’s pattern recognition. We intend to have 5 LED buttons, which will light up in various patterns. If Hash can press the buttons in the correct order, a motor attached to a box with treats will dispense some as a reward. An on board display will track his progress, including how many times he is successfully able to follow the pattern. The game can be enabled or disabled remotely through a Bluetooth module.
Abstract: The goal of this project is to replicate the board game, and mobile game, Node. It is a game that is played among two players. We plan to have a shareable Wii nunchuk to control all aspects of the game that will be displayed on an LCD screen.
Abstract: We would like to create an energy efficient lighting system that will only draw as much power as is absolutely needed. To do this, we will implement a light sensor, which will monitor the ambient light of the space and make adjustments in the LED brightness to maintain a standard level of overall brightness in the space. With the bluetooth module (HC05), we can communicate in between the STM microcontroller and the lamp itself. A secondary goal to further conserve energy is to implement motion or infrared based triggering, so the light only turns on once there is someone in the vicinity, and turns off once they leave.
Abstract: For our project, will be creating an F1 Simulator using an STM32L4x6 microcontroller, HCSR04 Ultrasonic Sensor, and an 8x8 LED matrix. The user will have 2 inputs: pressing the gas pedal and upshifting. We will display 15 LEDs in a line to have a rev counter and an 8x8 LED to show which gear you are in. As you push the pedal the LEDs will light up from left to right. Once the LEDs reach the end of the line you upshift, and the LED lights start over from the left. The 8x8 LED will also increment and show you what gear you are in. Once you release the gas the simulator will automatically downshift. To do this, we will place an ultrasonic sensor at the bottom of a pedal to distinguish how far you are pushing the pedal. We will also have a button that the user can use to upshift. The ultrasonic sensor will use I2C and the 8x8 LED matrix will use SPI.
Abstract: I plan to use an accelerometer and an LCD screen to recreate the tilting ball game shown below. You will be able to tilt the accelerometer to control a game "plane" that a ball rolls on. The goal is to navigate the ball to a target hole while avoiding "pits." The MVP consists of a simple tilting "plane" controlled by the accelerometer with a ball and the target drawn to the screen, additional features would be adding pits and sound effects with a piezo using PWM.
Abstract: For our project, we would like to implement a height monitoring device that can take measurements on different objects. The user will press the start button and begin moving the monitor upwards until it reaches the desired height. The accelerometer will be used to detect when the monitor stops moving and the distance between the device and the ground will be obtained from the ultrasonic sensor.
Abstract: We propose Kronocrumb, a contactless timer that uses gesture controls. We realized that many tasks require the use of both hands and it’s not realistic to expect that our phone’s timer is always accessible. A baker’s hands may be covered in flour and a chemist’s gloves may be contaminated with HCl, so our idea of a contactless timer is immediately applicable in a variety of industries.
Abstract: I will try implementing a game, or multiple games/features, using an 8x8 RGB LED matrix. The goal is to interact with an LED matrix using the STM32 Nucleo 64 development board through the use of serial interface protocols, peripherals, and interrupts. I want to implement this project using some sort of controller sending information to the Nucleo board which will affect how the interaction of the LED matrix. This will be done either with a Wii nunchuck controller or through the USB Host Shield which will allow the use of a PS4 controller. Object detection will be implemented to simulate a user who is nearby ready to use the project. A display will be provided to display the state/mode the project is in. LED matrix will be used to simulate arcade-like, or simple, games.
Abstract: The goal of our 153B project to create an app-controlled motor. With the app, the user should be able to virtually set different ’gears’ to the motor to control the max RPM. Also, the user should be able to control the speed/direction the motor moves via a virtual joystick programmed into the app. The purpose of this project is to create a wireless interface that can control motor output. Beyond the scope of the class, we believe that we could scale this project into any embedded system that needs wireless motor control and it maybe useful for our Capstone Project next year (ex: rover, drone, etc).
Abstract: The aim of this project is to design an interactive game using the STM32 as the microcontroller. The game is based on the concept of arcade shoot-em-up (think Space Invaders). The user controls the playable character using the Nunchuk, and the output of the game is displayed on the LCD. Game music will be played through the speaker using PWM, and will be loaded from the SD Card Adapter.
Abstract: In this project, we aim to design a missile detecting and warning system (MDWS). This system, enabled by a couple of sensors, including a thermal sensor and a distance sensor, will detect the approximate direction moving item which has the thermal and moving characters, show its approximate location on the LED matrix and give the warning by a buzzer. if we have additional time, we would like to add a projecting device which could project the interference items, such as foil, to the specific direction.
Abstract: Our goal is to implement a morse code encoder and decoder. We will be using two boards, one to encode morse code, and the other to decode. The encoder board will intake data and send out the morse code translated from text received a computer via a speaker. Then the decoder board will use a microphone to receive the morse code, decode it, and display the message on an LCD display.
Abstract: The Page Flipper is a book stand that flips a page on command. A user will have their phone connected to the STM32L476RG board through BlueTooth. Every time they wave their hand from left to right/right to left in front of the phone camera, their phone sends a signal to the STM32L476RG board through UART, which connects to a motor drive through I2C. The motor drive controls three motors – two for moving the stoppers that hold the book, one for the rubber page-turner. The board will tell the motor drive how to coordinate the three motors to flip to the next page/last page. If we have time, we may also implement interaction through a joystick.
Abstract: Have you ever wanted to have a dog that you can pet, but you don't have to feed or take care of? Well thanks to the pet car, you can make your ultimate pet experience come true. We will be creating a car that will act like a pet, with the ability to move it and also give it a pet with the click of a button! We propose to create a small robot that the user can interact with as if it were a pet. The pet will have a happiness meter that the user must keep up if they wish to control the pet and take it for walks.
Abstract: This will be a self contained system which monitors the moisture level, temperature, and light level a plant is receiving, and controls these environmental variables with an electric pump and LED light source. Current moisture level, temperature, as well as light level will be read out to an LCD screen. Settings for all environmental variables will be accessible and modifiable through a serial interface.
Abstract: This project aims to implement a bot for the Cup Pong iMessage game in the iOS GamePigeon app. It will use the nucleo’s USB peripheral mode to act as a mouse connected to an iPad over USB type-C, and I2C to connect to a Wii nunchuk which would allow a user to move the cursor to select a cup to target. There will also be an automatic mode, where it just fires at all the default targets, but the manual control allows the bot to be used when the cups are placed randomly. If time permits, I will also implement a settings/instructions GUI on an LCD screen.
Abstract: Our goal with the self balancing robot is to be able to create a fully self-sustaining robot that can balance itself without any external forces and push our design to its extremes by varying the external force we apply. The software algorithms that will implement this will evolve around a PID controller and a Kalman filter.
Abstract: By using low level coding with skills to wire the hardware components, I will be creating a mini game for soccer fans to enjoy called Robotic Goalie. The robot goalie would be an AI shifting the position of the blockers, so that the user cannot score. The user would use the nunchuck to control where he wants to shoot the ball.
Abstract: The goal of this project is to construct a smartwatch with multiple faces that perform different functionalities. We will be using the HiLetgo SPI LCD Display to display different watches faces, and the watch faces can be switched via the button on the board. Face 1 will be displaying the current time. Face 2 will be displaying the current temperature, where the temperature information is obtained from the temperature sensor. Users can also display any text on watch face 3 by entering a string of text on the PC terminal, which will be transferred through UART.
Abstract: For our final project we are going to design a smart watch screen that a user can interact with. To do this we are going to implement an LCD screen that will have different page options the user can select. We are going to have different modes that one can click through such as the date/time, the weather, a stopwatch, and possibly other uses as well.
Abstract: My goal is to recreate a retail sous vide circulator. This machine allows one to make a temperature-controlled water bath which is very useful for cooking food and keeping it warm. Sous vide also known as low temperature long time cooking allows food to be cooked at lower temperatures evenly to retain moisture and ensure safe cooking. The primary feature of this project will be creating a temperature-controlled water bath using a thermal sensor and a relay that will turn a water heater off/on. Alongside the heater, there is a water pump to circulate the water to prevent hotspots/coldspots in the bath. The secondary feature will be the use of Bluetooth to specify temperature and cooking duration where temperature will be the goal temperature of the water bath and cooking duration the time length for which the water bath will be maintained until it is shut off. The tertiary feature will be an LCD display to display the status of the cooking and any messages.
Abstract: A basic version of the popular arcade game “Space Invaders” will be implemented using the STM32L476RG microcontroller. In this game, swarms of enemy “invaders” move in from the top of the screen and slowly move towards the bottom. A player sprite exists at the bottom of the screen. A user can control a sprite in the game using a joystick and a button. The joystick will be used for left/right movement of the sprite. The button will allow the sprite to “fire” projectiles at enemies. If enemies are shot, they dissapear from the screen. The game ends when any enemies reach the bottom of the screen. After the game ends, the player’s high-score will be displayed, and the user will be asked to input their initials using the joystick. The player’s highscore can also be outputted to a connected computer terminal using the Termite program. The player can also choose to type their initials through the terminal instead. This data will then be stored on an external FRAM device. Additionally, a second button will be used to pause and resume the game.
Abstract: Our final project draws inspiration from one of the most beloved superheroes: Spider-man. We plan to construct a mask/helmet that will simulate his “Spidey-Sense” ability and to allow users to determine which direction a potential hazard is coming from. LiDAR sensors on the side and back of the helmet will alert the user of any incoming objects that are not in their field of view, and a vibration motor from the same direction as the object will notify the user of its presence. Additionally, there will be a bluetooth display that connects to another device to show the stats such as the direction or distance of the incoming objects.
Abstract: For this project, our goal is to create a table tennis ball machine that is controlled from a phone over Bluetooth. This machine will have three ways to customize the way it serves balls to you: number of balls served, speed of balls served, and frequency of balls served. A phone will be used to send user inputs to the controller to customize their practice. An LED display will also be used to display how many balls are left to be served by the robot. For the ball launching part of the machine we will use two motors to launch the balls. In order to launch multiple balls, we will use a servo to feed balls into the launching motors. This will allow for the robot to launch multiple balls without needing the user to manually reload it.
Abstract: In this project we will connect 2 ultrasonic sensors to the Stm32 Nucleo board to act as audio inputs (like in a Theremin!). 1 sensor will control the pitch while the other will control the sound level. We will then take the distance calculated by the sensors and convert them into 8 musical notes. We will then use Bluetooth (USART) and termite to set the key of the notes played. As the sound plays we will also display a visual representation of the sound on a Bicolor LED Square Pixel 8x8 Matrix that will use I2C to communicate with the board.
Abstract: Design a square clock with two functions, can switch functions by turning different sides down. One function is the clock, and the other is the thermometer. The small clock can send the real-time temperature to the phone when click the button. The The screen will light up when there’s someone come close to less than 1m.
Abstract: We propose to make an arcade system that allows two players to play games against each other. Initially, the players communicate with an interface on Termite which prompts them to choose which game to play, either a Pattern Memory Game or Battleships. After choosing the game, the players can then use their own Wii Nunchucks to control their actions in the game. Each players’ game board will be represented using an 8x8 LED Matrix. In the memory game, players will be shown the same pattern and their goal is to use the nunchuck to attempt to follow the pattern. After several rounds, a final score will be updated to Termite and will indicate which player has won. In battleships, players can initially place their ships at whichever location on the LED matrix and will proceed to use the nunchuck to decide which position to shoot each other's ships. Upon shooting, Termite will indicate whether a ship was hit or not. Once all of one players ships are hit, the winner will be indicated on Termite.
Abstract: Our goal is to implement a display which helps people visualize what waveforms generated by different devices looks like. The waves would be drawn on an ultra sonic sensor on an LCD which displays the frequency of the wave, and its scale would be adjustable by a button press. We would also be utilizing Termite to input formatting commands.