P19361: Optoelectronic Guitar Pickup
/public/

Integrated System Build & Test

Table of Contents

Team Vision for Integrated System Build & Test Phase

During this phase, our team planned on fully debugging the board and programming it to pass through the signal and have changeable distortion levels. At the end of the last phase, we were unable to get a signal to pass through the DSP chip that contains the digital to analog converters. We also planned to integrate the mechanical, sensor, and electrical systems to be able to do a general demo of the working guitar. We also planned on getting started with testing and validation.

During this phase, the team put the mechanical, sensor, and board systems together and was able to test and hear the reflective design working. It is not perfect yet, and the signal sounds distorted when it should sound clean. This is likely a software problem, but more testing will be done to confirm this and remove the noise.

Board Bring Up

One of the main problems we had was getting the board brought up. The team had issues getting the power supplies up and running, and also getting the DSP chip, which contains the DAC, to output a signal.

The main issues with board bring up were caused by silk screen being hard to read. The two issues this caused were for the -3.3 V power supply and around the DSP chip.

Board Layout graphics for -3.3 V Power Supply

Board Layout graphics for -3.3 V Power Supply

Board Layout for -3.3 V Power Supply does not print all the silk and makes some parts hard to see

Board Layout for -3.3 V Power Supply does not print all the silk and makes some parts hard to see

The ADAU1701 DSP chip silk screen is also confusing. The next two images show the silk screen around the board, followed by the which part is actually supposed to connect on each pad. These were verified with a multimeter and the schematic.

Board Layout graphics for passive components around the ADAU1701 DSP IC

Board Layout graphics for passive components around the ADAU1701 DSP IC

Correct passive component placement. After switching to this configuration, the DSP section of the board began to work and we were able to pass signals from the board input to the board output

Correct passive component placement. After switching to this configuration, the DSP section of the board began to work and we were able to pass signals from the board input to the board output

The drawing is not to scale, but especially in the bottom left corner, it is easy to see how confusing the silkscreen labeling is for populating the board

Mechanical Design

The pickguard has been cut for the reflective design, and three switches have been added. One edge of the pickguard needs to be filed down to get the pickguard to fit perfectly with the reflective pickup plate. The switch closest to the neck turns the board on and off. The switch closest to the bridge switches between the active pickups and the passive pickups. The switch in the middle switches power between the reflective LED's and the transmissive LED's. A new hole was also added for an encoder that will adjust the distortion algorithm.
Assembled Reflective System

Assembled Reflective System

Reflective System

Reflective System

New aluminum L brackets have been made for the transmissive design. A spacer needs to be made to raise the transmissive design, since the action had to be raised to stop fret buzz.

Assembled transmissive system

Assembled transmissive system

Electrical Integration

The project was put together and integrated in this phase. Some work arounds were required to mitigate issues multiplexing the signals in software. Overall, the electrical diagram for the whole system can be seen below:
Electrical System Integration

Electrical System Integration

Software

Due to the electrical changes, the software design had to change as well. Since ADC1 is the only ADC being used, with 3 strings tied to ADC channel 1 and the other 3 times tied to ADC channel 2, the code only needs to read from the SPI6 buffer. The interrupt for SPI6 was working last phase, therefore the only difference in the code would be in the main loop. There seemed to be a problem with sampling the input signal, where the signal would be taken into the PIC and would not write out properly. There were sudden jumps in the signal, which were clearly meant to not exist. Below are examples of that.
Signal Jumping 1

Signal Jumping 1

Signal Jumping 2

Signal Jumping 2

Each of these clearly shows the jumping that is occurring. While the reasoning for the jumping has yet to be determined, a fix has been implemented in software. After seeing this pattern, a conditional statement was placed before writing out to the DSP chip that checked the distance between the last and the current audio samples. If the samples were a specific distance apart, it is assumed that the jump is occurring. The absolute value of the distance between the 2 is taken and then the sample is shifted either up or down, depending on which direction the jump occurred. The code being run on the board currently is shown below.

Code Running

Code Running

This code sends a clearer signal through to the output. The signal sounds as if it is being run through a fuzz pedal, however this can be fixed with more software and hardware finessing. Below is an image of the output signal with this code running.

Proper Output Signal

Proper Output Signal

The team is currently waiting on a new encoder to come in, which contains the right pins needed to work with the board. While waiting for the right encoder to come in, the distortion level will remain 0. The distortion method will be implemented in the audio_in line before the dsp.write_parameter() command. Once this encoder comes in, the distortion method can be finalized and the code will be complete. Bit masking will be the choice of method, as it can be implemented in the single line and have a variation to it depending on how high the distortion is set.

Test Results Summary

While all tests were not performed , some preliminary tests were. For example, 3 harmonics were reproduced on a few of the strings, but the sensors in other strings need to be adjusted for a more accurate reproduction. Drop tuning capabilities were also confirmed.

Below, a reproduction of the low E string can be seen from the output of the sensor:

Sensor reproduction of low E string

Sensor reproduction of low E string

Risk and Problem Tracking

Updated Risk Assessment

Updated Risk Assessment

Functional Demo Materials

Include links to:

Plans for next phase

An updated Gantt chart can be found here. This includes our updates to our progress.

The team’s main goal this next phase is to complete the integration and prepare for the customer handoff. This means the MSD paper and poster for Imagine RIT need to be completed by Imagine RIT. The integration is almost complete, with little debugging left to do. The signal is sent through distorted, therefore there needs to be some time spent on determining why this is the case. The distortion encoder also needs to shipped, and once that comes in the distortion method can be done. Testing will begin after this is complete, but then the project will be complete.

Individual phase plans can be seen blow in this 3 week plan.


Home | Planning & Execution | Imagine RIT

Problem Definition | Systems Design | Preliminary Detailed Design | Detailed Design

Build & Test Prep | Subsystem Build & Test | Integrated System Build & Test | Customer Handoff & Final Project Documentationing Up