Hardware*



(1) Embedded Systems (microcontrollers, embedded C, etc.)

1.1) Flight control and HW design of a quadcopter

This is the open source, both as HW and SW, of a quadcopter called MarqDrone v1.0. HW includes flight controller, remote controller, and ESC controller. SW includes Kinetis studio files. It has a web browser GUI based debugging tool. Most of the work was done by Nate Zimmerman as part of his MSc thesis.
-- The entire design (design files, source code, description, etc.) is available here: https://github.com/NateZimmer/MarqDrone
-- A short video showing the MarqDrone in action is available here: https://youtu.be/dU9GXBNJbSU 

1.2) Collection of labs and additional examples from my class on Embedded Systems (COEN-4720)
Each of the labs has at least one complete example built around the LandTiger 2.0 board (NXP's LPC1768 MCU, Cortex M3 based). Examples include:
-- Wii NunChuck, LCD display, Direct memory access (DMA)
-- WiFi, BlueTooth
-- USB, Ethernet, CMOS Camera, Parrot AR.Drone 2.0 control
See the class website for more and for complete source code: http://www.dejazzer.com/coen4720/index.html


(2) FPGAs (VHDL, Verilog)

2.1) Network-on-chip (NoC) based H.264 video decoder on FPGA
: DE4 and DE1-SoC boards
This is an open source, both as HW and SW, implementation in VHD and Verilog of a NoC based H.264 video decoder. The communication between decoder modules is done through an NoC. The design has been validated on DE4 and DE1-SoC FPGA boards. Most of the work was done by Ian J. Barge as part of his MSc thesis.
-- The entire design (design files, source code, description, etc.) is available here: https://github.com/bargei/NoC264
-- A short video demonstrating the operation is available here: https://youtu.be/IZz36M0nqFw

2.2) Face detection on FPGA: OV7670 CMOS camera + DE2-115 FPGA board
This is a complete implementation in VHDL of the popular Viola Jones face detection algorithm. It was validated on the DE2-115 FPGA board using Altera's Quartus 2 15.1 tools. The entire project was developed by a senior design project team formed by Peter Irgens, Curtis Bader, Theresa Le, and Devansh Saxena. The implementation operates at about 4 fps.
-- The readme file of the project: README.txt
-- Complete design files (archived Quartus 2 project directory) are available here: faceDetectSystem_2p3_320x240.zip
-- Additional documentation: E50FinalReport.pdf
-- A short video demonstration: https://youtu.be/aj4FEovXVXM

2.3) Edge detection in video mode: OV7670 CMOS camera + DE2-115 FPGA board
This is a working edge detection (Sobel operator) design, which was validated on the DE2-115 FPGA board. The projects uses a simple OV7670 CMOS camera and is a modified version of the digital camera project described later on this webpage. Video is displayed on an VGA monitor, 320x240 pixels.
-- Complete design files (archived Quartus 2 project folder) are available here: http://www.dejazzer.com/eigenpi/digital_camera/digital_camera.html
-- A short video demonstration: https://youtu.be/-8Tj1P1tIwY

2.4) Digital camera: OV7670 CMOS camera + DE2-115 FPGA board
This is a simple digital camera system in order to illustrate some of the main concepts related to digital design with VHDL and FPGAs, image and video formats, CMOS cameras, basic image processing algorithms (black and white filters, edge detection, etc.).
-- Detailed description of several versions of this design and complete VHDL source code are available here: http://www.dejazzer.com/eigenpi/digital_camera/digital_camera.html
-- A short video demonstration: https://youtu.be/MLlvebcH-Jw

2.5) Collection of various VHDL projects from my class on VHDL and FPGAs (EECE-4740)
These are complete VHDL descriptions validated on various FPGA boards. Examples include:
-- Mano's single-cycle computer (SCC)
-- Cool digital clock
-- Several HPS+FPGA systems implemented on DE1-SoC board
See the class website for more and for complete VHDL source code: http://www.dejazzer.com/eece4740/index.html


(3) Arduino

3.1) WiFi Control of 8x8 LED Matrix: Arduino + ESP-01 + Android app

This design uses an ESP8266 WiFi module connected to the Arduino board to control an 8x8 LED matrix. The controlling commands are sent from an Android app running on an Android device.
-- Detailed description and complete source code (both Arduino and Android) are available here: http://www.dejazzer.com/eece4920/index.html

3.2) Bluetooth data acquisition system using DHT22 temperature and humidity sensor
This is a simple data acquisition system using a DHT22 humidity and temperature sensor and an Arduino Uno board connected to a host PC. It uses the HC-06 bluetooth module. It is one of the main projects done in the Engineering Discovery 1, EECE module.
-- Detailed description and complete Arduino source code are available here: http://dejazzer.com/geen1200/index.html



* Copyright and Permission to Use:
Copyright beginning-of-time-to-present by Cristinel Ababei (cristinel.ababei@marquette.edu) and collaborators. This Copyright notice applies to all files, software and hardware, called hereafter "The Design Files". Permission to use, copy, and modify the design files and the documentation is hereby granted only under the following terms and conditions.  Both the above copyright notice and this permission notice must appear in all copies of the design files, derivative works or modified versions, and any portions thereof, and both notices must appear in supporting documentation. Permission is granted only for non-commercial use. For commercial use, please contact the author. These design files may be distributed (but not offered for sale or transferred for compensation) to third parties, provided such third parties agree to abide by the terms and conditions of this notice. The design files are provided "as is", and the authors, their employers, as well as any and all previous authors (of portions or modified portions of the design files) disclaim all warranties with regard to these design files, including all implied warranties of merchantability and fitness. In no event shall the authors or their employers or any and all previous authors be liable for any special, direct, indirect, or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of these design files.