I required a multiple hop environment for a Networking course I was taking at NCSU in my final semester of my Masters program. The goal of the project was to simulate Go-Back-N protocol and to do this we were required to transfer a file in bytes across the internet. You can read more about that… Continue reading Creating a Virtual Environment on an AWS EC2 Ubuntu 20.04 Instance
Projects
How to Log Amazon SES Email Bounces and Complaints using SNS
I have a business email server that I manage. The incoming mail is received to the local on-site server, but all outgoing mail is relayed through Amazon Simple Email Service (SES). Since I’m not sending emails directly from my server, I’m not able to log all of what has been sent or any errors that… Continue reading How to Log Amazon SES Email Bounces and Complaints using SNS
WatchTower for Automating Docker Container Updates
I’m currently running a Synology NAS and Docker Hub to run a self-hosted GitLab instance. GitLab is awesome and very user friendly, however they are constantly updating thier CE platform and when utilizing a docker instance, the Admin -you, will need to frequently update the container to maintain the most recent version is deployed. This… Continue reading WatchTower for Automating Docker Container Updates
NCSU Inventory Management System
The almost instant realization for need of this project came from my newly found love for being in the Troxler Lab at NCSU in the ECE Department. During my initial “walk-through”, I noticed a real demand for a web-facing inventory management system. The current system was implemented with an excel spreadsheet. It was extremely error… Continue reading NCSU Inventory Management System
Idle Time Recovery With an RTOS
In this project we are improving a digital picture frame application by recovering some of it’s idle time for use by other threads. The thread “Thread_SlideShow” decodes and displays on the LCD each of the JPEG image files located in the root directory of the micro SD card. The board we are using (FRDM-KL25Z) only… Continue reading Idle Time Recovery With an RTOS
Bit Fusion for Acceleration of Deep Neural Networks Computation
This was my final project for my graduate ECE-564 course. The project uses hardware to process matrix multiplication such as how neural networks operate. I designed a very cost-effective and low area utilization using the Verilog hardware descriptive language. I then later synthesized the design using a program called Synopsys. This modeled the performance and… Continue reading Bit Fusion for Acceleration of Deep Neural Networks Computation
Memory Consistency Model Simulator
This program was written in an effort to simulate different memory consistency models and how they effect performance of modern processor systems. The program uses a text file with assembly instructions as inputs. It then parses the instruction and follows the specific memory model’s rules for ordering or the relaxed allowance of re-ordering to complete… Continue reading Memory Consistency Model Simulator
Automated Soil Weighing Machine
This was my senior design project. We were sponsored by NC Department of Agriculture and tasked with automating the soil sample weighing process. They manually weigh approximately 6000 soil samples per day. This is the solution we designed and manufactured over a two semester period (Spring and Fall 2020). The vast majority of components were… Continue reading Automated Soil Weighing Machine
MSP-430 Autonomous Black-Line Following Car
This embedded systems autonomous car was created for my ECE-306 course. Though at times I found myself very frustrated and overwhelmed, I really enjoyed this introductory course to embedded systems as it provided me with tangible evidence of my success at the completion of the course. The car is designed to locate, align path of… Continue reading MSP-430 Autonomous Black-Line Following Car
Map – Directions Program
This program implements a simplified map program, with streets that are restricted to either be west-to-east or north-to-south. Map info is read from a file. The program maintains the collection of streets and to answer queries about the map.