Forum Replies Created
-
AuthorPosts
-
kreiffParticipant
Thanks, Michael! I’ll give that a try!
kreiffParticipantOn additional note! I ended up having to add jumpers where the 3.5mm jacks were to get the signal to pass through the bypass switch. You can see in the wiring diagram where I’ve added the yellow jumpers between the pads – this is how I soldered it – not sure if that might have an effect?
It seemed that the two jacks that came with the kit were connected between those 2 pads. (I checked with my multimeter at least and got a continuity *beep*).
kreiffParticipantThanks for the feedback, Michael! I’ve got it working now. The 3-byte increment was the big piece of the puzzle. I’m also incrementing the “nSamplesPlayed” variable by 3 now and I’ve added some more window stages (20 as opposed to 10) and that seems to give me good results.
Now I’m going to try to figure out how to get it to playback the grains in reverse!
kreiffParticipantOkay – so, I’ve been messing around with this for a few days now and I think the issue had to do with the grainSize and the address increments. I still have to test this – but I think the addresses can only be incremented by 3 because of the way the bytes are packed and read back in increments of 3.
My plan is to create a new volatile integer variable that equals the grainSize pot value multiplied by 3. Update the analog read like this:
grainSize = map(analogRead(1), 0, 1023, 3, 1365); stretch = map(analogRead(2), 0, 1023, 1, 10);
And then update the granular delay code like this:
nSamplesPlayed++; if (nSamplesPlayed >= nSamplesToPlay) { // proceed to the next grain nSamplesPlayed = 0; grainAddress[sample] += grainSizeTimesThree; if (grainAddress[sample] > endAddress[sample]) { grainAddress[sample] = startAddress[sample]; } address = grainAddress[sample]; playbackBuf = signal; return; }
Am I on the right track?
I’ll report back if my test is successful
October 5, 2018 at 1:56 pm in reply to: Adding Filter on Passthrough in Four Sample 12-bit Sampler Project #9900kreiffParticipantThanks, Michael!!
Glad to know that I was on the right track. I hadn’t even considered that the sample rate would prevent the interrupt code from executing. That makes sense, though! I’ll have to be more conscious of execution times as I add additional features.
Will I get some more time back by removing some of the debugging code, too? Might have a go at that next as well.
Thanks again!
-
AuthorPosts