Meet The Team

Max Jaffe

Supervised machine learning network design, testing, and implementation. PCB layout and assembly.

Austin Reilly

Decoding MIDI signal input into a form that can be used by the machine learning network.

Vee Upatising

Supervised machine learning network design, testing, and implementation

Matthew Cierpial

Encode output from machine learning network as a playable MIDI/Analog signal and implement playback control based on user input. (BPM/Octave)

Problem Statement

The most memorable songs often feature a compelling (vocal) melody. Musicians often struggle to write melodies that are catchy and unique. The BopBot can inspire this creative process by offering melodies based on what you play into the machine. After defining timing parameters, the user will be prompted to play a chord progression. The BopBot will then generate a cohesive and interesting sequence of notes using its recurrent neural network. The user can then playback the chord progression and melody together to inspire different musical motifs to use in their own melodies.

System Requirements and Specifications

1. Can fit onto a musician’s pedal board (Typically 170x138mm)
2. Completes melody generation in an amount of time that is conducive for live music. Less than 5 seconds is acceptable
3. Four musical genres to choose from for models: Rock, Blues, Classical, Pop
4. Powered by a typical music pedal power supply (9V, 1700mA max)
5. Neural network design must have less than 23,000 neurons in each of the 3 layers (fewer if using 4 layers) in order to generate a melody within five
seconds on a 1 GHz processor
6. Each neural network must be smaller than 200 MB such that the microprocessor has enough data memory (SDRAM)

Block Diagram

Product Sketch

PDR & MDR Slides

PDR Slide Deck
MDR Slide Deck

MDR Report

MDR Report

Project Poster

Project Poster

FPR Report

FPR Report

Demonstrations & Samples


Sample 1:

Sample 2:

Sample 3: