Open Access. Powered by Scholars. Published by Universities.®

Computer Engineering Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 30 of 35

Full-Text Articles in Computer Engineering

Fitness Plug, Evan Lee Ashley Jun 2020

Fitness Plug, Evan Lee Ashley

Computer Engineering

My parents only allowed me to play videogames or watch television for a certain number of minutes or hours per day. By limiting screen time, they encouraged me to be active and find other things to do outside of television or videogames. The Fitness Plug aims to do both by converting time exercised to entertainment time; you can only watch television or play videogames for as long as you have exercised.


Otter Debugger, Keefe Johnson Jun 2020

Otter Debugger, Keefe Johnson

Computer Engineering

This project is a debugger and programmer for the OTTER CPU, the implementation of the RISC-V ISA used by Cal Poly to teach computer architecture and assembly language in CPE 233/333 and usually implemented on the Basys3 FPGA development board. With this tool, students can quickly program their OTTER with a new/revised RISC-V program binary without resynthesizing the entire FPGA design. They can then use the debugger from a PC to pause/continue/single-step execution and set breakpoints, while inspecting and modifying register and memory contents. This enables real-time debugging of OTTER projects involving custom hardware such as a keyboard and VGA …


Otter Vector Extension, Alexis A. Peralta Jun 2020

Otter Vector Extension, Alexis A. Peralta

Computer Engineering

This paper offers an implementation of a subset of the "RISC-V 'V' Vector Extension", v0.7.x. The "RISC-V 'V' Vector Extension" is the proposed vector instruction set for RISC-V open-source architecture. Vectors are inherently data-parallel, allowing for significant performance increases. Vectors have applications in fields such as cryptography, graphics, and machine learning. A vector processing unit was added to Cal Poly's RISC-V multi-cycle architecture, known as the OTTER. Computationally intensive programs running on the OTTER Vector Extension ran over three times faster when compared to the baseline multi-cycle implementation. Memory intensive applications saw similar performance increases.


Weight Controlled Electric Skateboard, Zachary Barram, Carson Bertozzi, Vishnu Dodballapur Jun 2019

Weight Controlled Electric Skateboard, Zachary Barram, Carson Bertozzi, Vishnu Dodballapur

Computer Engineering

Technology and the way that humans interact is becoming more vital and omnipresent with every passing day. However, human interface device designers suffer from the increasingly popular “designed for me or people like me” syndrome. This design philosophy inherently limits accessibility and usability of technology to those like the designer. This places severe limits of usability to those who are not fully able as well as leaves non-traditional human interface devices unexplored. This project set out to explore a previously uncharted human interface device, on an electric skateboard, and compare it send user experience with industry leading human interface devices.


An Fpga Implementation Of Digital Guitar Effects, Carson James Robles Jun 2019

An Fpga Implementation Of Digital Guitar Effects, Carson James Robles

Computer Engineering

One of the most versatile aspects of the electric guitar is its ability to change its sound completely and on-the-fly through the use of effects pedals. Conventional guitar pedals contain one effect and can be chained together. The goal of this project is to serve as a contained multi-effects station with five popular electric guitar effects packed into one product. On top of this, the effects each have two tunable parameters to allow users to dial in the exact tone they are looking for. All of the signal processing done in this project is conducted on an FPGA which also …


Tidalsim Senior Project Report, Kent Zhang, Colin Vandervoort Jun 2019

Tidalsim Senior Project Report, Kent Zhang, Colin Vandervoort

Computer Engineering

Throughout the course of this project, our team helped the Cal Poly Biological Sciences department refine an intertidal zone simulator. The aim of this device is to allow any marine biologist to easily simulate a vast range of tidal zones in order to test animal behaviors within these zones. Another goal of this project is to make each simulation tank independent from the others by using a single microcontroller to handle all inputs and outputs of the system as well as logging all relevant data. The current system is set up so that a separate microcontroller handles dissolved oxygen and …


Genetic Algorithm Amplifier Biasing System (Gaabs): Genetic Algorithm For Biasing On Differential Analog Amplifiers, Sean Whalen Jun 2018

Genetic Algorithm Amplifier Biasing System (Gaabs): Genetic Algorithm For Biasing On Differential Analog Amplifiers, Sean Whalen

Computer Engineering

Genetic Algorithm Amplifier Biasing System (GAABS) - Senior Project Analysis

Summary of Functional Requirements

This project integrates LTSpice with a python script that runs a genetic algorithm to bias a differential amplifier. The system biases the amplifier with 2 different voltages, the base voltage for the PNP BJTs of the active loads and a voltage controlling the current of the current sink. The project runs via a python script, gets data from LTSpice’s command line call, and iteratively runs until the system is biased to achieve the greatest gain on an arbitrary input voltage.

Primary Constraints

Some of the main …


Modular Injection System And Sampling Template (M.I.S.S.T) Design Report, Froylan M. Aguirre Jun 2018

Modular Injection System And Sampling Template (M.I.S.S.T) Design Report, Froylan M. Aguirre

Computer Engineering

Digital systems are ubiquitous throughout modern life and their applications continue to grow. Thus system designers engineer and test modular systems to mitigate error rates. Smaller systems and their increasing importance in many applications demand the utmost reliability. Fault injection is the most common method used by researchers and engineers to test system reliability. However, most hardware fault injection implementations are ad hoc and only used to test a specific system or for specific tests. There is also software-implemented fault injection that adds overhead in the benchmark source code. The aim of this project is to develop a general use, …


Bicycle Power Meter, Andrew Mcguan Jun 2018

Bicycle Power Meter, Andrew Mcguan

Computer Engineering

A power meter is a cycling training tool used to record the power a rider is outputting. This is very useful to athletes who regularly do bike workouts, because the power output is a consistent measure of the rider’s effort level, and is not affected by outside factors such as wind or road gradient. If a cyclist does a workout with the intent to carry a certain speed for a certain amount of time, a strong headwind will slow them down and make them work harder to maintain the same speed, defeating the goal of the workout. When a power …


Arm Mke1xf Mcu Replatform, Nathan Hong, Derek Lung, Japsimran Singh, Bevin Tang Jun 2018

Arm Mke1xf Mcu Replatform, Nathan Hong, Derek Lung, Japsimran Singh, Bevin Tang

Computer Engineering

After Cal Poly Racing’s electrical team began to hit the technical limits of the ADC and other I/O features of the current 8-bit Atmel AT90 microcontroller unit, it became clear that an upgrade was due. This replatforming project takes the functionalities of the old, 8-bit architecture, and aims to provide a 32-bit version using the ARM MKE1xF MCU. With the idea of having a working PCB as a stretch goal, the scope of the library development was limited to enable base functionality. Thus, the only libraries developed were for the Timer, ADC, SPI, UART, and CAN. Additionally, this document discusses …


Analog Sorting Using Pulse Width Modulation, Riley C. Olson Jun 2018

Analog Sorting Using Pulse Width Modulation, Riley C. Olson

Computer Engineering

As time goes on, computers become more and more powerful. However, as processing time becomes less of a limiting factor for computing tasks, power consumption takes its place for many tasks. This paper proposes and tests a new method for sorting analog signals. This new sorting method converts analog signals into Pulse Width Modulated(PWM) signals of varying duty cycle , which are then sorted by a simple network of combinational logic, and then converted to a normal binary representation. In order to implement this new method, multiple circuits had to be designed and and tested to ensure their functionality and …


A Basic, Four Logic Cluster, Disjoint Switch Connected Fpga Architecture, Joseph Prachar Jun 2018

A Basic, Four Logic Cluster, Disjoint Switch Connected Fpga Architecture, Joseph Prachar

Computer Engineering

This paper seeks to describe the process of developing a new FPGA architecture from nothing, both in terms of knowledge about FPGAs and in initial design material. Specifically, this project set out to design an FPGA architecture which can implement a simple state machine type design with 10 inputs, 10 outputs and 10 states. The open source Verilog-to-Routing FPGA CAD flow tool was used in order to synthesize, place, and route HDL files onto the architecture. This project was completed in terms of the spirit of the original goals of implementing an FPGA from scratch. Although, the project resulted in …


Real Time And High Fidelity Quadcopter Tracking System, Tyler Mckay Hall Dec 2017

Real Time And High Fidelity Quadcopter Tracking System, Tyler Mckay Hall

Computer Engineering

This project was conceived as a desired to have an affordable, flexible and physically compact tracking system for high accuracy spatial and orientation tracking. Specifically, this implementation is focused on providing a low cost motion capture system for future research. It is a tool to enable the further creation of systems that would require the use of accurate placement of landing pads, payload acquires and delivery. This system will provide the quadcopter platform a coordinate system that can be used in addition to GPS.

Field research with quadcopter manufacturers, photographers, agriculture and research organizations were contact and interviewed for information …


Skin Tone Tracking Device (Chromaband), Ziyang Bian Jun 2017

Skin Tone Tracking Device (Chromaband), Ziyang Bian

Computer Engineering

It’s long been said that your skin is a window into your health and with many illnesses the first signs of trouble actually show up in your skin. So if we have this natural warning system, then why isn’t anyone able to effectively use it to predict changes in our health? The problem is that currently there is no reliable way to accurately measure the change in skin tone and how these changes may or may not change with variations in health. This project’s aim is to design and develop a device that will record the changes in a user’s …


The Following Robot, Juan D. Cerda, Matthew S. Kwan, Vi M. Le Jun 2017

The Following Robot, Juan D. Cerda, Matthew S. Kwan, Vi M. Le

Computer Engineering

The objective of this project is to design, build, and test an autonomous robot with an associated Android application. The robot uses on board inertial measurement sensors (magnetometer, accelerometer, gyroscope) and coordinates itself through Bluetooth communication with the similar built­in measurement sensors on the Android phone to mimic and follow movement. The Following Robot incorporates the same basic movement functionality as a typical RC car. The robot follows the user’s phone through an application on one’s phone. This application accesses the phone’s accelerometer and gyroscope data and translates into appropriate conversions. Methods of tracking and calculating distance or angular displacement …


Poly Drop, Zachary T. Scott, Lilly J. Paul Jun 2017

Poly Drop, Zachary T. Scott, Lilly J. Paul

Computer Engineering

Poly Drop is a software interface to control an Open Drop digital micro-fluidics system. We obtained a hardware system from Gaudi labs. Our task was to create a Graphical User Interface that made the control of the device easier and more automated for better testing. We created software that had 3 parts: a control GUI, arduino code to control the hardware, and Image Analysis that gives the user information such as location and color of liquid drops as they move across the electrode grid of the Open Drop system. The GUI was developed using Java Swing. The communication between the …


Musictrakr, Benjamin Lin Jun 2016

Musictrakr, Benjamin Lin

Computer Engineering

MusicTrackr is an IoT device that musicians attach to their instruments. The device has a start and stop button that allows users to record their playing sessions. Each recorded session is sent wirelessly to a cloud database. An accompanying website displays all of the recorded sessions, organized by date. After picking a specific date, the user can view graphs showing total practice time and average session length as well play back any recordings during that date. In addition, the user may add comments to any specific date or recording. Lastly, the user may tag a specific date with a color …


Prosense, Johnny Favazza Ii, Casey Glasgow, Matt Epperson Jun 2016

Prosense, Johnny Favazza Ii, Casey Glasgow, Matt Epperson

Computer Engineering

This project aims to gather advanced data sets from MEMS sensors and GPS and deliver it to the user, who can capitalize on the data. The once negligible half-degree difference of your board barreling down a wave can be recorded from a gyro and exploited for the perfect turn. The exact speed dreaded by longboarders where speed wobbles turn into a road rash can be analysed and consequently avoided. Ascertaining the summit of your flight using combined GPS sensors from the ski ramp allows for the correct timing of tricks. When it comes to pursuing excellence in professional sports, amateur …


El Capitán: Cal Poly Rose Float Digital Drive System, Gregory Raffi Baghdikian Jun 2016

El Capitán: Cal Poly Rose Float Digital Drive System, Gregory Raffi Baghdikian

Computer Engineering

In today’s world of smartphones, self-driving cars, and internet-connected coffee makers, it seems as if computers are contained in everything around us. These “embedded systems” have become critical components of our lives, improving everything about the things they control, from cost, to speed, to simplicity. One area that embedded systems has hardly gained a foothold is in the world of floatbuilding. Most of the floats in the Tournament of Roses Parade, including the one built jointly by Cal Poly San Luis Obispo and Cal Poly Pomona, are technologically very simple, using mostly analog components and rudimentary discrete digital logic to …


A Low Cost Timing Generation Unit, Christopher Vochoska Jun 2016

A Low Cost Timing Generation Unit, Christopher Vochoska

Computer Engineering

No abstract provided.


Pinpoint: Location Beacon And Tracking, Ezequiel Lopez Iii Jun 2016

Pinpoint: Location Beacon And Tracking, Ezequiel Lopez Iii

Computer Engineering

The purpose of Pinpoint was to create a device that can collect and transmit location information for multiple users on a wireless network. The device would be used to keep track of and communicate with other users nearby. The final design includes a touchscreen display as a graphical user interface (GUI), an XBee RF module for wireless networking, a GPS receiver for location tracking, and a Programmable System on a Chip (PSoC) to control the modules.


Seizure Tracker, Zachary Reardon Jun 2015

Seizure Tracker, Zachary Reardon

Computer Engineering

The goal of this project is to make a Module that enables anyone watching a person with disabilities to record any seizure that this person has under their care. Then when the Doctor/parent receives their patient/kid they are able to download all the seizures that their patient/kid had while they were away. The Doctor/parent then has the exact time, the duration of the seizure, and the type of seizure for all the seizures that have occurred while they were away from their patient/kid. From this data it is possible that the Doctor may see some sort of patterns that enables …


Universal Uav Payload Interface, Nolan Reker, David Troy Jr, Drew Troxell Jun 2015

Universal Uav Payload Interface, Nolan Reker, David Troy Jr, Drew Troxell

Computer Engineering

Unmanned Aerial Vehicle (UAV) technology is becoming increasingly accessible for civilian use. Both open-source and commercial-purpose UAVs can be obtained affordably or even built. However, the platforms available are very segmented in their customization to a specific application (i.e. land surveying, payload delivery). This project aims to create a Universal Payload Interface (UPI) mounted to the underside of multi-rotors or other UAVs to enable the attachment of customizable sensor payloads. These payloads allow a single UAV to be rapidly reconfigured to perform a multitude of tasks.

The Universal Payload Interface facilitates communication between the payload, onboard flight controller, and operator …


Designing A Modular Dsp Core For Real-Time Audio Performance, Kevin Richard Brewer Jun 2014

Designing A Modular Dsp Core For Real-Time Audio Performance, Kevin Richard Brewer

Computer Engineering

This project provides an overview for building a Digital Signal Processing (DSP) core on a Digilent Nexys2 FPGA board. The DSP core is designed to give Cal Poly students interested in DSP and its applications to audio engineering a usable platform to perform signal processing and analytics. The processes of the DSP core are modular, allowing students to design their own implementations of various adder and multiplier functions. Infinite impulse response (IIR) filters and finite impulse response (FIR) filters using both cascade and parallel implementations are the primary processing tools in the core, and all output can be visually and …


Data Transfer Using Light, Ryan Thomas Suarez May 2014

Data Transfer Using Light, Ryan Thomas Suarez

Computer Engineering

A proof of concerpt for data transmission using light as a medium. Data is transferred by strobing and LED faster than the human eye can detect in an attempt to come up with a more secure alternate to in-building wifi.


High Voltage Waveform Sensor, Nathan Stump Jun 2013

High Voltage Waveform Sensor, Nathan Stump

Computer Engineering

The purpose of this project was to build a system to measure the voltage waveform of a discharging railgun. Another group of students had built a railgun system to simulate micro asteroid impacts in low Earth orbit. The only instrumentation available to them was an analog voltmeter attached to the capacitor banks. During the lengthy (30 to 45 minute) charging process, an analog voltmeter was more than capable of measuring the voltage. However, during the discharging process the time elapsed was so short (approximately one millisecond) that waveform data could not be captured. In order to measure power dissipation during …


Sifteo Spice, Ikenga Kenneth Ugo Jun 2013

Sifteo Spice, Ikenga Kenneth Ugo

Computer Engineering

Sifteo SPICE is an application built on the Sifteo platform with the purpose of aiding in the learning of basic circuits. Traditionally, circuit theory is taught to students in two different methods, lectures and laboratory exercises. Lectures focus on auditory and visual learning and are largely passive learning. Lab experiments allow students to physically interact with the circuits, and learn visually through viewing output waveforms from simulators or on measurement devices.[3] The goal of the Sifteo SPICE project is to develop a physical system for virtual, real-time SPICE simulation that mimics the laboratory experience. In Sifteo SPICE, each individual Sifteo …


Caddy: A 2005 Roborodentia Entry With Vision And Path Planning Abilities, Taylor Braun-Jones Mar 2013

Caddy: A 2005 Roborodentia Entry With Vision And Path Planning Abilities, Taylor Braun-Jones

Computer Engineering

Roborodentia is an autonomous robotics competition held each year during Cal Poly’s Open House. For the 2005 competition, robot entries needed to navigate a maze searching for three randomly placed golf balls, collect them, and then deposit the balls in the “nest” at the end of the maze. A newly added aspect for the 2005 competition included two bonus balls that were placed on a platform behind the wall in two predetermined corners of the maze.

Caddy is a robot that was entered into the 2005 Roborodentia competition. Caddy included a vision system that allowed searching for balls down untraveled …


Design And Simulation Of Interconnected H-Bridge Inverter, Samuel Muehleck Jun 2012

Design And Simulation Of Interconnected H-Bridge Inverter, Samuel Muehleck

Computer Engineering

In this project, the research, design and simulation of an interconnected H-bridge single-phase inverter was explored. The inverter design was divided into three separate sections. First, a VHDL programmed CPLD was used to generate control signals for the transistors of the inverter circuit. Second, power electronics was used to create an inverter circuit to change a DC input to a 60 Hz AC output. Lastly, additional circuits were used to link the generated control signals to the MOSFET transistors of the inverter circuit. The operation of the three components was then validated with computer simulations. Results of computer simulation demonstrate …


Riley The Cat, Nicholas Zankich Jun 2012

Riley The Cat, Nicholas Zankich

Computer Engineering

There are many toys that exist that are comfort objects. Generally these are toys that are soft such as blankets, stuffed animals, and pillows. Robotic toys also exist such as games, interactive books, and instruments. There exists a crossover market that includes Furbys, Tomagachi pets, and Fur Real Friends. While being very popular, I believe that this crossover isn’t perfect, and that there is a lot of room for improvement. Riley (Figure 1) was created to make something that is both completely a robot and a comfort object.