Thanks Wcalvert, that helped a lot! You have been very generous with your time and I cant thank you enough. Happy Holidays!
Type: Posts; User: halogravity
Thanks Wcalvert, that helped a lot! You have been very generous with your time and I cant thank you enough. Happy Holidays!
Thats a good point. I thought I went a bit overboard, lol. Thanks for your addition, I will definitely slim down the comments.
Hey Wcalvert! I hope all is well with you, brother. I am in the process of commenting the crap out of my code, 1. So I can understand it better and 2. For future users to get as much as possible out...
Keeping tight lipped Wcalvert? lol
lol those supersaws are amazing! I think this is right now, again Wcalvert saves the day!
I added the code to only execute detune when the knob is turned. Onwards and upwards!
Next is LFO, a...
Yes, I think thats the traditional direction, no?
Sweet! Just one thing... it seems to be uptuning... any idea's on how to reverse it? lol
I was HELPFUL! lol
So I tried this:
float cents = 100 * analogRead(A17) / 1023;
float detune = pow(2, (cents / 1200));
for (int i = 0; i < NUM_VOICES; i++) {
So I think the problem was I set detune as an integer so it was rounding to one, setting it as a float fixed that. Here's the updated code. Next I'll be working on making the detune sweeepable while...
Thanks Wcalvert! I think I implemented it right... but I'm getting a value of 1 for detune even when I turn the pot... I need to keep tweaking here I guess.
#include <Bounce.h>
#include...
GOT IT! Somehow the envelopes in the Audio Design tool got misnumbered when I added 32 voices... some envelopes were numbered with the wrong oscillators. You can see what I mean if you import the...
Strangely if I play the notes one after another another slowly, this issue doesn't occur. Only if I play one note after another relatively quickly.
Hey everyone, hope all are enjoying their holiday season!
So I upped the number of voices to 32, and added an attack and release knob for the envelope!
I am running into a few strange issues...
Ahhh sweet I get it. Thank you sir!
So you can call numbers instead of the full WAVEFORM_SINE? And the compiler knows when you map WAVEFORM_SINE to WAVEFORM_TRIANGLE you mean 0 through 3 as well? I wasn't aware of that.
Just FYI on a windows machine with python 3.6 I had to run ' python -m http.server 8000 ' on the AudioTool directory and then I had access to localhost:8000, the other command threw an error. I may...
Now you've really got me wondering... what voices are using that are so cpu hungry?
I was thinking 4 different waveforms, WAVEFORM_SINE, WAVEFORM_SQUARE, WAVEFORM_TRIANGLE, WAVEFORM_SAWTOOTH, I think they are the most
"musical of waveforms. Is that doable?
Man I thought I was cutting edge here...lol. I feel like an uber n00b...haha.
Just one last thing wcalvert, the waveform selection thing...
That sounds awesome but my only real C++ experience is super limited to this teensy stuff. :/
OH and what does 7f mean? lol
sgtl5000_1.volume(.7f);
WOW!!! Thanks so much wcalvert!!! I added in my USBHost code, the 8 buttons, and the lowpass filter. There's a lot to go through here otherwise, thanks so much! A few quick questions...
What would...
Thats fantastic man. When you're ready to share it I'd love to check it out! I'm sure a man of your skills is putting together an amazing product! And I love the op-1, btw... lol. Now you have me...
Wcalvert, Out of curiosity, how many oscillators per voice are using on your synth? And what is the purpose of all the encoders?
Yes I always figured the way I wired it up may not be ideal, this is my first ever stab at a synth and my coding AND synthesizer skills are limited at best, though so far I think I've muddled through...
So I'm trying to set up your code wcalvert and at first I noticed that the pot was only selecting between two waveforms, and it looked like you had it mapped that way so I changed the mapping to...
Thanks wcalvert and neurofun! I think I get it now. And yes wcalvert myI'm using knob1(a16) for the first 16 waveforms and knob2(a17) for the last 16. Thanks again man, you are a lifesaver! I don't...
After some research it seems pointers may be way the way to do this but I am pretty confused on how to implement them.
Hey everyone. Here is the new version of my synth code. I am having some problems figuring out how to pass current potentiometer values to the onNoteOn() function. My solution to change the waveform...
Anytime, and I mean anytim e at all you need a musicians perspective or you need someone to test out something you are working feel free to send it my way, I am honored I could help!
"Thank you" isn't even close to a strong enough phrase at this point. That one addition made the synth beautifully, perfectly playable! A million times, thank you so much! Now I'm off to add on my...
First of all thanks again wcalvert you have been a godsend! I still am having a bit of a problem that I cant understand fully. So lets say I play a chord with my left hand ... 2 or three notes, lets...
Also maybe instead of freeing up the note when it totally finished there is some way to test if a note is in the release phase of its envelope... maybe I'm overthinking this.
I have to really study the code to figure out exactly how its working as I'm still not 100% sure what wcalverts contribution is doing exactly. I appreciate your advice tele_player I'm just having...
So I implemented the envelope pots today (for attack and release) and I'm running into a problem I think is related to the inability of this system to voice steal that I need help with. When I turn...
Thanks wcalvert! Like this? Quick question, I first tried putting those lines in setup(); and it didn't work until I moved them outside of the loop and setup functions. Is that a scope thing? Thanks...
Tonight's edition of the Panda Synth is the synth with working test buttons using oddson's super clean and awesome idea. Also filter and reverb have been implemented.
// PANDA SYNTH
// Coded...
Yup, that's on my todo list too. Two oscillators per voice (detune-able) and a noise source as well. I also want to add separate ADSR controls for each oscillator. And the buttons on the unit itself...
Saw a couple errant connections and made a couple small tweaks to the SynthArch code.
#ifndef _SYNTHARCH_H
#define _SYNTHARCH_H
#include <Arduino.h>
#include <Bounce.h>
#include <Audio.h>
OK Got it working! Here's the basic USB Host engine, now I have to work backwards and add each feature from the other version in. Thanks again to wcalvert and oddson, I couldn't have done it without...
Actually I do have one last question. I always thought an if statement needed a condition... like if something = something then...
if(idleVoices[i]) {
idleVoices[i] = false;
...
Got it! Thanks so much wcalvert! When I get home from work I'm going to implement all this then post when I get the whole thing working. Bt the way I am musician first and a pretty new coder second...
Thanks so muich! One last thing, what exactly is idleCheck? Is that a built in function? Sorry to bombard you my friend, I am very hungry for knowledge in this area. :)
Also am I wrong or should this
if(voiceNote[i] == note) {
envelopes[i]->noteOff();
voiceToNote[i] = -1;
be this:
Thanks wcalvert! Two questions when you have a moment, I dont quite understand what the arrays with the 1's and -1's are doing...
bool idleVoices[12] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 };...
Thanks oddson, that's a great idea forthe button feature, that way I can handle all note playing with the myNoteOn and myNoteOff functions. I have noticed the last voice/free voice thing in some...
I'm starting to see my code may be slightly more problematic than I thought. I have the waveform .begin statements in the loop of my code, so it looks like they are overwriting any value I try to...
Ok this isnt working because case cant be an array, but I feel like I'm on the right track...
//---------NEED HELP BELOW---------------------------------------------------------------->...
Hello everyone. I hope the below ramble makes sense.
I am coding a synth using your audio board and a Teensy 3.6. So far everything has worked flawlessly but I have hit a wall. My synth has 8...
Thank you so much! This is going to cut my code down by at least 35%! Jacob.Schultz, I tip my hat to you, sir!