I had the chance to play with Mixxx lately, and I was intrigued particularly by the vinyl control which lets you manipulate the playback of a song using a turntable as an interface. Vinyl control uses special timecoded records which are placed on real turntables. The audio reproduced is then processed by the software, which uses those information to manipulate whatever song is loaded.
Turns out that the timecode is basically two sinewaves that are (almost) 90 degrees phase shifted, so I wondered if I was able to generate the same waves pragmatically.
Fortunately, the answer came the guys from lab3 who published an article about an Arduino Sine wave Generator using the direct digital synthesis Method. Despite I completed ignored the low pass filter section, I was able to successfully generate one sine wave.
At that point all I had to do was adding a potentiometer to control the frequency of the wave and calling the dds function with arguments “shifted” so I could get the phase shifted by 90 degrees.
This is the schematic:
And here you can find the arduino sketch.
Don’t forget me know what you think! Follow me on Twitter!