Close

First test

A project log for proximity controlled sampler

A sampler that is controller by a proximity sensor

estEst 09/15/2017 at 19:330 Comments

This is my first test of the sampler controlled by hands movements:

I found out that if the pitch is controlled by the speed of the hand getting closer to the sensor makes the sound sound weird as it is difficult to maintain a constant hand speed. 

For this reason, I choose to control the pitch with the position of the hand: Lower hand = higher pitch

My current development is this:

- Read a WAV file from the SD card (I tried to use a CH376 chip to read the file from USB thumb drive without success so I take the road of reading the data from SD card directly with the micro-controller)

- Re-sample the data using a low pass digital filter (I have rewritten this code 4 times: first time i simulated it in python on PC, second time i wrote in C for the PIC24 micro-controller, third time i wrote in assembler for PIC24, fourth time i used a dsPIC33 and learned the DPS assembler instruction set for it )

- save the re-sample data to external 64Mbit SPI flash memory. (I found out that in my application is faster to bit banging SQI (Serial Quad Interface) than using the SPI at maximum clock of 15 MHz)

- the dsPIC33 reads the re-sampled file and plays it back at a sampling rate variable between 88.2 and 176.4 Khz (after the DAC is advisable to have a low pass analog filter to filter out the DAC steps, this analog filter is more simple to implement if the sampling frequency is higher)

Right now the playback speed is limited between 1/8x to 2x of the original but I am going to extend this to 1/8x to 8x.

Discussions