As part of a final project for an embedded systems class at John Brown University, the goal of this project was to create a Texas Instruments MSP430G2553 based video game console which uses multiple peripherals in order to control the three included games. This was to be done as a way to maximize the use of a lower end platform through a bare metal approach (in C, as assembly would have taken much longer to get working) that did not depend on any preexisting libraries. Additionally, the console was to be integrated onto a custom PCB that allowed for the device to be battery operated (using 4 AA's) and feature an expansion slot to include another I2C peripheral in addition to the included accelerometer (using I2C), monochrome OLED screen (using I2C), microphone (using analog voltage into an ADC), and push buttons (using basic GPIO pins). The first game, named "Hightail Highway", was a game wherein a car controlled by tilting the console left and right (like a steering wheel) avoids straying from a procedurally generated road. The second game, dubbed "Howling Hound" was to utilize the volume from the microphone input to aid the titular hound in avoiding obstacles. The third game, labelled "Reaction Randy", was to combine all of the possible controls as instructions for the user to copy within a dwindling time frame. Lastly, a speaker was to be implemented to create basic sound effects, with a stretch goal of including music within each game. All of these games were to be accessable through a start menu that allowed the player to select which game they wished to play before providing a breif description that allowed them to choose whether to play the game or return to the main menu. Once the player lost in any game, they would return to the main menu once they pressed a button.
Ultimately, most of these features did not get fully implemented, as libraries for the MPU6050 accelerometer and (a modified) SSD1603 OLED controller were used to save time, and no software support for the expansion slot was included. Furthermore, the power delivery was wired incorrectly, as the battery's positive terminal should have only connected to the switch, and the trace underneath the switch should have connected the third pin on the header for the buck converter to the center terminal of the power switch. As such, the MSP430G2553 microcontroller was powered (and wired) through the MSP430-EXPG2 Launchpad instead of the intended 4 AA's. The speaker was cut from the final design midway through development due to how taxing it would be on development, and "Howling Hound" did not obtain functional obstacles in time. Due to responsiveness issues, the accelerometer functionality was also not implemented into "Reaction Randy" due to either being too sensitive or non-responsive. An attached video link demonstrates the current functionality of the project: https://youtu.be/zLEwURsOZ0c.











Comments