Layne Bennett 2025-2026 Project Portfolio

A collective list of both university and personal projects. Click on Github icons to see code repositories and PDFs icons to see extended project descriptions.


RISC-V Processor

The goal of this project was to design and create a RISC-V processor in VHDL. Hardware-scheduled pipeline and software-scheduled pipeline schematics are shown above. A single-cycle design was also created to compare performances between processor structures.In this project I designed the schematics, determined optimizations best fit for the requirements, wrote component and test code, and analyzed final timing results. I verified correct operation through simulation with a custom testbench, ensuring that instruction execution, register transfers, and memory interactions behaved as expected across pipeline stages.


Part-Finder AI Agent

The goal of this project was to experiment with agentic AI applications and to apply it to a relevant problem in my engineering career. I decided upon making a web app that takes a user input describing a project they want to build and to have the agent find the best-suited electronic parts for the task.To create this application, I conducted research on the best fit models and public APIs, determined an agent workflow, and wrote and debugged code to format the agent's findings.


Theremin Digital Twin

The goal of this project was to design a theremin-like circuit and develop a chip layout in the Cadence software suite. In addition, the circuit was to be developed physically on a breadboard.The circuit needed a dual-oscillator setup, with the ability to control each oscillator’s frequency and output amplitude with a photoresistor, which effectively allows for theremin-like operation. The oscillators must operate roughly in the 20-20k Hz frequency range, as that is the range audible to human ears. Additional photoresistors controlled the amplitude of each oscillator's output. These photoresistors are to be arranged in a matrix as shown on the breadboard.My role in this project was to design the amplifier portion of the circuit and create the on-chip digital twin in Cadence.


Taco Delivery Bot

The goal of this project was to work in a group to create a semi-autonomous food delivery system built on a hacked Roomba
featuring servo-mounted IR sensors and controlled via a remote GUI. Firmware is written in C and GUI is written in Python.
The Roomba represents a taco delivery vehicle with a given number of tacos in its inventory. For the environment we used tape to mark the roads, and PVC pipes of varying heights and diameters to represent the signs, tree, customers, and curb. The robot scanned these objects and correctly identified them to navigate the terrain. A remote operator with no view of the randomized environment controlled the movement of the bot until a curb was hit, after which autonomous customer scanning would occur. Once complete, the robot plays a sound signifying it is complete, and the operator returns it to the start in order to refuel.My role in the project was to develop much of the sensor/object recognition firmware for the servo mounted IR sensor, ground-facing IR sensors, and bump sensors. I also implemented the object detection and placement on the GUI as well.


DIY Drone (WORK IN PROGRESS)

The goal of this project is to create a working drone controlled over Wi-Fi connection. One objective is to have a stable controllable flight on par with commercially available drones. Building all custom software.3/5/2026 - Hardware assembly complete. GUI is being written in HTML/JS and the firmware is written in C++. Flight controller in development. Likely going to need ToF sensor for better elevation control in the future. Need to build PID-tuning rig.


Bluetooth ID Tag-Triggered Assistant
(B.I.T.T.A.)

Currently I'm experimenting with a project using BLE beacons to interface with an ESP32 microcontroller and other peripheral components with a goal to make a proximity-triggered user detection system. I was able to transmit WAV files from the other ESP32 to an old Bluetooth speaker I had lying around using the ESP32-A2DP library. This project also integrates the Kokoro API by making TTS requests to an AI-powered local server running on Python. Door opening events are detected with a simple IR sensor. With these put together, different users can be equipped with unique BLE tag identifiers and get tailored greetings from the speaker once they walk through the front door.2/12/2026 - More images/demo video coming soon. Plans to add addressable LEDs to the setup as well.


CyBoard

The goal of this project was to work in a group to create an app that provides Iowa State students an exclusive social media app to communicate with other past or present students.My role in this project was to write backend code to communicate with our MySQL database running on a server using CRUD operations. This involved storing customer account information, password encryption, image compression and storage, communication and integration with frontend developers, and web socket use. Postman was used for most backend testing.


Task Tracker Extension

The goal of this project is to solve my forgetfulness problem with a simple Chrome extension. I created my own extension since the pre-existing ones did not offer the simplicity nor customization that creating my own allows. I wanted to add timed tasks where I can move a progress bar depending on how long I have spent on the task as well as non-timed tasks. I also wanted my task list to maintain simplicity to make use as straightforward as possible.I wrote this extension in HTML and JavaScript to gain familiarity in both languages. To increment the progress bar the user clicks the +5 min button for every 5 minutes they have worked on the task. Once the progress bar is full, the box next to the task gets checked. I also added a user ID that allows the tasks to persist between devices if the extension is added using the same user ID.


Contacts